Multi-account Google MCP server providing read access to Gmail and Calendar via stdio. Supports secure authentication for personal and work accounts with OAuth
About
Multi-account Google MCP server providing read access to Gmail and Calendar via stdio. Supports secure authentication for personal and work accounts with OAuth and keychain token storage.
README
Multi-account Google MCP server exposing Gmail and Calendar read tools over stdio.
Security notes
credentials.jsonis local-only and must never be committed.- Copy
credentials.template.jsontocredentials.jsonand fill it with your local OAuth client values. - Refresh tokens are stored in your OS keychain (
keyring), not in source control.
Setup
- Install dependencies:
uv sync
- Create local OAuth client config:
cp credentials.template.json credentials.json
- Set expected account emails (optional but recommended for auth safety checks):
export GOOGLE_MCP_PERSONAL_EMAIL="[email protected]"export GOOGLE_MCP_WORK_EMAIL="[email protected]"
- Optionally set a specific work calendar filter:
export GOOGLE_MCP_WORK_CALENDAR="calendar-id-or-summary"
- Authorize each account:
uv run auth_setup.py personaluv run auth_setup.py work
Run server
uv run server.py
Integration tests
These hit real Google APIs.
- Basic live tests:
RUN_LIVE_TESTS=1 uv run integration_smoke.py
- Include destructive keychain mutation test:
RUN_LIVE_TESTS=1 RUN_DESTRUCTIVE_TESTS=1 uv run integration_smoke.py
Publish safety checks
- Run local security guardrail:
python scripts/security_check.py
- Optional pre-commit integration:
uv tool install pre-commitpre-commit installpre-commit run --all-files
- CI runs the same script on every push/PR via
.github/workflows/security-check.yml.
Installing Google
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/giantrotta24/multi-account-google-mcpFAQ
Is Google MCP free?
Yes, Google MCP is free — one-click install via Unyly at no cost.
Does Google need an API key?
No, Google runs without API keys or environment variables.
Is Google hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Google in Claude Desktop, Claude Code or Cursor?
Open Google on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Gmail
Read, send and search emails from Claude
by GoogleSlack
Send, search and summarize Slack messages
by SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Compare Google with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All communication MCPs
