Google Calendar MCP Server
Enables management of Google Calendar events across multiple calendars, including searching events, checking availability, creating and updating events with natural language or structured input, managing event invitations, and auto-generating Google Meet links.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Google Calendar MCP Serverschedule a team meeting for tomorrow at 2pm with a Google Meet link"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Google Calendar MCP Server
Fetch-native MCP server for listing calendars, searching and mutating events, responding to invitations, and checking Google Calendar availability. It runs on Bun and Cloudflare Workers and retains the project-specific Google OAuth proxy.
This repository targets the prerelease
2026-07-28MCP candidate with@modelcontextprotocol/server@2.0.0-beta.5. It does not claim final conformance until the dated specification and stable packages are published and verified.
Tools
list_calendarssearch_eventscheck_availabilitycreate_eventupdate_eventdelete_eventrespond_to_event
Existing all-calendar search, local substring matching, event-ID normalization, mutation fallback, free/busy behavior, Google Meet creation, and structured/natural-language event creation are preserved. Every tool advertises a complete Zod 4 input and output schema.
Related MCP server: mcp-google-calendar
Local setup
Enable Google Calendar API in Google Cloud.
Create a Web OAuth client.
Register
http://127.0.0.1:3001/oauth/callbackas a redirect URI.Configure and start:
bun install
cp env.example .env
# Set PROVIDER_CLIENT_ID, PROVIDER_CLIENT_SECRET, and RS_TOKENS_ENC_KEY.
bun run devLocal endpoints:
MCP Resource Server:
http://127.0.0.1:3000/mcpOAuth proxy:
http://127.0.0.1:3001
Credential model
Three credentials remain separate:
MCP resource token — the opaque bearer token accepted by
/mcp.Google access token — resolved from storage, refreshed when necessary, and exposed to a fresh server only as
AuthInfo.extra.providerAccessToken.Google refresh token — remains encrypted in file/KV storage and never enters MCP tool context.
Tools never read or forward authInfo.token. Token-separation tests use visibly different MCP and Google tokens and assert that only the Google token reaches the provider mock.
OAuth proxy
The active proxy retains PKCE authorization, callback exchange, refresh, revocation, registration, redirect allowlists, and RS-to-Google token mappings.
Discovery endpoints:
/.well-known/oauth-protected-resource/mcp/.well-known/oauth-authorization-server
Proxy endpoints:
GET /authorizeGET /oauth/callbackPOST /tokenPOST /revokePOST /register
On Bun the proxy runs at OAUTH_ISSUER_URL (port 3001 by default). On Workers it is mounted outside /mcp on the same isolate.
Cloudflare Workers
Create KV and update its ID in wrangler.jsonc:
bun run kv:create
bun x wrangler secret put PROVIDER_CLIENT_ID --config wrangler.jsonc
bun x wrangler secret put PROVIDER_CLIENT_SECRET --config wrangler.jsonc
bun x wrangler secret put RS_TOKENS_ENC_KEY --config wrangler.jsonc
bun run deployBefore deployment, set HTTPS values for MCP_PUBLIC_URL, OAUTH_ISSUER_URL, OAUTH_REDIRECT_URI, Host/Origin allowlists, and the Google redirect URI. RS_TOKENS_ENC_KEY must be a base64url-encoded 32-byte key.
Protocol and HTTP behavior
One deployment-scoped fetch handler and a fresh
McpServerper requestModern protocol pinned to candidate
2026-07-28SDK stateless fallback for legacy
2025-11-25clientsGET /mcpandDELETE /mcpreturn405; no MCP session storage is usedSDK-owned negotiation, header mismatch, cancellation, and transport errors
Bounded MCP request bodies, strict Host/Origin checks, and allowlisted CORS headers
Missing/invalid resource tokens return
401; missing Google scopes return403
Validate
bun test
bun run typecheck
bun run lint
bun run format:check
bun run build
bun run build:worker
bun run types:worker:checkProvider tests use mocks. A live OAuth flow requires Google credentials, user consent, and redirect URIs configured in Google Cloud.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceEnables AI assistants to manage Google Calendar through natural language interactions with features like creating, updating, and deleting events, searching calendars, and supporting natural language date/time inputs.732MIT
- Alicense-qualityDmaintenanceEnables managing Google Calendar events including creating, listing, updating, and deleting events through natural language.15MIT
- Alicense-qualityCmaintenanceEnables AI assistants to view, create, update, search, and manage Google Calendar events, including multi-account support and availability checks.16Business Source 1.1
- Alicense-qualityDmaintenanceEnables AI assistants to manage Google Calendar events, including reading, searching, creating, updating, and deleting events, as well as checking availability and listing calendars.25MIT
Related MCP Connectors
Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.
Schedule and manage Google Calendar events directly from your workspace. Check availability, view…
AI-native scheduling: check availability, book meetings, cancel and reschedule via MCP
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/iceener/google-calendar-streamable-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server