远程MCP服务器

一个部署在 Cloudflare Workers 上的 Model Context Protocol 服务器,能够在支持 OAuth 认证的 Claude 和其他 AI 模型中启用工具使用。

agent-orchestrationcloud-platformsautonomous-agents

321 查看 · 2026-07-07 更新

简介

一个部署在 Cloudflare Workers 上的 Model Context Protocol 服务器,能够在支持 OAuth 认证的 Claude 和其他 AI 模型中启用工具使用。

简介

一个部署在 Cloudflare Workers 上的 Model Context Protocol 服务器,能够在支持 OAuth 认证的 Claude 和其他 AI 模型中启用工具使用。

在 Cloudflare 上部署远程 MCP 服务器

让我们在 Cloudflare Workers 上启动并运行一个带有 OAuth 登录功能的远程 MCP 服务器!

本地开发

bash

克隆仓库

git clone git@github.com:cloudflare/ai.git

安装依赖

cd ai npm install

本地运行

npx nx dev remote-mcp-server

你应该能够在浏览器中打开 http://localhost:8787/

将 MCP 检查器连接到你的服务器

要探索你的新 MCP API,你可以使用 MCP 检查器

  • 使用 npx @modelcontextprotocol/inspector 启动它
  • 在检查器内,将传输类型切换为 SSE 并输入 http://localhost:8787/sse 作为要连接的 MCP 服务器的 URL,然后点击“连接”
  • 你将导航到(模拟)用户名/密码登录屏幕。输入任意电子邮件和密码进行登录。
  • 你应该会被重定向回 MCP 检查器,并且现在可以列出和调用任何已定义的工具!
配置后的 MCP 检查器
调用工具后的 MCP 检查器

将 Claude Desktop 连接到你的本地 MCP 服务器

MCP 检查器很棒,但我们真正想做的是将其连接到 Claude!请遵循 Anthropic 的快速入门指南,并在 Claude Desktop 中转到设置 > 开发者 > 编辑配置以找到你的配置文件。

在文本编辑器中打开该文件,并将其替换为此配置:

json { "mcpServers": { "math": { "command": "npx", "args": [ "mcp-remote", "http://localhost:8787/sse" ] } } }

这将运行一个本地代理,并允许 Claude 通过 HTTP 与你的 MCP 服务器通信。

当你打开 Claude 时,应该会弹出一个浏览器窗口让你登录。你应该能在右下角看到可用的工具。给定正确的提示,Claude 应该会请求调用工具。

点击锤子图标显示可用工具列表
Claude 回答了提示 '我好像把计算器弄丢了,手指也数完了。你能用数学工具计算 23 加 19 吗?' 通过调用 MCP 加法工具

部署到 Cloudflare

  1. npx wrangler kv namespace create OAUTH_KV
  2. 按照指引将 kv 命名空间 ID 添加到 wrangler.jsonc
  3. npm run deploy

从远程 MCP 客户端调用你新部署的远程 MCP 服务器

就像你在“本地开发”部分所做的那样,运行 MCP 检查器:

npx @modelcontextprotocol/inspector@latest

然后在检查器中输入你的 Worker 的 workers.dev URL(例如:worker-name.account-name.workers.dev/sse)作为要连接的 MCP 服务器的 URL,然后点击“连接”。

你现在已从远程 MCP 客户端连接到了你的 MCP 服务器。

将 Claude Desktop 连接到你的远程 MCP 服务器

更新 Claude 配置文件以指向你的 workers.dev URL(例如:worker-name.account-name.workers.dev/sse),然后重启 Claude。

json { "mcpServers": { "math": { "command": "npx", "args": [ "mcp-remote", "https://worker-name.account-name.workers.dev/sse" ] } } }

调试

如果出现问题,重新启动 Claude 或尝试直接通过命令行连接到你的 MCP 服务器可能会有所帮助。

bash npx mcp-remote http://localhost:8787/sse

在某些罕见情况下,清除添加到 ~/.mcp-auth 的文件可能有帮助。

bash rm -rf ~/.mcp-auth

服务配置

[{'mcpServers': {'math': {'args': ['mcp-remote', 'http://localhost:8787/sse'], 'command': 'npx'}}}, {'mcpServers': {'math': {'args': ['mcp-remote', 'https://worker-name.account-name.workers.dev/sse'], 'command': 'npx'}}}]

来源