cyberneticlibrary

Deploy private MCP to Claude mobile

remote-mcp-cloudflaremcp_serversetup L30
bm1549/remote-mcp-cloudflare
What it does

Deploy a stdio MCP server to Cloudflare Workers with OAuth and email allowlist

Best for

Exposing a private MCP server to Claude mobile and Claude Desktop with OAuth 2.1 + email-based access control.

Inputs
  • · McpServer instance
  • · Google OAuth credentials
  • · Email allowlist (CSV or array)
Outputs
  • · Cloudflare Worker endpoint exposing Streamable HTTP MCP
  • · OAuth tokens with session isolation (Durable Objects)
Requires
  • · @modelcontextprotocol/sdk
  • · @cloudflare/workers-oauth-provider
  • · agents/mcp (Durable Objects)
Preconditions
  • · Wrangler CLI setup
  • · Google OAuth app credentials (client ID/secret)
  • · Cloudflare Workers account
  • · KV namespace for OAuth state (OAUTH_KV)
  • · Durable Object class binding (MCP_OBJECT)
Failure modes
  • · Token expiration requires re-authorization
  • · Durable Object state loss on worker redeployment (migrations needed)
  • · Google OAuth scope limited to email verification
Trust signals
  • · Real-world example: lunchmoney-mcp-cloudflare
  • · Durable Object backed sessions (one per token)
  • · Google OAuth consent flow with email verification
  • · Email allowlist gating (private access)