Whoop健康数据查询服务

一个提供Whoop API访问的模型上下文协议(MCP)服务器,允许语言模型查询周期、恢复、压力和锻炼数据。

  • by ctvidic
  • Python
  • 本地部署
  • 28 星标
  • 更新于
在 GitHub 查看 ctvidic/whoop-mcp-server

使用说明

Whoop MCP服务器

Python包许可证:MIT Python 3.12

模型上下文协议(MCP)服务器,提供对Whoop API的访问。它允许语言模型从Whoop API查询周期、恢复、紧张和锻炼数据。

可用工具

服务器公开了以下工具:

循环查询

  • get_cycle_collection(start_date: str, end_date: str):获取特定日期范围的周期数据
  • get_latest_cycle():获取最新的周期数据

恢复和应变

  • get_recovery_data(start_date: str, end_date: str):获取特定日期范围的恢复数据
  • get_strain_data(start_date: str, end_date: str):获取特定日期范围的应变数据
  • get_average_strain(days: int = 7):计算指定天数内的平均应变

配置文件和身份验证

  • get_profile():获取用户配置文件信息
  • check_auth_status():使用Whoop API检查身份验证状态

日期应以ISO格式(YYYY-MM-DD)提供。

用法

您需要Whoop凭据才能使用此服务器。服务器使用Whoop API的电子邮件/密码身份验证。

Claude桌面版

更新您的 claude_desktop_config.json (位于 ~/Library/Application\ Support/Claude/claude_desktop_config.json 在macOS和 %APPDATA%/Claude/claude_desktop_config.json 在Windows上)包括以下内容:

{
    "mcpServers": {
        "Whoop": {
            "command": "python",
            "args": ["/path/to/whoop/src/whoop_server.py"],
            "cwd": "/path/to/whoop",
            "env": {
                "WHOOP_EMAIL": "your.email@example.com",
                "WHOOP_PASSWORD": "your_password"
            }
        }
    }
}

HTTP API服务器

该项目还包括一个通过HTTP端点公开相同功能的HTTP API服务器。要运行它:

./run_whoop_server.sh

查询示例

连接后,您可以向Claude提出以下问题:

  • “我今天的恢复分数是多少?”
  • “显示我过去一周的应变数据”
  • “过去7天我的平均压力是多少?”
  • “获取我的最新周期数据”

错误处理

服务器为常见问题提供人类可读的错误消息:

  • 日期格式无效
  • API身份验证错误
  • 网络连接问题
  • 缺少或无效的凭据

项目结构

whoop/
├── src/
│   ├── whoop_server.py      # MCP server implementation
│   └── whoop_http_server.py # HTTP API server implementation
├── config/
│   └── .env                 # Environment variables
├── requirements.txt         # Python dependencies
└── run_whoop_server.sh     # Script to run HTTP server

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。