mcpField
R
Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare

本地服务
github.com/tomo-ff云与基础设施080 周前更新

关于 Remote MCP Server on Cloudflare

Remote MCP Server on Cloudflare 是在 Cloudflare Workers 上构建和部署远程 MCP 服务的示例项目。它演示模拟登录流程,以及通过 MCP Inspector 和 Claude Desktop 建立连接。

主要功能

  1. 01在 Cloudflare Workers 上本地开发
  2. 02模拟登录流程
  3. 03通过 SSE 连接 MCP Inspector
  4. 04使用 mcp-remote 连接 Claude Desktop
  5. 05通过 Wrangler 部署

适用场景

  1. 01构建远程 MCP 服务原型
  2. 02使用 MCP Inspector 测试工具
  3. 03将 Claude Desktop 连接到 Worker
  4. 04部署基于 Worker 的 MCP 服务

MCP 相关

该项目提供使用 SSE 传输并带有模拟登录流程的远程 MCP 服务示例。MCP Inspector 和 Claude Desktop 可通过本地地址或已部署的 workers.dev 地址连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"remote-mcp-server-tomo-ff": {
"command": "npx",
"args": [
"-y",
"nx"
]
}
}
}
启动命令npx -y nx

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmnx

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Cloudflare 上的远程 MCP 服务

让我们在 Cloudflare Workers 上部署一个远程 MCP 服务,并配备 OAuth 登录!

本地开发

# clone the repository
git clone [email protected]:cloudflare/ai.git

# install dependencies
cd ai
npm install

# run locally
npx nx dev remote-mcp-server

你应该可以在浏览器中打开 http://localhost:8787/

将 MCP Inspector 连接到你的服务

要探索新的 MCP API,可以使用 MCP Inspector。

  • 运行 npx @modelcontextprotocol/inspector 启动它
  • 在 Inspector 中,将 Transport Type 切换为 SSE,输入 http://localhost:8787/sse 作为要连接的 MCP 服务 URL,然后点击“Connect”
  • 你将进入一个(模拟的)用户/密码登录页面。输入任意邮箱和密码即可登录。
  • 你应该会被重定向回 MCP Inspector,现在可以列出并调用所有已定义的工具!
使用上述配置的 MCP Inspector
调用工具后的 MCP Inspector

将 Claude Desktop 连接到本地 MCP 服务

MCP Inspector 很实用,但我们真正想做的是将它连接到 Claude!按照 Anthropic 的快速入门指南,然后在 Claude Desktop 中前往 Settings > Developer > Edit Config,找到配置文件。

在文本编辑器中打开该文件,并替换为以下配置:

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

这会运行一个本地代理,让 Claude 通过 HTTP 与你的 MCP 服务通信。

打开 Claude 时,浏览器窗口应该会打开,并允许你登录。你应该能在右下角看到可用工具。给出合适的提示词后,Claude 应该会询问是否调用该工具。

点击锤子图标可显示可用工具列表
Claude 通过调用 MCP add 工具,回答提示词“我的计算器好像丢了,手指也数完了。你能用 math 工具把 23 和 19 相加吗?”

部署到 Cloudflare

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

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

和上面“本地开发”部分一样,运行 MCP Inspector:

npx @modelcontextprotocol/inspector@latest

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

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

将 Claude Desktop 连接到远程 MCP 服务

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

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

调试

如果遇到问题,重启 Claude 或尝试在命令行中直接连接 MCP 服务,运行以下命令可能会有所帮助。

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

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

rm -rf ~/.mcp-auth

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。