使用说明
项目简介
Strava MCP服务器是一个使用TypeScript开发的应用程序,它充当了连接大型语言模型(LLM)客户端和Strava API的桥梁。通过实现Model Context Protocol (MCP),该服务器能够以标准化的方式向LLM提供用户的Strava运动数据和相关功能,例如访问运动记录、探索Strava路段、管理路线等。这使得LLM能够理解和响应用户关于其运动数据的自然语言查询,并执行相应的Strava操作。
主要功能点
- 运动数据访问: 获取最近的运动记录、个人资料和统计数据。
- 路段探索与管理: 浏览、查看、收藏和管理Strava路段 (Segments)。
- 详细信息查询: 查看详细的运动记录和路段成绩信息。
- 路线管理: 列出和查看已保存的Strava路线的详细信息。
- 路线导出: 将Strava路线导出为GPX或TCX文件到本地文件系统。
- AI友好: 通过MCP协议提供结构化的JSON响应,方便LLM理解和使用。
- Strava API V3: 基于Strava API V3版本构建,保证数据接口的兼容性和时效性。
安装步骤
- 环境准备: 确保已安装 Node.js (v18 或更高版本) 和 npm。
- 克隆仓库:
git clone https://github.com/r-huijts/strava-mcp strava-mcp cd strava-mcp - 安装依赖:
npm install - Strava API 应用设置:
- 访问 https://www.strava.com/settings/api 创建一个新的API应用。
- 在 "Authorization Callback Domain" 中填写 'localhost'。
- 记录应用的 Client ID 和 Client Secret。
- 生成 API 令牌:
- 运行授权脚本:
npx ts-node scripts/setup-auth.ts - 按照提示操作,输入 Client ID 和 Client Secret,复制并粘贴授权URL到浏览器,授权后复制 URL 中的 'code' 参数值,粘贴回终端。
- 选择将令牌保存到 '.env' 文件。
- 运行授权脚本:
- 配置导出路径 (可选): 如果需要使用路线导出功能,编辑 '.env' 文件,设置 'ROUTE_EXPORT_PATH' 变量为导出的文件保存的绝对路径。
- 构建项目:
npm run build - 启动服务器:
npm start
服务器配置
要将 Strava MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),您需要编辑客户端的配置文件。以 Claude Desktop 为例,在 'claude_desktop_config.json' 文件中添加或更新 'mcpServers' 部分:
{ "mcpServers": { "strava-mcp-local": { "command": "node", "args": [ "/absolute/path/to/your/strava-mcp/dist/server.js" ] } } }
注意:
- 将 '/absolute/path/to/your/strava-mcp/' 替换为实际仓库的绝对路径。
- 'command' 必须设置为 'node'。
- 'args' 数组指定了服务器启动脚本的路径 'dist/server.js'。
基本使用方法
配置完成后,MCP 客户端(如 Claude)即可通过自然语言指令与 Strava MCP 服务器交互。例如,用户可以向 Claude 提出类似 “Show me my recent Strava activities” 的问题,Claude 会调用 Strava MCP 服务器提供的工具来获取数据并返回给用户。具体工具和使用示例请参考仓库 README.md 中的 "Usage Examples" 和 "API Reference" 部分。
信息
分类
网页与API