Server data from the Official MCP Registry
Multi-account MCP for Gmail, Calendar, Drive, Docs, and Sheets — 61 tools, token-efficient, macOS…
About
Multi-account MCP for Gmail, Calendar, Drive, Docs, and Sheets — 61 tools, token-efficient, macOS…
Security Report
Valid MCP server (0 strong, 3 medium validity signals). No known CVEs in dependencies. Imported from the Official MCP Registry. Trust signals: trusted author (3/3 approved).
4 files analyzed · No issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
What You'll Need
Set these up before or after installing:
Environment variable: GOOGLE_OAUTH_CLIENT_ID
Environment variable: GOOGLE_OAUTH_CLIENT_SECRET
Documentation
View on GitHubFrom the project's GitHub README.
google-workspace-mcp
Multi-account, token-efficient MCP for Gmail + Calendar + Drive + Docs + Sheets. Built because the official Claude connector supports one account and returns full message/file bodies by default.
Why this exists
- Multi-account: OAuth multiple mailboxes (work + personal + co-founder). Every
tool takes an
accountemail; aliases are handled via Send-As identities. - Token-efficient: Search/list returns compact shapes (
{id, from, subject, snippet, ...}for mail,{id, name, mime, modified, size, ...}for Drive). Bodies and file content are opt-in. - Keychain-backed: Refresh tokens live in the macOS Keychain, not plaintext files. No tokens in the vault, no tokens in any repo.
Tools (v2, 61 tools)
Account management (3)
gws_account_add— browser OAuth flow, adds a new authorized mailboxgws_account_list— list authorized accounts + defaultgws_account_remove— remove local credential (doesn't revoke Google-side)
Gmail (10)
gmail_search— search with Gmail operators. Compact response.gmail_read— read one message or full thread. Bodies opt-in.gmail_send— send mail, optionalfrom_aliasfor Send-As identitiesgmail_draft— create a draftgmail_reply— reply (preserves thread + headers), optional reply_allgmail_labels_list— list all labelsgmail_label_apply— batch add/remove labelsgmail_archive— batch archive (remove INBOX)gmail_trash— batch move to trashgmail_sendas_list— list Send-As identities on this mailbox
Calendar (7)
cal_list_calendars— list all calendarscal_list_events— list upcoming events (compact by default,verbose=Truefor full)cal_create_event— create event, optional Google Meet linkcal_update_event— partial-update fieldscal_delete_event— deletecal_freebusy— check busy windows for schedulingcal_respond— accept/decline/tentative
Drive (18)
drive_search— free-text or raw Drive q-syntax. Metadata-only response.drive_read_file— metadata by default;include_content=Truefor bodydrive_list_folder— direct children of a folder ('root'for My Drive)drive_create_folder— create a folder under an optional parentdrive_upload— upload a local file, optionalconvert_to_googledrive_move— change parent folderdrive_rename— rename a file or folderdrive_share— grant reader/commenter/writer/etc. access by emaildrive_trash— soft delete (recoverable)drive_untrash— restore from Trashdrive_permission_list— list everyone with access to a filedrive_permission_update— change a grantee's roledrive_permission_delete— revoke a permissiondrive_shared_drives_list— list shared drives this account accessesdrive_comments_list— list comments on any Drive file (Doc/Sheet/Slide/upload)drive_comment_add— add a comment, optional anchordrive_comment_reply— reply to a commentdrive_comment_resolve— mark a comment resolved
Docs (9)
docs_create— new Doc, optional initial body and parent folderdocs_read— flat text by default;structured=Truefor full Docs API treedocs_append— append text to end of bodydocs_insert_at— insert text at a specific indexdocs_replace_text— find-and-replace, returns count replaceddocs_export— export to markdown / pdf / docx / rtf / plaindocs_suggestions_list— list pending tracked-change suggestionsdocs_suggestions_accept_all— accept all suggestions (rewrites Doc)docs_suggestions_reject_all— reject all suggestions (rewrites Doc)
Sheets (14)
sheets_create— new workbook, optional parent foldersheets_list_sheets— list tabs with row/col dimensionssheets_add_sheet— add a new tab to an existing workbooksheets_read_range— read A1 range.FORMULA/UNFORMATTED_VALUEoptions.sheets_write_range— overwrite a range.USER_ENTEREDparses formulas.sheets_append— append rows below existing datasheets_clear_range— clear values (formatting preserved)sheets_batch_read— multi-range read in one API callsheets_batch_write— multi-range write in one API callsheets_named_ranges_list— list named ranges in a workbooksheets_named_range_add— create a named rangesheets_named_range_delete— delete a named rangesheets_conditional_format_add— add a conditional formatting rulesheets_data_validation_add— set dropdown / number / email / URL validation
Install
Fastest path — one script, no manual wiring:
git clone https://github.com/adelaidasofia/google-workspace-mcp.git
bash google-workspace-mcp/install.sh
install.sh creates an isolated venv, installs dependencies, takes your
Google OAuth client (either interactively or via GWS_CLIENT_ID /
GWS_CLIENT_SECRET in the environment), and registers the server with
Claude Code. Safe to re-run. You still need a Google OAuth client first —
see SETUP.md for the ~45 min one-time GCP setup. Then run
gws_account_add from Claude Code to authorize your first mailbox.
Open Claude Code, paste:
/plugin marketplace add adelaidasofia/google-workspace-mcp
/plugin install google-workspace-mcp@google-workspace-mcp
You still need to complete the one-time GCP setup in SETUP.md
(~45 min for v1, ~5 min incremental for v2 Drive/Docs/Sheets) so the
server has a client_secret.json to OAuth against. Run gws_account_add
from Claude Code to authorize your first mailbox.
See SETUP.md for the one-time GCP setup (~45 min for v1, ~5 min incremental to enable Drive/Docs/Sheets for v2).
After setup:
pip3 install --break-system-packages -r requirements.txt
Register with Claude Code
Add to your project's .mcp.json (or ~/.claude.json for global access):
"google-workspace": {
"type": "stdio",
"command": "python3",
"args": ["/path/to/google-workspace-mcp/server.py"]
}
Upgrading from v1 → v2
v2 adds Drive + Docs + Sheets scopes. Each authorized account must re-OAuth once so Google grants the new scopes. See SETUP.md step 6b.
Roadmap
- v3: Gmail filters, vacation responder, push notifications (Gmail Watch), Calendar ACL/delegation, Slides, Forms, Tasks
- v4: Batch requests across services, Drive revisions
Related MCPs
Same author, same architecture pattern (FastMCP, draft+confirm on writes where applicable, vault auto-export, MIT):
- slack-mcp — multi-workspace Slack
- imessage-mcp — macOS iMessage
- whatsapp-mcp — WhatsApp via whatsmeow
- apollo-mcp — Apollo.io CRM + sequences
- substack-mcp — Substack writing + analytics
- luma-mcp — lu.ma events
- parse-mcp — markitdown / Docling / LlamaParse router
- rescuetime-mcp — RescueTime productivity data
- graph-query-mcp — vault knowledge graph queries
- graph-autotagger-mcp — wikilink suggestions from the graph
- investor-relations-mcp — seed-raise pipeline tracker
- vault-sync-mcp — bidirectional vault sync
Telemetry
This plugin sends a single anonymous install signal to myceliumai.co the first time it loads in a Claude Code session on a given machine.
What is sent:
- Plugin name (e.g.
slack-mcp) - Plugin version (e.g.
0.1.0)
What is NOT sent:
- No user identifiers, names, emails, tokens, or API keys
- No file paths, message content, or anything from your work
- No IP address is stored after dedup processing
Why: Helps the maintainer know which plugins people actually install, so attention goes to the ones that get used.
Opt out: Set the environment variable MYCELIUM_NO_PING=1 before launching Claude Code. The hook will skip the network call entirely. Already-pinged installs leave a sentinel at ~/.mycelium/onboarded-<plugin> — delete it if you want to reset state.
License
MIT
Built by Mycelium AI. Full install or team version at diazroa.com.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
FinAgent
Freeby mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.
