mcpField
W
whoop-mcp

whoop-mcp

本地服务
github.com/souravpn健康医疗022 周前更新

关于 whoop-mcp

whoop-mcp 让 Claude 访问 WHOOP 生物数据,包括恢复、睡眠、负荷和训练记录。数据在本地设备上访问,不会发送到第三方服务器。

主要功能

  1. 01获取恢复评分和生物指标
  2. 02查看睡眠时长与阶段
  3. 03查看每日负荷和心率
  4. 04浏览近期训练及历史记录
  5. 05追踪恢复和睡眠趋势

适用场景

  1. 01查看每日恢复、睡眠和负荷
  2. 02回顾数日的 HRV 趋势
  3. 03对照训练与次日恢复情况
  4. 04根据 WHOOP 数据整理健康概览

MCP 相关

向 Claude 等 MCP 客户端提供工具,以读取 WHOOP 个人资料、恢复、睡眠、负荷、训练和趋势数据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"souravpn-whoop": {
"command": "npx",
"args": [
"-y",
"@souravpn/whoop-mcp"
],
"env": {
"WHOOP_CLIENT_ID": "<WHOOP_CLIENT_ID>",
"WHOOP_CLIENT_SECRET": "<WHOOP_CLIENT_SECRET>"
}
}
}
}
启动命令npx -y @souravpn/whoop-mcp
需要配置的环境变量
WHOOP_CLIENT_IDOAuth2 Client ID from your WHOOP developer app at developer-dashboard.whoop.com
WHOOP_CLIENT_SECRET密钥OAuth2 Client Secret from your WHOOP developer app. Run whoop-mcp-auth-setup once to complete OAuth flow.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@souravpn/whoop-mcp1.0.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

whoop-mcp

一个 Model Context Protocol (MCP) 服务,让 Claude 能够访问你的 WHOOP 生物特征数据——恢复、睡眠、负荷和锻炼。

可以向 Claude 询问:

  • “我今天的恢复情况怎么样?”
  • “我昨晚睡得怎么样?”
  • “我这周的 HRV 趋势如何?”
  • “我昨天锻炼的负荷是多少?”

隐私

此应用会在你的设备本地访问 WHOOP 数据。不会向任何第三方服务发送数据。


工具

工具返回内容
get_recovery恢复评分、HRV、静息心率、SpO2
get_sleep睡眠时长、睡眠阶段(浅睡/深睡/REM)、效率、呼吸频率
get_strain当日负荷评分、平均/最高心率、卡路里
get_latest_workout最近一次锻炼——运动项目、时长、负荷、心率区间
get_recovery_trendN 天内的恢复评分(默认 7 天)
get_sleep_trendN 天内的睡眠数据(默认 7 天)
get_workout_history最近的锻炼记录(默认 5 条)
get_profile个人资料和身体测量数据

设置

1. 创建 WHOOP 开发者应用
  1. 前往 developer-dashboard.whoop.com
  2. 使用你的 WHOOP 账号登录
  3. 创建一个新应用:
    • 名称:whoop-mcp(或任意名称)
    • 重定向 URI:http://localhost:8080/callback
    • Scopes:选择所有只读权限范围和 offline
  4. 复制你的 Client ID 和 Client Secret
2. 安装
npm install -g @souravpn/whoop-mcp
3. 执行一次性身份验证设置

这会打开浏览器,你登录 WHOOP 后,令牌会保存到 ~/.whoop-mcp-tokens.json:

WHOOP_CLIENT_ID=your_id WHOOP_CLIENT_SECRET=your_secret whoop-mcp-auth-setup

只需执行一次。此后,服务会自动刷新令牌。

4. 添加到 Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS):

{
  "mcpServers": {
    "whoop": {
      "command": "@souravpn/whoop-mcp",
      "env": {
        "WHOOP_CLIENT_ID": "your_client_id",
        "WHOOP_CLIENT_SECRET": "your_client_secret"
      }
    }
  }
}

重启 Claude Desktop。你应该会在 Settings → Developer 中看到绿色的“running”标记。

5. 测试

打开新聊天并提问:

How's my recovery today?

示例查询

每日状态检查:

What's my recovery, sleep, and strain for today?

趋势分析:

How has my HRV trended over the past 7 days?

锻炼关联分析:

Look at my workouts this week and my recovery scores
the day after each one. Is there a pattern?

完整简报:

Give me a complete health briefing — recovery, last
night's sleep breakdown, and any workouts from yesterday

与 Oura 搭配使用

如果你也使用 Oura Ring,可以同时运行两个 MCP 服务,并让 Claude 交叉对照数据:

{
  "mcpServers": {
    "whoop": {
      "command": "/path/to/whoop-mcp",
      "env": { "WHOOP_ACCESS_TOKEN": "your_whoop_token" }
    },
    "oura": {
      "command": "/path/to/oura-mcp",
      "env": { "OURA_ACCESS_TOKEN": "your_oura_token" }
    }
  }
}

然后提问:

Compare my WHOOP and Oura HRV readings for this week.
Do they agree? Which is trending higher?

开发

git clone https://github.com/yourusername/whoop-mcp
cd whoop-mcp
npm install
npm run build

# Test locally
WHOOP_ACCESS_TOKEN=your_token node dist/index.js
项目结构
whoop-mcp/
├── src/
│   ├── index.ts   # MCP server + tool definitions
│   └── whoop.ts   # WHOOP API client + formatters
├── package.json
├── tsconfig.json
└── README.md

贡献

欢迎提交 PR。以下是一些扩展方向:

  • 心率时间序列数据
  • 睡眠阶段时间线(每小时的浅睡/深睡/REM)
  • 负荷目标建议
  • 每周摘要工具

许可证

MIT


致谢

基于 MCP TypeScript SDK 和 WHOOP Developer API 构建。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。