使用说明
Strava MCP服务器
用于与Strava API交互的模型上下文协议(MCP)服务器。
用户指南
安装
您可以轻松安装Strava MCP uvx:
uvx 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桌面: 将以下内容添加到您的Claude配置中(
/Users/<username>/Library/Application Support/Claude/claude_desktop_config.json):"strava": { "command": "bash", "args": [ "-c", "source ~/.ssh/strava.sh && uvx strava-mcp" ] }
认证
首次使用Strava MCP工具时:
- 身份验证流程将自动启动
- 您的浏览器将打开Strava授权页面
- 授权后,您将被重定向回本地页面
- 您的刷新令牌将自动保存以供将来使用
可用工具
获取用户活动
检索已验证用户的活动。
参数:
before(可选):用于过滤的纪元时间戳after(可选):用于过滤的纪元时间戳page(可选):页码(默认:1)per_page(可选):每页项目数(默认值:30)
获取活动
获取特定活动的详细信息。
参数:
activity_id:活动的IDinclude_all_efforts(可选):包括分段努力(默认值:false)
获取活动细分
从特定活动中检索分段。
参数:
activity_id:活动的ID
获取细分市场排行榜
获取特定细分市场的排行榜。
参数:
segment_id:段的ID- 各种可选过滤器(性别、年龄组等)
开发者指南
项目设置
-
克隆存储库:
git clone <repository-url> cd strava -
安装依赖项:
uv install -
设置环境变量:
export STRAVA_CLIENT_ID=your_client_id export STRAVA_CLIENT_SECRET=your_client_secret或者,创建一个
.env包含这些变量的文件。
以开发模式运行
使用MCP CLI运行服务器:
mcp dev strava_mcp/main.py
手动认证
您可以通过运行以下命令手动获取刷新令牌:
python get_token.py
项目结构
strava_mcp/:主包目录__init__.py:包初始化config.py:使用pydantic设置的配置设置models.py:Strava API实体的Pydantic模型api.py:Strava的低级API客户auth.py:Strava OAuth身份验证实现oauth_server.py:独立OAuth服务器实现service.py:业务逻辑服务层server.py:MCP服务器实现
tests/:单元测试strava_mcp/main.py:运行服务器的主要入口点get_token.py:手动获取刷新令牌的实用程序脚本
运行测试
pytest
发布到PyPI
构建包
# Build both sdist and wheel
uv build
发布到PyPI
# Publish to Test PyPI first
uv publish --index testpypi
# Publish to PyPI
uv publish