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