Skip to main content

MCP server for Google Workspace — Sheets, Drive, Docs, and Calendar. 60+ tools for AI clients.

Project description

mcp-gee-sweet

Your AI Assistant's Gateway to Google Workspace!

GitHub License

An MCP server that gives AI clients reliable, direct access to Google Workspace — Sheets, Drive, Docs, and Calendar. 90 tools across four domains.

As of mid-2026, Google's own Workspace MCP servers (Developer Preview) cover Gmail, Drive, Calendar, People, and Chat — Sheets and Docs still have no official server at all, and Drive/Calendar coverage there is a fraction of what's here. Stable releases ship to PyPI behind a QA regression gate, with a raw batch_update passthrough as an escape hatch for anything a named tool doesn't cover yet. See Why it exists for the full, sourced comparison against both the official servers and community alternatives.

Install (stable):

uvx mcp-gee-sweet

Install (bleeding edge — every code change on develop):

uvx --prerelease=allow mcp-gee-sweet

Full documentation →


Quick start

Option A: uv — local use and development

If you cloned the repo or just want to use the server from your machine, uv is all you need. No Docker required.

git clone https://github.com/khuisman/mcp-gee-sweet.git
cd mcp-gee-sweet
uv sync

Then point your MCP client at it using stdio transport (see MCP client config below). The client spawns the server as a subprocess on demand — each session gets its own isolated process, so restarting the server for a code change or config update doesn't affect other open sessions.

Option B: Docker — persistent shared server (SSE)

Use Docker when you want a single long-running server that multiple clients connect to over SSE — for example, Claude Desktop talking to the same instance as Claude Code.

git clone https://github.com/khuisman/mcp-gee-sweet.git
cd mcp-gee-sweet
make build   # build the container image
make start   # start the server (SSE on port 47000)
make logs    # tail logs

Point your MCP client at http://localhost:47000/sse.

Note: when using SSE, all clients share one server process. After a code change or restart (make restart), you must also restart each MCP client to reconnect.


Configuration

The server tries auth methods in a waterfall by default, OAuth first — it authenticates as you and has full personal Drive access, which is what local/dev use (Option A above) needs. For OAuth, download an OAuth Client ID JSON from GCP Console and point the server at it:

export CREDENTIALS_PATH="/path/to/credentials.json"

Service accounts (recommended for headless server deployments — see Option B above), base64 credential injection, and Application Default Credentials are also supported. See Authentication for all options.


MCP client config

Claude Desktop — stdio (cloned repo):

{
  "mcpServers": {
    "mcp-gee-sweet": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-gee-sweet", "mcp-gee-sweet"],
      "env": {
        "CREDENTIALS_PATH": "/path/to/credentials.json"
      }
    }
  }
}

Claude Desktop — SSE (Docker):

{
  "mcpServers": {
    "mcp-gee-sweet": {
      "transport": "sse",
      "url": "http://localhost:47000/sse"
    }
  }
}

See Client Setup for more options including tool filtering.


Docs


Contributing

See CONTRIBUTING.md for setup, QA workflows, and PR guidelines. All items in docs/qa-checklist.md must be verified before any PyPI release.

License

MIT — see LICENSE.

Credits

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_gee_sweet-0.8.2.dev45.tar.gz (515.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_gee_sweet-0.8.2.dev45-py3-none-any.whl (102.1 kB view details)

Uploaded Python 3

File details

Details for the file mcp_gee_sweet-0.8.2.dev45.tar.gz.

File metadata

  • Download URL: mcp_gee_sweet-0.8.2.dev45.tar.gz
  • Upload date:
  • Size: 515.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for mcp_gee_sweet-0.8.2.dev45.tar.gz
Algorithm Hash digest
SHA256 7e5e7d8b187edfeeafd82b9c9972b8b2cfaddcecfacf48a681c23df6d51bf46b
MD5 a2f03e3bd7f7bed8303e0a29c45b3bb6
BLAKE2b-256 205fedd2214f60d663396b79eb5e573a2eda863ae51ae884c050b17aca2b68c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_gee_sweet-0.8.2.dev45.tar.gz:

Publisher: publish-dev.yml on khuisman/mcp-gee-sweet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_gee_sweet-0.8.2.dev45-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_gee_sweet-0.8.2.dev45-py3-none-any.whl
Algorithm Hash digest
SHA256 e9be5de7f37dabecfcdc75b6e89083b912ef97f15be8d9af8a745d6b55201d32
MD5 80eb5ae503a904e6f1c25014cd6e892e
BLAKE2b-256 c0e7d47941c041ecb4483573fb023f043e1d0f98b1246dd62ae8bd82fc205d65

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_gee_sweet-0.8.2.dev45-py3-none-any.whl:

Publisher: publish-dev.yml on khuisman/mcp-gee-sweet

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page