使用说明
项目简介
strava-mcp 是一个基于 Model Context Protocol (MCP) 构建的服务器,它集成了 Strava OAuth 认证,旨在为大型语言模型 (LLM) 客户端提供访问 Strava 运动数据的工具。该项目使用 Cloudflare Workers 部署,可以作为集成其他 OAuth 提供商的 MCP 服务器的参考示例。用户可以通过 Strava 账户连接到此 MCP 服务器,从而安全地将 Strava 数据与 LLM 应用结合使用。
主要功能点
- 资源访问 (Resources): 通过 Strava API 提供访问用户运动数据的能力,例如活动、俱乐部、路线、运动员信息等。
- 工具注册 (Tools): 预置了一系列工具,允许 LLM 客户端调用 Strava API 的各种功能,例如获取运动员信息、创建活动、查询路线等。
- OAuth 认证: 使用 Strava OAuth 2.0 进行用户身份验证和授权,确保数据访问的安全性。
- 远程 MCP 连接: 支持通过 Server-Sent Events (SSE) 协议进行远程 MCP 连接,方便 LLM 客户端与服务器通信。
- Cloudflare Workers 部署: 基于 Cloudflare Workers 平台构建,易于部署和扩展。
安装步骤
-
克隆仓库并安装依赖:
git clone https://github.com/kw510/strava-mcp.git cd strava-mcp npm install -
创建 Strava API 应用程序:
- 访问 Strava API Applications 创建一个新的 API 应用程序。
- 授权回调域名 (Authorization Callback Domain): 设置为 '<your-subdomain>.workers.dev' (Cloudflare Workers 的子域名)。
- 授权回调 URL (Authorization Callback URL): 设置为 'https://<your-subdomain>.workers.dev/callback'。
- 记录 客户端 ID (Client ID) 并生成 客户端密钥 (Client secret)。
-
配置 Cloudflare Workers 密钥 (Secrets):
wrangler secret put STRAVA_CLIENT_ID # 粘贴你的 Strava 客户端 ID wrangler secret put STRAVA_CLIENT_SECRET # 粘贴你的 Strava 客户端密钥 -
设置 KV 命名空间:
wrangler kv:namespace create "OAUTH_KV"- 更新 'wrangler.toml' 文件,将 KV 命名空间的 ID 填入。
-
部署服务器:
wrangler deploy- 部署成功后,你的 MCP 服务器将通过 'https://mcp-strava-oauth.<your-subdomain>.workers.dev/sse' 地址提供服务。
服务器配置 (MCP 客户端)
要让 MCP 客户端(例如 Claude Desktop, Cursor, Windsurf Inspector)连接到 strava-mcp 服务器,你需要配置客户端的 MCP 服务器设置。以 JSON 格式配置,示例如下:
{ "mcpServers": { "strava": { "command": "npx", "args": [ "mcp-remote", "https://mcp-strava-oauth.<your-subdomain>.workers.dev/sse" ] } } }
- server name: 'strava' (可以自定义,用于在客户端中标识服务器)
- command: 'npx' (指定启动 MCP 远程客户端的命令)
- args:
- '"mcp-remote"': MCP 远程客户端命令。
- '"https://mcp-strava-oauth.<your-subdomain>.workers.dev/sse"': MCP 服务器的 SSE 端点 URL。将 '<your-subdomain>' 替换为你的 Cloudflare Workers 子域名。
基本使用方法
-
使用 Inspector 测试:
- 运行 'npx @modelcontextprotocol/inspector@latest' 启动 Inspector。
- 在 Inspector 中输入你的服务器 SSE 地址 'https://mcp-strava-oauth.<your-subdomain>.workers.dev/sse' 并连接。
- 按照提示完成 Strava OAuth 认证流程。
- 认证成功后,你将在 Inspector 中看到可用的 Strava 工具。
-
在 Claude Desktop 中使用:
- 打开 Claude Desktop,进入 "Settings" -> "Developer" -> "Edit Config"。
- 将上述服务器配置 JSON 内容粘贴到配置文件中,替换 '<your-subdomain>' 为你的实际子域名。
- 重启 Claude Desktop。Claude 将会打开浏览器窗口进行 Strava OAuth 登录。
- 完成认证后,Strava 工具将出现在 Claude 界面中,你可以指示 Claude 使用这些工具来访问你的 Strava 数据。
-
在 Cursor 等其他 MCP 客户端中使用:
- 根据客户端文档,配置 MCP 服务器连接,通常需要提供 "Command" 和 "Args" 信息,将上述服务器配置信息适配到相应的客户端配置中。
信息
分类
网页与API