Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
WHOOP_CACHENoCache backend. Default: sqlite if enabled.
WHOOP_SCOPESNoOAuth scopes. Default: read:recovery read:cycles read:workout read:sleep read:profile read:body_measurement
WHOOP_CLIENT_IDNoYour WHOOP API client ID from the developer app.
WHOOP_CACHE_PATHNoPath to cache database file. Default: ~/.whoop-mcp/cache.sqlite
WHOOP_TOKEN_PATHNoPath to OAuth token file. Default: ~/.whoop-mcp/tokens.json
WHOOP_PRIVACY_MODENoPrivacy mode: summary, structured, or raw. Default: structured
WHOOP_REDIRECT_URINoOAuth redirect URI. Default: http://127.0.0.1:3000/callback
WHOOP_CLIENT_SECRETNoYour WHOOP API client secret from the developer app.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}
completions
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
whoop_data_inventoryA

Inventory supported WHOOP data domains, auth scope requirements, privacy boundary and recommended first calls. Does not call WHOOP APIs or expose user data.

whoop_capabilitiesA

Explain supported WHOOP data, unavailable raw sensor streams, privacy modes, recommended agent workflow, and project links. Does not read WHOOP or expose secrets.

whoop_agent_manifestA

Machine-readable install, runtime and client guidance for AI agents operating the WHOOP MCP. Does not read WHOOP or expose secrets.

whoop_quickstartA

Personalized 3-step setup walkthrough for the human user. Adapts to current state (env vars set? token present? what's next?). Call this first when the user asks 'how do I connect WHOOP?'

whoop_demoA

Returns realistic example payloads of whoop_daily_summary, whoop_wellness_context, and whoop_list_recoveries so agents see the contract before calling real WHOOP APIs. Shapes are verified against the real tools by a build gate, so a parser written against this demo works on live data.

whoop_profile_getA

Read the shared Delx wellness profile (~/.delx-wellness/profile.json). Returns the user's preferred name, body basics, goals, devices, training context, nutrition context, agent preferences, and missing critical fields. Cross-connector — the same profile is also available from other Delx Wellness MCPs (Oura, Garmin, Nourish, Fitbit, etc). Read-only.

whoop_profile_updateA

Persist a partial patch to the shared Delx wellness profile (~/.delx-wellness/profile.json). REQUIRES explicit_user_intent=true. Top-level fields stored: profile (preferred_name, language, timezone, units, age_or_birth_year, height, weight, sex_or_gender_context), goals, devices, training, nutrition, preferences, safety, notes. NEVER stores OAuth tokens, API keys, refresh tokens, cookies, or any secret-shaped field — writes will be rejected at validation time. Cross-connector — the same profile is read by other Delx Wellness MCPs.

whoop_onboardingA

Return the 11-question Delx wellness onboarding flow (in English or pt-BR) plus the current shared profile state and missing critical fields. Read-only. The agent should ask these questions one-by-one, then call whoop_profile_update with explicit_user_intent=true to save. The same profile is reused by every Delx Wellness connector (Oura, Garmin, Nourish, etc.) — agents can call the equivalent {connector}_onboarding tools to cover their respective domains, or rely on this one since all connectors share the same questions.

whoop_get_auth_urlA

Generate a WHOOP OAuth authorization URL. This does not read or modify WHOOP data. Use this first when no local token exists.

whoop_exchange_codeA

Exchange a WHOOP OAuth authorization code for local tokens. Tokens are stored locally with 0600 permissions and are never returned by this tool. Gated: requires explicit user intent — agents must not call this autonomously.

whoop_get_profileB

Get the authenticated user's basic WHOOP profile. Requires read:profile scope.

whoop_get_body_measurementsA

Get the authenticated user's WHOOP body measurements (height, weight, max heart rate). Requires read:body_measurement scope. Not medical advice.

whoop_list_cyclesA

List WHOOP physiological cycles. Supports start/end filters and WHOOP pagination. Requires read:cycles scope.

whoop_list_recoveriesA

List WHOOP recoveries sorted by related sleep start time descending. Returns recovery score, HRV, RHR, SpO2 and skin temperature when scored. Requires read:recovery scope. Not medical advice.

whoop_list_sleepsA

List WHOOP sleep activities. Returns sleep stages, performance, consistency and efficiency when scored. Supports start/end filters and WHOOP pagination. Requires read:sleep scope. Not medical advice.

whoop_list_workoutsA

List WHOOP workouts. Supports start/end filters and WHOOP pagination. Requires read:workout scope.

whoop_connection_statusA

Check whether local WHOOP env vars, token file, Node version, privacy mode and cache are ready. Does not call WHOOP or expose secrets.

whoop_cache_statusA

Show optional local SQLite cache status. Enable with WHOOP_CACHE=sqlite or WHOOP_CACHE=true.

whoop_privacy_auditA

Return the local privacy, cache, token-path, env-presence and redaction posture without revealing secret values.

whoop_revoke_accessA

Revoke the current WHOOP OAuth access grant and delete the local token file. Use only when the user explicitly wants to disconnect WHOOP. Gated: requires explicit user intent — agents must not call this autonomously.

whoop_daily_summaryA

Build a privacy-conscious daily performance summary from WHOOP recovery, sleep, cycle and workout data.

This workflow tool fetches recent WHOOP v2 records, computes a defensive baseline, and returns readiness, sleep, load, diagnostic signals and concrete action candidates. It does not provide medical advice and does not store data locally.

whoop_weekly_summaryA

Build a weekly WHOOP operating review with recovery, sleep, strain, workouts, bottlenecks, action candidates and next-week success metrics.

This workflow tool compares a recent window against a prior window when available. It is intended for coaching and agent workflows, not medical diagnosis.

whoop_recovery_trendA

Aggregate WHOOP recovery over the last N days (default 30) into a per-metric trend for recovery score, HRV (hrv_rmssd_milli) and resting heart rate.

Each metric returns { avg, min, max, slope, direction, n_valid } where slope is a least-squares fit over the chronologically ordered scored records (oldest to newest) and direction is rising, falling, stable or insufficient_data. Use this to answer "is my recovery trending up or down?" without paging the raw collection yourself. Read-only; fetches recent WHOOP v2 records, computes statistics, stores nothing. Not medical advice.

whoop_sleep_trendA

Aggregate WHOOP sleep over the last N days (default 30) into a per-metric trend for sleep performance percentage, sleep duration (hours) and sleep efficiency percentage.

Each metric returns { avg, min, max, slope, direction, n_valid } where slope is a least-squares fit over the chronologically ordered scored sleeps (oldest to newest) and direction is rising, falling, stable or insufficient_data. Use this to answer "is my sleep improving or degrading?" without paging the raw collection yourself. Read-only; fetches recent WHOOP v2 records, computes statistics, stores nothing. Not medical advice.

whoop_wellness_contextA

Normalize WHOOP recovery, sleep, strain and recent workout load into the shared wellness_context shape for exercise recommendation engines and Telegram agents.

whoop_get_cycleA

Get one WHOOP cycle by numeric cycle id. Requires read:cycles scope.

whoop_get_sleepA

Get one WHOOP sleep activity by UUID. Requires read:sleep scope. Not medical advice.

whoop_get_workoutA

Get one WHOOP workout by UUID. Requires read:workout scope.

whoop_get_cycle_sleepA

Get the sleep associated with a WHOOP cycle. Requires read:sleep scope. Not medical advice.

whoop_get_cycle_recoveryA

Get the recovery associated with a WHOOP cycle. Requires read:recovery scope. Not medical advice.

Prompts

Interactive templates invoked by user choice

NameDescription
whoop_daily_performance_coachUse WHOOP data to produce a practical, non-medical daily plan for training, recovery and focus.
whoop_weekly_training_reviewUse WHOOP weekly summary data to create a practical next-week training, sleep and focus plan.
whoop_sleep_recovery_investigatorInvestigate sleep consistency, sleep debt and recovery signals from WHOOP summaries.

Resources

Contextual data attached and managed by the client

NameDescription
whoop_data_inventoryStatic inventory of supported WHOOP data domains, privacy modes and recommended first calls.
whoop_agent_manifestMachine-readable install and operating instructions for AI agents.
whoop_capabilities_resourceStatic capabilities, data boundary, privacy modes and recommended agent workflow.
whoop_latest_recoveryLatest recovery record using the configured privacy mode.
whoop_latest_sleepLatest sleep record using the configured privacy mode.
whoop_latest_cycleLatest physiological cycle using the configured privacy mode.
whoop_daily_summary_resourceDaily recovery, sleep, load and action-candidate summary.
whoop_weekly_summary_resourceWeekly scorecard, bottlenecks and next-week success metrics.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidmosiah/whoop-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server