Totem — talk to your wearables with AI. Today: full Whoop access (48 tools).
Connect Runs on your machine
claude mcp add totem -e WHOOP_IOS_BEARER_TOKEN=<WHOOP_IOS_BEARER_TOKEN> -e WHOOP_COGNITO_REFRESH_TOKEN=<WHOOP_COGNITO_REFRESH_TOKEN> -e WHOOP_EMAIL=<WHOOP_EMAIL> -e WHOOP_USER_ID=<WHOOP_USER_ID> -e WHOOP_TIMEZONE=<WHOOP_TIMEZONE> -- npx -y @thebriangao/[email protected]
{
"mcpServers": {
"totem": {
"command": "npx",
"args": [
"-y",
"@thebriangao/[email protected]"
],
"env": {
"WHOOP_IOS_BEARER_TOKEN": "<WHOOP_IOS_BEARER_TOKEN>",
"WHOOP_COGNITO_REFRESH_TOKEN": "<WHOOP_COGNITO_REFRESH_TOKEN>",
"WHOOP_EMAIL": "<WHOOP_EMAIL>",
"WHOOP_USER_ID": "<WHOOP_USER_ID>",
"WHOOP_TIMEZONE": "<WHOOP_TIMEZONE>"
}
}
}
}
{
"mcpServers": {
"totem": {
"command": "npx",
"args": [
"-y",
"@thebriangao/[email protected]"
],
"env": {
"WHOOP_IOS_BEARER_TOKEN": "<WHOOP_IOS_BEARER_TOKEN>",
"WHOOP_COGNITO_REFRESH_TOKEN": "<WHOOP_COGNITO_REFRESH_TOKEN>",
"WHOOP_EMAIL": "<WHOOP_EMAIL>",
"WHOOP_USER_ID": "<WHOOP_USER_ID>",
"WHOOP_TIMEZONE": "<WHOOP_TIMEZONE>"
}
}
}
}
{
"servers": {
"totem": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@thebriangao/[email protected]"
],
"env": {
"WHOOP_IOS_BEARER_TOKEN": "<WHOOP_IOS_BEARER_TOKEN>",
"WHOOP_COGNITO_REFRESH_TOKEN": "<WHOOP_COGNITO_REFRESH_TOKEN>",
"WHOOP_EMAIL": "<WHOOP_EMAIL>",
"WHOOP_USER_ID": "<WHOOP_USER_ID>",
"WHOOP_TIMEZONE": "<WHOOP_TIMEZONE>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
WHOOP_IOS_BEARER_TOKENRequired, secret | Whoop Cognito access token. Obtain via `totem 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. |
WHOOP_COGNITO_REFRESH_TOKENRequired, secret | Whoop Cognito refresh token (~30 day lifetime). Obtained alongside the bearer token from `totem auth`. When this expires, run `totem auth` to get a fresh pair. |
WHOOP_EMAILRequired | Your Whoop account email. Used only by `totem auth` — the running server reads tokens, not credentials. |
WHOOP_USER_IDOptional | Your numeric Whoop user ID. Optional — used by whoop_profile and whoop_leaderboard. Avoids one redundant bootstrap call per session if set. |
WHOOP_TIMEZONEOptional | 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). |
Details
| Package | @thebriangao/[email protected] (NPM, stdio) |
| First published | 12 Jun 2026 |
| Last updated | 12 Jun 2026 |
| Registry name | io.github.thebriangao/totem |
More other servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
