使用说明

项目简介

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版本构建,保证数据接口的兼容性和时效性。

安装步骤

  1. 环境准备: 确保已安装 Node.js (v18 或更高版本) 和 npm。
  2. 克隆仓库:
    git clone https://github.com/r-huijts/strava-mcp strava-mcp
    cd strava-mcp
  3. 安装依赖:
    npm install
  4. Strava API 应用设置:
    • 访问 https://www.strava.com/settings/api 创建一个新的API应用。
    • 在 "Authorization Callback Domain" 中填写 'localhost'。
    • 记录应用的 Client IDClient Secret
  5. 生成 API 令牌:
    • 运行授权脚本:
      npx ts-node scripts/setup-auth.ts
    • 按照提示操作,输入 Client ID 和 Client Secret,复制并粘贴授权URL到浏览器,授权后复制 URL 中的 'code' 参数值,粘贴回终端。
    • 选择将令牌保存到 '.env' 文件。
  6. 配置导出路径 (可选): 如果需要使用路线导出功能,编辑 '.env' 文件,设置 'ROUTE_EXPORT_PATH' 变量为导出的文件保存的绝对路径。
  7. 构建项目:
    npm run build
  8. 启动服务器:
    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