← Index

io.github.briangaoo/whoop-mcp

io.github.briangaoo/whoop-mcp·v1.1.0·Other
Quality Score
85
/100

Full read + write access to your Whoop fitness data via the private iOS API. 47 tools.

§00  Trust verdict · v1 advisory ·  method
UNVERIFIEDno verdict on file

Verdict not yet evaluated for this tool. The hybrid eval runs adversarial cases first; coverage rolls out as the corpus expands. Until a verdict is recorded, an agent should treat this tool as not-yet-cleared and fall back to its own checks. Method: hybrid eval, four-state verdict, honest limits.

§01  Install
Claude Desktop (claude_desktop_config.json)
{
  "mcpServers": {
    "whoop-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@briangaoo/whoop-mcp"
      ],
      "env": {
        "WHOOP_IOS_BEARER_TOKEN": "<your-whoop_ios_bearer_token>",
        "WHOOP_COGNITO_REFRESH_TOKEN": "<your-whoop_cognito_refresh_token>",
        "WHOOP_EMAIL": "<whoop_email>",
        "WHOOP_USER_ID": "<whoop_user_id>",
        "WHOOP_TIMEZONE": "<whoop_timezone>"
      }
    }
  }
}
Cursor (.cursor/mcp.json)
{
  "mcpServers": {
    "whoop-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@briangaoo/whoop-mcp"
      ],
      "env": {
        "WHOOP_IOS_BEARER_TOKEN": "<your-whoop_ios_bearer_token>",
        "WHOOP_COGNITO_REFRESH_TOKEN": "<your-whoop_cognito_refresh_token>",
        "WHOOP_EMAIL": "<whoop_email>",
        "WHOOP_USER_ID": "<whoop_user_id>",
        "WHOOP_TIMEZONE": "<whoop_timezone>"
      }
    }
  }
}
Cline (cline_mcp_settings.json)
npx -y @briangaoo/whoop-mcp
§02  Environment variables
WHOOP_IOS_BEARER_TOKEN
requiredsecret

Whoop Cognito access token. Obtain via `npm run cognito-bootstrap` from the repo, which prompts for your Whoop email + password + SMS MFA code, then writes both tokens to a local .env. Auto-refreshes every ~24h.

WHOOP_COGNITO_REFRESH_TOKEN
requiredsecret

Whoop Cognito refresh token (~30 day lifetime). Obtained alongside the bearer token from `npm run cognito-bootstrap`. When this expires, run `npm run rebootstrap` to get a fresh pair.

WHOOP_EMAIL
required

Your Whoop account email. Used only by the bootstrap script — the running server reads tokens, not credentials.

WHOOP_USER_ID

Your numeric Whoop user ID. Optional — used by whoop_profile and whoop_leaderboard. Avoids one redundant bootstrap call per session if set.

WHOOP_TIMEZONE

IANA timezone (e.g., America/Los_Angeles) for response timestamps. Optional — if unset, the server auto-detects from your Whoop profile's timezone_offset field (refreshed hourly).

§03  MCP Quality Score  ·  methodology
freshness
25
completeness
10
installability
25
documentation
15
stability
10
§04  Alternatives in Other