使用说明
项目简介
Strava MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它允许大型语言模型 (LLM) 通过标准化的 MCP 协议访问 Strava API。通过这个服务器,你可以让 LLM 查询你的 Strava 运动数据,例如最近的跑步、骑行活动,或者特定时间段内的运动记录。
主要功能点
- 提供多种工具查询 Strava 活动数据,例如获取最近活动、按日期范围查询、按ID查询等。
- 返回结构化的运动数据,包含距离、时间、速度、海拔等信息,方便 LLM 理解和使用。
- 支持 Claude Desktop 和 Claude Web 等 MCP 客户端。
安装步骤
- 确保已安装 Python 3.10 或更高版本。
- 克隆仓库到本地:
git clone https://github.com/tomekkorbak/strava-mcp-server.git - 进入仓库目录:
cd strava-mcp-server - 安装依赖:
pip install uv # 推荐使用uv代替pip,速度更快 uv pip install -e . - 配置 Strava API 密钥:
- 访问 Strava API Settings 创建 Strava API 应用,获取 Client ID 和 Client Secret。
- 运行 'python get_strava_token.py' 脚本,根据提示完成授权,获取 Refresh Token。
- 将 Client ID、Client Secret 和 Refresh Token 设置为环境变量 'STRAVA_CLIENT_ID', 'STRAVA_CLIENT_SECRET', 'STRAVA_REFRESH_TOKEN',或者将其配置在仓库根目录下的 '.env' 文件中。
服务器配置
{ "mcpServers": { "strava": { "command": "uvx", "args": [ "strava-mcp-server" ], "env": { "STRAVA_CLIENT_ID": "YOUR_CLIENT_ID", // 替换为你的 Strava Client ID "STRAVA_CLIENT_SECRET": "YOUR_CLIENT_SECRET", // 替换为你的 Strava Client Secret "STRAVA_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN" // 替换为你的 Strava Refresh Token } } } }
- 将以上 JSON 配置添加到你的 MCP 客户端配置文件中 (例如 Claude Desktop 的 'claude_desktop_config.json')。
- 确保将 'YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET', 和 'YOUR_REFRESH_TOKEN' 替换为你自己的 Strava API 凭据。
基本使用方法
- 启动 MCP 服务器后,在 MCP 客户端 (如 Claude) 中选择配置的 "strava" 服务器。
- 可以向 LLM 提出类似以下的问题,查询 Strava 数据:
- "What are my recent activities?" (最近的活动是什么?)
- "Show me my activities from last week" (显示我上周的活动)
- "What was my longest run in the past month?" (我上个月最长的跑步是哪个?)
- "Get details about my latest cycling activity" (获取我最近一次骑行活动的详细信息)
信息
分类
网页与API