Whoop MCP runs on your own machine — the client starts it, so there is no endpoint to ping. 307 installs a week from npm. Last commit 29 Aug 2026.
Privacy-first, unofficial WHOOP MCP server for AI health, sleep, recovery, and performance agents.
We read the source, 22 h ago · rules 3dff92dd89df
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
const child = spawn(command, args, { detached: true, stdio: "ignore" });
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add whoop-mcp -- npx -y whoop-mcp-unofficial
{
"mcpServers": {
"whoop-mcp": {
"args": [
"-y",
"whoop-mcp-unofficial"
],
"command": "npx"
}
}
}
[mcp_servers.whoop-mcp]
command = "npx"
args = ["-y", "whoop-mcp-unofficial"]
{
"mcpServers": {
"whoop-mcp": {
"args": [
"-y",
"whoop-mcp-unofficial"
],
"command": "npx"
}
}
}
{
"mcpServers": {
"whoop-mcp": {
"args": [
"-y",
"whoop-mcp-unofficial"
],
"command": "npx"
}
}
}
This one needs environment variables set before it will start:
WHOOP_CLIENT_ID (WHOOP OAuth client ID. Optional when configured with whoop-mcp-server setup.), WHOOP_CLIENT_SECRET (WHOOP OAuth client secret. Prefer whoop-mcp-server setup so this secret is stored in ~/.whoop-mcp/config.json instead of MCP client config.), WHOOP_REDIRECT_URI (Redirect URI configured in the WHOOP Developer Dashboard. Optional when configured with whoop-mcp-server setup.), WHOOP_TOKEN_PATH (Optional local path for OAuth tokens. Defaults to ~/.whoop-mcp/tokens.json.), WHOOP_PRIVACY_MODE (Optional payload mode: summary, structured, or raw. Defaults to structured. raw means full WHOOP API payloads, not raw device sensor streams.), WHOOP_CACHE (Optional SQLite cache toggle. Set to true or sqlite to enable.), WHOOP_CACHE_PATH (Optional local SQLite cache path. Defaults to ~/.whoop-mcp/cache.sqlite.), WHOOP_NO_CACHE (Set to true to bypass the in-memory HTTP response cache (60s TTL for GET only). POST/PUT/DELETE and 4xx/5xx responses are never cached regardless.).
The author declared them in the registry entry; get the values from the project itself.
Privacy-first, unofficial Oura MCP server for AI health, sleep, activity and heart-rate agents.
Privacy-first, unofficial Fitbit MCP server for AI health, sleep, activity and heart-rate agents.
Privacy-first, unofficial Withings MCP server for AI health, sleep, activity and heart-rate agents.
Privacy-first unofficial Garmin Connect MCP for AI health, sleep, activity & recovery agents.
Privacy-first unofficial Polar AccessLink v4 MCP server for AI health, sleep and training agents.
Privacy-first unofficial Google Health API v4 MCP server for health, sleep, activity, HR agents
Privacy-first Google Health API MCP server for health, sleep, activity and HR agents
Local-first, read-only WHOOP MCP server for recovery, sleep, strain, workouts, and body signals
Answers built from our own checks of this server.