Cloudflare Workers 上的 MCP 服务器采用 Bearer Auth
该存储库演示了在 Cloudflare Workers 上运行的模型上下文协议 (MCP) 服务器的概念验证实现,并带有简单的承载令牌身份验证。
概述
该项目展示了如何:
- 在 Cloudflare 的边缘网络上部署 MCP 服务器
- 实施基本承载令牌认证
- 通过无服务器架构创建和公开 MCP 工具
本地开发
Copy
启动服务器后,即可通过http://localhost:8787访问
验证
此实现使用简单的 Bearer Token 身份验证方案。客户端必须在其请求中提供 Authorization 标头。服务器将此令牌传递给 MCP 工具,允许工具根据已验证的用户执行操作。
使用 MCP Inspector 进行测试
您可以使用MCP 检查器来测试您的 MCP 服务器:
- 安装并启动检查器:Copy
- 配置检查器:
- 将传输类型切换为
SSE
- 输入您的 MCP 服务器的 URL(本地:
http://localhost:8787/sse
或已部署:https://your-worker.workers.dev/sse
://your-worker.workers.dev/sse ) - 在授权字段中添加承载令牌
- 点击“连接”
- 将传输类型切换为
- 测试功能:
- 单击“列出工具”查看可用工具
- 尝试运行“getToken”工具,它将返回您的授权标头
- 尝试使用两个数字的“添加”工具来测试基本功能
部署到 Cloudflare
将您的 MCP 服务器部署到 Cloudflare Workers:
Copy
部署后,您的服务器将通过https://your-worker.workers.dev
访问
项目结构
src/index.ts
- 使用 MCP 工具定义的主服务器实现src/utils.ts
- 用于渲染 Web 界面的辅助实用程序wrangler.jsonc
- Cloudflare Workers 配置
重要提示
这是一个概念验证的实现,旨在演示如何在无服务器环境中运行 MCP。在生产环境中,您需要实现:
- 更强大的身份验证(OAuth、令牌验证等)
- 速率限制和额外的安全措施
- 正确的错误处理和监控
故障排除
如果您遇到问题:
- 确保您的持有者令牌在授权标头中格式正确
- 检查 Cloudflare 仪表板中的工作日志
- 尝试重启本地开发服务器
对于持续存在的身份验证问题,您可能需要清除所有缓存的凭据:
Copy
This server cannot be installed
在 Cloudflare 的边缘网络上运行的模型上下文协议服务器的概念验证实现,具有承载令牌身份验证,允许部署的 AI 模型通过无服务器架构访问工具。