Skip to main content

Google Workspace MCP Advanced

Production-ready MCP server for Google Workspace.

google-workspace-mcp-advanced gives MCP clients broad Google Workspace coverage with safe-by-default write operations, Markdown-to-Google-Docs support, and Drive sync workflows.

Why This Project

  • 11 service domains: Gmail, Drive, Calendar, Docs, Sheets, Chat, Forms, Slides, Tasks, Search, Apps Script
  • 100+ tools for read and write operations
  • Dry-run defaults for mutating operations
  • Strong Markdown rendering for Google Docs (kitchen-sink validated)
  • Persistent OAuth sessions and resilient auth storage

Quick Start

1. Install uv

# macOS (Homebrew)
brew install uv

# Windows (winget)
winget install --id=astral-sh.uv -e

# Windows (PowerShell installer)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

# Linux/macOS (official installer)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Verify
uv --version

2. Run the MCP server from PyPI (recommended)

# Stable channel (latest release)
uvx google-workspace-mcp-advanced --transport stdio

# Pinned deterministic version (recommended for teams)
uvx google-workspace-mcp-advanced==1.0.10 --transport stdio

3. Add MCP client config

{
  "mcpServers": {
    "google-workspace": {
      "command": "uvx",
      "args": ["google-workspace-mcp-advanced==1.0.10", "--transport", "stdio"],
      "env": {
        "USER_GOOGLE_EMAIL": "your.email@company.com"
      }
    }
  }
}

4. Use client-specific setup guides

5. Authenticate on first run

  1. Start the server from your MCP client.
  2. Run any Google tool (for example, list calendars or list Drive files).
  3. In stdio mode (default), complete the device flow:
    • open the verification URL,
    • enter the user code,
    • retry your tool call.
    • if device flow is unsupported for your OAuth client type, the server falls back to callback flow automatically.
  4. In streamable-http, complete callback auth by opening the OAuth URL shown by the server.
    • for MCP-hosted/manual completion workflows, use complete_google_auth with the browser callback URL.
  5. Credentials are saved in ~/.config/google-workspace-mcp-advanced/credentials/.
  6. Legacy directory ~/.config/gws-mcp-advanced/ is still supported for migration.

Single-MCP Multi-Client Mode

Use one MCP entry with multiple OAuth clients (for example private + enterprise tenants) via:

  • auth_clients.json under WORKSPACE_MCP_CONFIG_DIR
  • deterministic routing by script_clients, account_clients, and domain_clients
  • setup tools: setup_google_auth_clients, import_google_auth_client
  • completion tool: complete_google_auth

Guide:

Local Development Mode

Use repository-local execution when building or testing unreleased changes.

{
  "mcpServers": {
    "google-workspace-dev": {
      "command": "uv",
      "args": [
        "run",
        "--project",
        "/path/to/google-workspace-mcp-advanced",
        "google-workspace-mcp-advanced",
        "--transport",
        "stdio"
      ],
      "env": {
        "USER_GOOGLE_EMAIL": "your.email@company.com"
      }
    }
  }
}

Service Coverage

Service Example Capabilities
Gmail search, read, draft, send, labels, filters
Drive search, read, upload, permissions, ownership transfer
Calendar list/create/modify/delete events
Docs create/update docs, markdown insertion, table and image handling
Sheets read/write ranges, formatting, conditional formatting
Chat list spaces, read/send messages
Forms create forms, read responses, update publish settings
Slides create presentations, batch updates
Tasks task lists and task lifecycle management
Search programmable search endpoint support
Apps Script project metadata/content, versions, deployments, processes, metrics, and safe-by-default mutators

Safety Model

  • Mutating tools default to dry_run=True.
  • You must pass dry_run=False to execute real changes.
  • This reduces accidental writes during assistant experimentation.

Common Runtime Commands

# Run locally from repo
uv run google-workspace-mcp-advanced --transport stdio

# HTTP transport
uv run google-workspace-mcp-advanced --transport streamable-http

# Single-user mode
uv run google-workspace-mcp-advanced --single-user

# Load specific service groups only
uv run google-workspace-mcp-advanced --tools gmail drive calendar

Required Environment Variables

Variable Required Description
USER_GOOGLE_EMAIL Yes Target Google account email
GOOGLE_OAUTH_CLIENT_ID Yes for legacy single-client mode OAuth client ID
GOOGLE_OAUTH_CLIENT_SECRET Yes for legacy single-client mode OAuth client secret
WORKSPACE_MCP_CONFIG_DIR No Config/credential directory override
WORKSPACE_MCP_AUTH_FLOW No Auth interaction mode: auto (default), device, or callback

Migration from Legacy Name

If you previously ran the project as gws-mcp-advanced, follow:

Documentation

Contributor docs live in AGENTS.md and agent-docs/.

Metadata

Release files for google-workspace-mcp-advanced 1.0.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for google-workspace-mcp-advanced 1.0.10
File Size Uploaded
google_workspace_mcp_advanced-1.0.10.tar.gz 248.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for google-workspace-mcp-advanced 1.0.10
File Interpreter ABI Platform
google_workspace_mcp_advanced-1.0.10-py3-none-any.whl Python 3 none any Details

Total release size: 538.7 kB

Release files / google_workspace_mcp_advanced-1.0.10.tar.gz

Download URL google_workspace_mcp_advanced-1.0.10.tar.gz
Size 248.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a5ebc97a4e3b80b4dcf0fbe69170a1e8fcd63f52faa4826a495c32902d8f72b7
BLAKE2b-256 checksum
How to use checksums
058b248552960c2ff3926e0be5448f52d22711f2a11c60c97a58362e0aa336b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 17, 2026.

Transparency log

Release files / google_workspace_mcp_advanced-1.0.10-py3-none-any.whl

Download URL google_workspace_mcp_advanced-1.0.10-py3-none-any.whl
Size 290.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f3171dbe04c830545b4d41efc284f1f2d4f263d65f41e410f02913ebdabd2a9
BLAKE2b-256 checksum
How to use checksums
6f9e9381174abd1ec9da88f9c29a9cff54f4d4685c4a0f407bf7600d65e17631
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 17, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.10 This release

2 release files

1.0.9

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page