article
README
🚀 Strava MCP 服务器
一个用于与 Strava API 交互的 Model Context Protocol (MCP) 服务器,借助它可以方便地实现与 Strava 平台数据的交互,为用户提供更多功能。
🚀 快速开始
安装
你可以通过 uvox 轻松安装 Strava MCP:
uvox strava-mcp
设置 Strava 凭证
-
创建 Strava API 应用:
- 访问 https://www.strava.com/settings/api
- 创建一个新的应用以获取你的客户端 ID 和客户端密钥
- 对于“授权回调域名”,输入
localhost
-
配置你的凭证: 创建一个凭证文件(例如,
~/.ssh/strava.sh):export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secret -
配置 Claude Desktop: 将以下内容添加到
~/.config/autocad/settings.json文件中:{ "stravaClientId": "你的客户端 ID", "stravaClientSecret": "你的客户端密钥" }
认证流程
首次使用时,系统会自动启动认证流程。浏览器将打开 Strava 的授权页面。完成授权后,服务器将保存 refresh_token 以便后续使用。
✨ 主要特性
可用工具
- 获取用户活动:列出用户的活动。
- 获取单个活动:通过活动 ID 获取详细信息。
- 获取活动段:通过活动 ID 获取活动的各个阶段。
- 获取段排行榜:通过段 ID 获取该段的排行榜。
参数说明
include_all_efforts:是否包含所有努力(默认为 false)。per_page:每页显示的数量(默认为 50,最大为 100)。
📦 安装指南
项目设置
-
克隆仓库:
git clone https://github.com/yorrickjansen/strava-mcp.git cd strava-mcp -
安装依赖:
pip install -r requirements.txt -
配置环境变量:
export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secret
运行开发模式
uv serve --reload
手动认证
运行以下命令以手动获取 refresh_token:
python -m strava_mcp.auth
📚 详细文档
项目结构
- strava_mcp/init.py:初始化模块。
- strava_mcp/auth.py:处理认证流程。
- strava_mcp/routes.py:定义 API 路由。
测试
使用 pytest 进行测试:
pytest tests/
发布到 PyPI
构建包
uv build
发布到 PyPI
uv publish
扫码联系在线客服