Skip to content

Google Calendar connection via Google's hosted MCP server - #6

Merged
DIodide merged 1 commit into
mainfrom
feat/google-calendar-mcp
Aug 22, 2026
Merged

Google Calendar connection via Google's hosted MCP server#6
DIodide merged 1 commit into
mainfrom
feat/google-calendar-mcp

Conversation

@DIodide

@DIodide DIodide commented Aug 22, 2026

Copy link
Copy Markdown
Member

Adds Google Calendar to My apps, backed by Google's remote Calendar MCP server (calendarmcp.googleapis.com/mcp/v1, streamable HTTP, MCP auth spec verified live).

  • OAuth: pre-registered client (no dynamic registration). Custom GoogleOAuthProvider pins the exact redirect URI, requests access_type=offline&prompt=consent (else no refresh token), and stores tokens on the user's desk DO. Chats reuse those tokens via DO RPC — consent is once per user, from My apps ("Connect with Google →").
  • Scopes: read-only (calendar.calendarlist.readonly, calendar.events.freebusy, calendar.events.readonly).
  • Worker: /oauth/google/callback forwards to the signed-in user's desk DO, which holds the OAuth state.
  • Requires GOOGLE_OAUTH_CLIENT_ID (var) + GOOGLE_OAUTH_CLIENT_SECRET (secret) from the Google Cloud project before the toggle works; until then the card reports it plainly.
  • Also deletes dev fixture files committed by accident in an earlier merge.

https://claude.ai/code/session_01MKLJUWk6biNAKXupHTTWn5

Adds Google's remote Calendar MCP server as a toggleable app. OAuth 2.0
with a pre-registered client (Google does no dynamic registration): a
custom provider fixes the redirect URI, injects offline access so a
refresh token is issued, and persists tokens on the user's desk DO —
consent happens once from My apps, and that user's chats reuse the
tokens over DO RPC. The Worker forwards the fixed /oauth/google/callback
to the signed-in user's desk. Scopes are read-only (calendar list,
events, free/busy), matching PI's never-writes promise, and the system
prompt tells the model so.

Also removes dev fixture files that slipped into an earlier merge.

Claude-Session: https://claude.ai/code/session_01MKLJUWk6biNAKXupHTTWn5
@DIodide
DIodide merged commit 11304be into main Aug 22, 2026
2 checks passed
@DIodide
DIodide deleted the feat/google-calendar-mcp branch August 22, 2026 18:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant