使用说明
Whoop MCP服务器
MCP服务器,将您的Whoop健身数据(恢复、睡眠、压力、锻炼)暴露给Claude,供其作为日常训练教练使用。
先决条件
- Python 3.10+
- A. Whoop开发者 已注册应用程序的帐户
- Whoop应用程序的客户端ID和客户端密码
Whoop开发人员仪表板设置
- 首选 developer.hop.com 并登录
- 创建新应用程序
- 设置 重定向URI 致:
http://localhost:8080/callback - 启用这些作用域:
read:recovery,read:cycles,read:sleep,read:profile,read:body_measurement- 注:
read:workout和offline可能无法在所有开发人员应用程序上使用。服务器优雅地处理缺失的作用域。
- 注:
- 注意你的 客户端ID 和 客户端密钥
安装
cd whoop-mcp
pip install -r requirements.txt
授权(一次性设置)
导出您的应用凭据并运行安装脚本:
export WHOOP_CLIENT_ID="your-client-id"
export WHOOP_CLIENT_SECRET="your-client-secret"
python scripts/setup_auth.py
这将打开一个浏览器,进入Whoop的授权页面。在您批准后,令牌将被加密并存储在 ~/.whoop_mcp/.如果 offline 范围已授予,令牌自动刷新。否则,请在令牌过期时重新运行此脚本。
Claude桌面/协作MCP配置
将此添加到您的Claude MCP配置中:
{
"mcpServers": {
"whoop": {
"command": "python",
"args": ["/absolute/path/to/whoop-mcp/src/whoop_server.py"],
"env": {
"WHOOP_CLIENT_ID": "your-client-id",
"WHOOP_CLIENT_SECRET": "your-client-secret"
}
}
}
}
替换 /absolute/path/to/whoop-mcp 使用机器上的实际路径。
可用工具
| 工具 | 说明 |
|---|---|
whoop_check_auth |
验证令牌是否有效且未过期 |
whoop_get_latest_recovery |
最近恢复评分、心率变异性、静息心率、血氧饱和度 |
whoop_get_recovery_range |
日期范围的恢复数据 |
whoop_get_latest_sleep |
最后一次睡眠时出现阶段性崩溃 |
whoop_get_sleep_range |
日期范围内的睡眠数据 |
whoop_get_latest_strain |
当前循环应变,平均/最大HR,千焦 |
whoop_get_strain_range |
过去N天的平均应变 |
whoop_get_workouts |
带有运动ID、压力、HR区域的锻炼 |
whoop_get_profile |
用户资料和身体测量 |
whoop_get_training_summary |
汇总辅导快照(从这里开始) |
示例提示
连接后,您可以问Claude以下问题:
- “我昨天恢复得怎么样了?”
- “我上周累了多少?”
- “我有过度训练的趋势吗?”
- “在过去的两周里,我的HRV发生了什么变化?”
- “我昨晚的睡眠阶段是什么?”
- “将我的压力与过去7天的恢复情况进行比较。”
- “我今天应该做剧烈运动吗?”
培训教练工作流程
通过调用启动每个会话 whoop_get_training_summary 了解恢复状态、最近的压力负荷、睡眠质量和训练准备评估的概述。
令牌存储
令牌以加密方式存储在 ~/.whoop_mcp/:
.encryption_key--Fernet加密密钥(chmod 600)tokens.enc--加密的OAuth令牌(chmod 600)- 目录权限:chmod 700
如果令牌刷新失败,请重新运行 python scripts/setup_auth.py.