Remote MCP Server on Cloudflare
@shuaking
Overview
What is Remote MCP Server on Cloudflare?
Remote MCP Server on Cloudflare is a template for running a Model Context Protocol (MCP) server on Cloudflare Workers with OAuth login. It is intended for developers who want to deploy a remote MCP server accessible over HTTP.
How to use Remote MCP Server on Cloudflare?
Clone the repository, install dependencies with npm install, and run locally with npx nx dev remote-mcp-server. For production, deploy using npm run deploy after creating an OAUTH_KV namespace via Wrangler. Connect clients (MCP Inspector, Claude Desktop) using the server’s SSE endpoint.
Key features of Remote MCP Server on Cloudflare
- Deployable to Cloudflare Workers for remote access
- OAuth login flow for secure authentication
- SSE (Server‑Sent Events) transport for MCP
- Works with the MCP Inspector for testing
- Integrates with Claude Desktop via a local proxy
- Provides a mock login screen during local development
Use cases of Remote MCP Server on Cloudflare
- Run a remote MCP server accessible from anywhere
- Develop and test MCP tools locally with the inspector
- Connect Claude Desktop to a custom math or utility MCP tool
- Demonstrate OAuth‑protected MCP endpoints for demos or tutorials
FAQ from Remote MCP Server on Cloudflare
What does Remote MCP Server on Cloudflare do?
It provides a ready‑to‑run MCP server on Cloudflare Workers with built‑in OAuth login, so clients can connect remotely and call defined tools.
What are the runtime requirements?
Node.js and npm for local development; a Cloudflare account and Wrangler CLI for deployment. A OAUTH_KV namespace must be created before deploying.
How do I connect to the server?
Use the MCP Inspector with SSE transport and the server’s URL (e.g., http://localhost:8787/sse locally, or the workers.dev URL after deployment). For Claude Desktop, configure a MCP server with command npx mcp-remote and the SSE URL.
How do I deploy the server?
Run npx wrangler kv namespace create OAUTH_KV to create a KV namespace, add its ID to wrangler.jsonc, then run npm run deploy.
What should I do if something goes wrong?
Restart Claude, try connecting via the command line with npx mcp-remote <URL>, or clear cached auth files with rm -rf ~/.mcp-auth.