使用说明
WHOOP MCP服务器
(非官方)
模型上下文协议(MCP)服务器,提供对WHOOP API的访问,允许Claude Code、Cursor等人工智能助手查询您的周期、恢复、睡眠、紧张和锻炼数据。
最初灵感来自 ctvidic/hop-mcp服务器
快速开始
1.安装依赖项
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and install
git clone https://github.com/0ptim/whoop-mcp-server.git
cd whoop-mcp-server
uv sync
# Optional: Install dev dependencies (for contributing)
uv sync --all-extras
uv run pre-commit install # Sets up pre-commit hooks
2.获取WHOOP API证书
- 首选 WHOOP开发人员仪表板
- 接受API使用条款
- 创建一个团队(任何名字都可以)
- 点击 “创建应用程序”:
- 姓名:
MCP(或任何名称) - 联系人: 您的电子邮件
- 隐私政策URL:
https://example.com(未针对个人应用程序进行验证) - 重定向URL:
http://localhost:1234 - 范围: 全选
- 姓名:
- 点击 “创建应用程序” 并复制您的 客户端ID 和 客户端密钥
3.配置服务器
# Copy the example config
cp config/whoop_config.example.json config/whoop_config.json
编辑 config/whoop_config.json 并填写您的凭据:
{
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET",
"redirect_uri": "http://localhost:1234"
}
4.通过WHOOP进行身份验证
运行身份验证脚本以完成OAuth流程:
uv run python src/test_auth.py
浏览器将为您打开以授权该应用程序。授权后,复制整个重定向URL并将其粘贴回终端。您的令牌将被保存以备将来使用。
5.配置您的MCP客户端
由于这因客户而异,请参阅客户的文档。
{
"servers": {
"WHOOP": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/whoop-mcp-server",
"run",
"python",
"src/whoop_server.py"
]
}
}
}
注: 替换
/ABSOLUTE/PATH/TO/whoop-mcp-server带有此克隆存储库的实际路径。
可用工具
连接后,您的代理可以使用这些工具查询您的WHOOP数据:
用户数据
get_user_profile-获取您的个人资料信息get_user_body_measurements-获取身高、体重和最大心率
健康摘要
get_health_summary(days)- 推荐用于健康分析! 结合恢复(评分、HRV、RHR)、睡眠(小时数、表现、效率)和压力数据,获取全面的每日总结
详细数据
get_recoveries(days)-获取HRV、RHR、恢复评分、SpO2和皮肤温度的恢复条目get_sleeps(days)-获得睡眠记录,包括阶段分解、效率和呼吸频率get_cycles(days)-获取包含压力评分、心率和卡路里的周期数据get_workouts(days, sport?)-获取锻炼,可选择按运动进行筛选(例如,“跑步”、“举重”)
平均值
get_average_strain(days)-计算一段时间内的平均应变get_average_sleep_hours(days)-计算平均睡眠时间
故障排除
身份验证问题
- 删除
config/.whoop_token.json并重新运行uv run python src/test_auth.py - 确保WHOOP开发人员仪表板中的重定向URI匹配
http://localhost:1234
令牌已过期
令牌会自动刷新,但如果问题仍然存在:
rm config/.whoop_token.json
uv run python src/test_auth.py
发展
代码质量工具
本项目使用现代Python工具(2026年最佳实践):
- 拉夫 -超快linter AND格式化器(取代Black、Flake8、isort、pyupgrade)
- MyPy 的 -类型检查
- 预提交挂钩 -每次提交前自动检查
# Format code
uv run ruff format src/
# Lint and auto-fix issues
uv run ruff check src/ --fix
# Type check
uv run mypy src/
# Setup pre-commit hooks (auto-runs all checks on commit)
uv run pre-commit install
测试
使用pytest运行测试:
# Run all tests
uv run pytest
# Run only integration tests (requires valid WHOOP token)
uv run pytest -m integration
# Run only unit tests (no API connection needed)
uv run pytest -m "not integration"
许可证
MIT许可证-有关详细信息,请参阅许可证文件。