Remote MCP Server on Cloudflare
@aditya1
Overview
What is Remote MCP Server on Cloudflare?
A guide and template for deploying a remote MCP (Model Context Protocol) server on Cloudflare Workers, complete with OAuth login. It is aimed at developers who want to expose MCP tools over the internet and connect them to clients like Claude Desktop.
How to use Remote MCP Server on Cloudflare?
Clone the repository, install dependencies, run locally with npx nx dev remote-mcp-server, then use the MCP Inspector or configure Claude Desktop to connect. For remote deployment, use npx wrangler kv namespace create OAUTH_KV, add the namespace ID to wrangler.jsonc, and run npm run deploy.
Key features of Remote MCP Server on Cloudflare
- Deployable to Cloudflare Workers with OAuth login.
- Supports SSE transport for MCP clients.
- Works with the MCP Inspector for testing.
- Integrates with Claude Desktop via a local proxy.
- Includes a mock login screen for local development.
- Provides debugging commands for troubleshooting.
Use cases of Remote MCP Server on Cloudflare
- Deploy a custom MCP server to the cloud for remote access.
- Prototype and test MCP tools locally before production deployment.
- Connect Claude Desktop to a remote MCP server for tool invocation.
- Build a math tool server (example included) that can add numbers.
FAQ from Remote MCP Server on Cloudflare
What is needed to run the server locally?
Clone the repo, install dependencies with npm install, and run npx nx dev remote-mcp-server. The server will be available at http://localhost:8787/.
How do I connect Claude Desktop to the remote server?
In Claude Desktop’s config file, add an MCP server entry with command npx, args ["mcp-remote", "https://your-worker.workers.dev/sse"]. Restart Claude.
How do I deploy the server to Cloudflare?
Create a KV namespace with npx wrangler kv namespace create OAUTH_KV, add its ID to wrangler.jsonc, then run npm run deploy. The server will be available at a workers.dev URL.
What transport does the MCP server use?
It uses SSE (Server-Sent Events) – the endpoint is /sse on the server URL.
How can I debug connection issues?
Restart Claude, or test directly with npx mcp-remote http://localhost:8787/sse. Clearing ~/.mcp-auth may help in rare cases.