PlugWiki
google_workspace_mcp logo

Google Workspace MCP Server by Taylor Wilsdon: Setup for Claude and Cursor

CommunityLocal

Lets Claude, Cursor and other assistants read and send Gmail, manage Drive and Calendar, and edit Docs, Sheets, Slides, Forms, Tasks and Contacts.

This is a community server by Taylor Wilsdon, not made by Google. It runs on your computer and uses your own Google Cloud OAuth client, so you set up a project in Google Cloud and sign in with your Google account.

The published package has 113 tools, so start small. Use a tool tier or pick services, and turn on read-only mode if you only need to read. The README says it sends no data anywhere except Google's APIs.

Good for

  • People who want the assistant to handle email, calendar and files in one place
  • Teams who work in Docs, Sheets and Slides and want edits made from chat
  • Developers who need Google Workspace tools in their own deployment
  • IT teams who want their own Google Cloud project and scopes

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install google_workspace_mcp MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the google_workspace_mcp MCP server to Claude Code. Run this command:
    
    claude mcp add google-workspace-mcp -e GOOGLE_OAUTH_CLIENT_ID=<GOOGLE_OAUTH_CLIENT_ID> -e GOOGLE_OAUTH_CLIENT_SECRET=<GOOGLE_OAUTH_CLIENT_SECRET> -- uvx workspace-mcp
    
    Ask me for GOOGLE_OAUTH_CLIENT_ID, GOOGLE_OAUTH_CLIENT_SECRET and only put the values in that config, nowhere else.
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires uv (Python).

Read-only mode: Set WORKSPACE_MCP_READ_ONLY to true, or add --read-only after workspace-mcp in the launch arguments.

Before the first run, create an OAuth client in the Google Cloud Console and turn on the Google APIs for the services you plan to use. Put its client ID and secret in the two required settings. The first time a tool needs your account, sign in with Google when asked. The tool list is large, so load less with a tool tier or a service list, or turn on read-only mode.

Built from the package data we hold. Not yet tested by us. Source.

Tools

  • Finds emails with a Gmail search

    Runs a Gmail search query and returns matching message and thread IDs with links, one page at a time.

    Try: “Find emails from my landlord this month.”

    Read · search_gmail_messages

  • Reads one email

    Returns the subject, sender, recipients and body of a single message, in pages for long ones.

    Try: “Open the email with the invoice from Acme.”

    Read · get_gmail_message_content

  • Reads many emails at once

    Fetches up to 25 messages in one call.

    Try: “Read these five emails and summarize them.”

    Read · get_gmail_messages_content_batch

  • Reads a whole conversation

    Returns every message in an email thread, and can add who owns each part.

    Try: “Show the full thread about the contract.”

    Read · get_gmail_thread_content

  • Reads many conversations at once

    Fetches up to 25 threads in one call.

    Try: “Summarize these three threads.”

    Read · get_gmail_threads_content_batch

  • Downloads an email attachment

    Saves an attachment to your disk and gives back the file path in local mode.

    Try: “Download the PDF attached to that email.”

    Files · get_gmail_attachment_content

  • Sends an email

    Sends a new email, a reply or a forward from your account, with optional attachments and a send-as alias.

    Try: “Reply to Sam saying I can meet Tuesday.”

    Write · send_gmail_message

  • Saves an email as a draft

    Creates a draft of a new email, reply or forward without sending it.

    Try: “Draft a reply to the vendor, do not send it.”

    Write · draft_gmail_message

  • Lists your Gmail labels

    Returns all labels in your mailbox.

    Try: “What labels do I have?”

    Read · list_gmail_labels

  • Creates, renames or deletes a label

    Creates, updates or deletes a Gmail label.

    Try: “Create a label called Receipts.”

    Delete · manage_gmail_label

  • Lists your Gmail filters

    Returns the filters set up in your mailbox.

    Try: “What filters do I have?”

    Read · list_gmail_filters

  • Creates, changes or deletes a filter

    Creates or deletes a filter, updates one by recreating it, and can apply a filter to mail already in the inbox.

    Try: “Make a filter that labels mail from billing@ as Receipts.”

    Delete · manage_gmail_filter

Read from the source code

Permissions

high risk · 5 things to watch

High risk

With all tools on, which is the default, it can send email, share and delete files, and edit or delete calendar events and documents. Turn on read-only mode, or load only the services you need.

What it can do

Watch out for

  • It can send email and delete things

    By default all 113 tools load, including sending mail, trashing mail, deleting files and events, and changing sharing. Read-only mode removes the tools that need write scopes. The core tier does not: it still includes send_gmail_message and send_message. Keep approval prompts on. github.com

  • It can write, deploy and run Apps Script code

    The script tools can edit a project, deploy it and run its functions, which execute inside Google with whatever the script is allowed to do. run_script_function and manage_script_content are in the core tier, so a tier alone does not remove them. Disable them with --disabled-tools or use read-only mode if you do not need them. github.com

  • It can share your files

    Drive tools can grant, change and remove access, and turn link sharing on. Check who a file is shared with before approving. github.com

  • Downloads are saved to your disk

    Attachment and file download tools write files locally. Check the files before opening them. github.com

  • HTTP mode is for trusted networks

    Streamable HTTP mode without OAuth 2.1 binds to 127.0.0.1 unless WORKSPACE_MCP_HOST is set, and has no MCP-level login. With MCP_ENABLE_OAUTH21=true the default host is 0.0.0.0, so firewall it or set the host. Use OAuth 2.1 for any remote deployment. github.com

Security advisories

No published security advisories as of Nov 1, 2026.

Technical details
Turning on read-onlyAdd --read-only, or set WORKSPACE_MCP_READ_ONLY=true. It requests only read-only Google scopes and disables tools that need write access. It cannot be combined with --permissions.
Talks toGoogle APIs
Sign-in and keysYou supply the OAuth client ID and secret as environment variables. Sign-in tokens are kept by the server, and a stateless mode avoids disk writes.
Scopes
  • Google OAuth scopes for the services you enable; read-only mode requests only read scopes

Questions

Is this the official Google Workspace server?

No. It is a community project by Taylor Wilsdon and is not made by Google. It uses your own Google Cloud OAuth client.

What credentials do I need?

An OAuth client ID and secret from a Google Cloud project you control, with the Google APIs turned on for the services you use. Put them in the two settings shown in the install box, then sign in with your Google account when asked.

Can it run read-only?

Yes. Add --read-only or set WORKSPACE_MCP_READ_ONLY to true. It requests only read-only Google scopes and turns off tools that need write access.

What are the tool tiers?

Three: core, extended and complete. Core is the essential set, extended adds management operations, and complete loads everything. Core still includes sending Gmail and Chat messages and running Apps Script. With no tier set, all 113 tools load. A tier can be combined with a service list such as gmail, drive and calendar.

How is it different from the other Google Workspace server?

Another community server, aaronsb/google-workspace-mcp, also covers Gmail, Calendar and Drive but is a separate project published on npm. This one is the Python package workspace-mcp with 113 tools, tool tiers, read-only mode and Chat, Apps Script and Search support.

Does it work with Google Chat?

Yes, with a Workspace account. The README says Chat needs a one-time Chat app setup, covered in the project's FAQ.

Does my data go anywhere besides Google?

The README says no. By default the server sends no data except to Google's APIs, with no usage reporting or analytics. Optional OpenTelemetry output is for your own use.

Which clients does it work in?

Any client that runs a local server, such as Claude Code, Claude Desktop and Cursor. The README recommends the HTTP mode with a Connector for Claude on web and mobile.

Why 113 tools when the README says 120+?

The published 2.3.0 package registers 113 tools; the README count is a round figure for the whole project. This page lists the 113 from the released package.

Information

updated Nov 2, 2026

Publisher
Community
Package
workspace-mcp
Registry
PyPI
Transport
stdio, Streamable HTTP
Auth
OAuth
Version
2.3.0
License
MIT
Last commit
Oct 30, 2026
Open issues
42
Listed in
Official MCP registry

WebsiteDocsGitHubPyPIOfficial MCP RegistryChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 2
  1. README.md · github.com
  2. https://pypi.org/project/workspace-mcp/ · pypi.org

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.