MCP Server
MCP
io.github.briangaoo/whoop-mcp
Full read + write access to your Whoop fitness data via the private iOS API. 48 tools.
Install
npx -y @briangaoo/[email protected]
Configuration Example
{
"remotes": [],
"packages": [
{
"registryType": "npm",
"identifier": "@briangaoo/whoop-mcp",
"version": "1.3.0",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Whoop Cognito access token. Obtain via `whoop-mcp auth` 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.",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "WHOOP_IOS_BEARER_TOKEN"
},
{
"description": "Whoop Cognito refresh token (~30 day lifetime). Obtained alongside the bearer token from `whoop-mcp auth`. When this expires, run `whoop-mcp auth` to get a fresh pair.",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "WHOOP_COGNITO_REFRESH_TOKEN"
},
{
"description": "Your Whoop account email. Used only by `whoop-mcp auth` — the running server reads tokens, not credentials.",
"isRequired": true,
"format": "string",
"name": "WHOOP_EMAIL"
},
{
"description": "Your numeric Whoop user ID. Optional — used by whoop_profile and whoop_leaderboard. Avoids one redundant bootstrap call per session if set.",
"format": "string",
"name": "WHOOP_USER_ID"
},
{
"description": "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).",
"format": "string",
"name": "WHOOP_TIMEZONE"
}
]
}
]
}
mcp
model-context-protocol
npm
By
Comments
Sign in to leave a comment