Whoop MCP Server

by MCP-Mirror

247 downloads
Not rated
GitHub

About

The Whoop MCP Server is a Model Context Protocol (MCP) server that provides access to the Whoop API. It allows language models to query cycles, recovery, strain, and workout data from the Whoop API.

Details

Author
MCP-Mirror
Downloads
247
Categories
Other

- Query cycle data for a specific date range or get latest cycle
- Retrieve recovery and strain data for any date range
- Calculate average strain over a configurable number of days
- Get user profile information and check authentication status
- Exposes both MCP tools and an HTTP API server

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Whoop MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

You need Whoop credentials (email and password) to use the server. Configure it in claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%/Claude/claude_desktop_config.json) with the command pointing to whoop_server.py and environment variables WHOOP_EMAIL and WHOOP_PASSWORD. Alternatively, run the HTTP API server with ./run_whoop_server.sh. Dates must be provided in ISO format (YYYY-MM-DD).

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "whoop mcp server": {
            "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"
                }
            }
        }
    }
}

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"
        }
    }
}

Whoop MCP Server

Python Package License: MIT Python 3.12

A Model Context Protocol (MCP) server that provides access to the Whoop API. It allows language models to query cycles, recovery, strain, and workout data from the Whoop API.

Available Tools

The server exposes the following tools:

Cycle Queries

- get_cycle_collection(start_date: str, end_date: str): Get cycle data for a specific date range - get_latest_cycle(): Get the most recent cycle data

Recovery and Strain

- get_recovery_data(start_date: str, end_date: str): Get recovery data for a specific date range - get_strain_data(start_date: str, end_date: str): Get strain data for a specific date range - get_average_strain(days: int = 7): Calculate average strain over specified number of days

Profile and Authentication

- get_profile(): Get user profile information - check_auth_status(): Check authentication status with Whoop API

Dates should be provided in ISO format (YYYY-MM-DD).

Usage

You'll need Whoop credentials to use this server. The server uses email/password authentication with the Whoop API.

Claude for Desktop

Update your claude_desktop_config.json (located in ~/Library/Application\ Support/Claude/claude_desktop_config.json on macOS and %APPDATA%/Claude/claude_desktop_config.json on Windows) to include the following:

{
    "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 Server

The project also includes an HTTP API server that exposes the same functionality over HTTP endpoints. To run it:

./run_whoop_server.sh

Example Queries

Once connected, you can ask Claude questions like:

- "What's my recovery score for today?"
- "Show me my strain data for the past week"
- "What's my average strain over the last 7 days?"
- "Get my latest cycle data"

Error Handling

The server provides human-readable error messages for common issues:
- Invalid date formats
- API authentication errors
- Network connectivity problems
- Missing or invalid credentials

Project Structure

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

License

This project is licensed under the MIT License - see the LICENSE file for details.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.