本项目是一个基于模型上下文协议 (MCP)的服务器,支持远程 MCP 连接,并且内置了 Strava 的 OAuth 登录功能。用户可连接到您的 MCP 服务器,使用他们的 Strava 账户进行登录。
git clone https://github.com/kw510/strava-mcp.git
cd strava-mcp
npm install
mcp-strava-oauth..workers.dev https://mcp-strava-oauth..workers.dev/callback wrangler secret put STRAVA_CLIENT_ID
wrangler secret put STRAVA_CLIENT_SECRET
MCP - DevMCP Development Apphttp://localhost:3000http://localhost:3000/login/callbackwrangler kv:namespace create "OAUTH_KV"
使用生成的 KV ID 更新 wrangler.toml 文件。
wrangler deploy
workers - oauth 库实现 OAuth 2.0 流程。durable - object 库管理持久化会话和用户数据。@cloudflare/mcp - proxy 库创建 MCP 代理。npm install -g wrangler)mcp create connection --name test - connection --url http://localhost:5000
mcp start - connection test - connection
Compute 标签并选择您的 MCP 应用。mcp create connection --name test - connection --url http://localhost:5000
mcp start - connection test - connection
npm run dev
http://localhost:5000。MCP 服务器(由 Cloudflare Workers 提供支持)承担以下两种角色:
该项目作为一个参考示例,展示了如何将 OAuth 提供程序集成到部署在 Cloudflare 上的 MCP 服务器中,并使用 [workers - oauth - provider 库](https://github.com/cloudflare/workers - oauth - provider)。
durable - object 库管理持久化会话和用户数据。@cloudflare/mcp - proxy 库创建 MCP 代理。⚠️ 重要提示
- 确保所有回调 URL 配置正确且与 Strava 应用程序中的设置完全匹配。
- 定期检查 API 调用限制,避免超出配额。
- 在生产环境中使用 HTTPS 并配置 SSL 证书以确保安全性。
- 使用环境变量管理敏感信息(如客户端 ID 和密钥)。
通过以上步骤,您可以成功部署并运行一个支持 Strava 登录的 MCP 服务器,并利用 Cloudflare 的强大功能进行扩展和优化。