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. 101 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.dev130.tar.gz (629.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.dev130-py3-none-any.whl (125.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_gee_sweet-0.8.2.dev130.tar.gz
  • Upload date:
  • Size: 629.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.dev130.tar.gz
Algorithm Hash digest
SHA256 30e22f2985292dc44771b0f413822449e15c4fd2b0fba979d85170eb4ffd9f68
MD5 01ab7475ec3e662672f3f2ae7cff0e56
BLAKE2b-256 e665861bf4a107d8d7ebfe48e4ee0e2571e43d16cb45131907c7033b94dfacdc

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_gee_sweet-0.8.2.dev130.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.dev130-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_gee_sweet-0.8.2.dev130-py3-none-any.whl
Algorithm Hash digest
SHA256 4464034a342e3602ec0ccdad5028b259b909881c1ce3d8cc5925ce4b81d75da5
MD5 70852fb5ff43c79e24b90f72ad9d9c7c
BLAKE2b-256 e51f797f293f3e2f86e2852193dd6802f7c4768487c20c72e720ca93ff4b2e5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_gee_sweet-0.8.2.dev130-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