
Whoop
io.github.shashankswe2020-uxPublished by GitHub account shashankswe2020-uxv0.5.2Updated Oct 24, 2026
MCP server for WHOOP health data — recovery, sleep, workouts, cycles, and trends.
Overview
Read-only WHOOP MCP server that lets an assistant query your recovery, sleep, workouts, cycles and trends, plus HYROX and triathlon race analysis.
- What you can do
- Ask about today's recovery, sleep, strain and latest workout, with gaps flagged
- Query personal baselines, sleep debt, trends, period comparisons and weekly summaries
- Read recovery, sleep, workout and cycle records, plus profile and body measurements
- Analyze HYROX and triathlon sessions, race readiness, and audit or verify reported numbers
- Log race results and annotate workouts locally, and open a local performance dashboard
- When to use it
- Useful if you have a WHOOP membership and want an assistant to summarize your health and training data, compare periods against your own baseline, or review HYROX and triathlon performance without exporting data yourself.
- Requirements
- Runs locally over stdio via the npm package whoop-ai-mcp; needs Node.js 20 or later (or the Rust binary with Rust 1.88+). Requires an active WHOOP membership and a WHOOP Developer App with redirect URL plus the client ID and secret set as WHOOP_CLIENT_ID and WHOOP_CLIENT_SECRET. First start opens a browser for WHOOP authorization. Desktop assistants only.
Installation
In SourceWeft
- Open Whoop in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Latest npm version] [Monthly npm downloads] [Total npm downloads] [GitHub stars] [MIT license] [Buy me a coffee to support whoop-ai-mcp]
whoop-ai-mcp is a read-only WHOOP MCP server for Claude, Gemini CLI, Cursor, VS Code, OpenClaw, Perplexity on macOS, and other MCP clients. Ask about your recovery, compare weeks of sleep, or check today against your own baseline, without exporting the data yourself. ChatGPT, Claude web/mobile, and the Grok xAI API require a remote deployment; see the client setup guide.
Quickstart | Watch the walkthrough | Website | Tool reference
[Report an issue] [Request a feature]
[WHOOP MCP in Claude Desktop: a weekly health review with recovery, HRV, sleep and workout summaries]
Claude Desktop builds the review; whoop-ai-mcp supplies the data. Your results and layout will differ.
Ask your WHOOP data anything
Statistics describe your recorded history. They aren't medical diagnoses or predictions.
Quickstart
You need: Node.js 20 or later, an active WHOOP membership, and a WHOOP Developer App with the redirect URL http://localhost:3000/callback.
-
Set up. Run the command for your assistant and enter your developer app's client ID and secret when asked.
For Claude Code, Codex and VS Code/Copilot, run the registration command that setup prints. For Gemini CLI, Cursor and OpenClaw, merge the printed config; for Perplexity, paste the printed launch command into its local connector. Nothing is installed globally, and optional usage telemetry defaults to No.
These targets, including the
claudealias for Desktop, require 1.1.0 or later. For a source build, usenode dist/index.js setup --client=<target>. -
Authorize. Fully quit and reopen your assistant. The first time the server starts, WHOOP opens in your browser so you can approve access.
-
Ask. Try "Summarize my sleep and recovery this week."
Need manual configuration, environment variables or a remote deployment? See the full setup guide.
Claude web/mobile and ChatGPT quick setup
Run setup --client=claude-web or setup --client=chatgpt with either implementation
to print remote deployment and connector instructions. These are guidance-only
targets, not one-click hosting: provide a public HTTPS /mcp endpoint, complete
WHOOP authorization on the host, and configure compatible connector OAuth.
Availability depends on the client account/workspace. setup --client=grok prints
an xAI API MCP tool example; consumer Grok chat integration is not verified.
No remote credentials are collected and no client connection is tested.
Prefer a native binary?
The Rust implementation offers the same client targets and limitations without a Node.js runtime for the server. It needs Rust 1.88 or later:
The additional Rust targets require 0.2.0 or later. For a source build,
use cargo run -- setup --client=<target> in the Rust checkout.
How it works
[Your WHOOP account grants read-only access to whoop-ai-mcp, which runs on your computer with 16 read-only tools and no hosted relay. It sends tool results to your AI assistant: Claude Desktop, Claude Code, Codex or GitHub Copilot.]- Read-only. The server has no tools that create, change or delete anything in your WHOOP account. Race results and workout corrections are saved only to local files, with an audit log.
- Local by default. The server runs on your machine. No hosted relay is involved.
- Your assistant sees the results. Health data reaches the assistant provider you use, the same as anything else you share in that chat.
- Aggregate mode limits the server to five summary tools and hides per-record data. It reduces what's shared, but it isn't anonymization.
- Telemetry is off unless you opt in. It never includes health data or chat text.
Details: data handling and telemetry controls.
What's included
In standard mode, the server provides 16 read-only tools, 4 resources and 5 prompt templates, plus 9 HYROX and triathlon tools. Support for resources, prompts and remote connections depends on your assistant.
HYROX and triathlon tracking
Ask "How did yesterday's HYROX sim go?" or "Am I ready for my triathlon in two weeks?" The race tools:
- Rebuild a HYROX session from WHOOP's back-to-back workouts: segment timeline, transition time, time in zone and rule-based insights.
- Track weekly running and HYROX load, swim/bike/run balance and bricks, plus logged races with station and leg splits and PRs.
- Give a readiness band from recovery, training form, specificity, sleep debt and taper. Every component shows its evidence; there's no opaque score.
- Let you audit the numbers: suspect workouts are flagged, you can relabel or exclude workouts, every change is logged, and
verify_claimrecomputes a number your assistant told you. - Open a chart-first local dashboard (
open_performance_dashboard) on127.0.0.1with Today, Session, Training, HYROX, Triathlon, Readiness and Audit views. Dark/light themes, local fonts, and review-before-save controls are included.
Screenshots use synthetic sample data.
New in 1.0.2: the chart-first dashboard
Ask your assistant to "Open my performance dashboard" to launch it locally. The design from the latest main-branch redesign is now part of the working dashboard, not just a prototype. Dark is the default, with a Light/Dark toggle that preserves unsaved forms. Session remains the default view.
- Today: recovery ring and five weeks of recovery, HRV, resting HR and sleep stages on one timeline with a shared crosshair. Missing days remain gaps; historical bands describe your visible data, not medical norms.
- Training: WHOOP zone minutes by UTC week, including empty weeks, workout strain/duration bubbles and fitness/fatigue/form charts. Local corrections apply.
- Session and Readiness: recorded-segment and five-component rings, summary HR charts and evidence. No invented continuous HR traces or HYROX station splits.
- Review before saving. Inspect workout corrections and race results, then edit, cancel or confirm. Failed saves preserve your entries.
- Keep your context. Filters survive switching views; last-7-day and last-28-day presets use completed UTC days.
- Refresh honestly. Refresh and retry controls report when a view loaded, not when WHOOP synced. Reads may use cached data.
[Dark chart-first Today dashboard: recovery ring and shared-timeline recovery, HRV, resting heart rate and sleep-stage charts, with gaps and historical bands. Synthetic sample data.]
Today view with synthetic sample data. WHOOP recovery is not a race-readiness verdict; local workout corrections apply to race views, not this overview.
The race log, workout corrections and dashboard are available only when the server runs locally (stdio). Details: race performance tools and local data.
See all tools and prompts
Prompt templates: weekly_health_review, sleep_analysis, recovery_trend, workout_recap, health_check
Parameters, date expressions, resources and caching are in the tool reference.
Documentation
What changed recently? See the changelog or the latest release.
Feedback and contributing
[Report a bug] [Request a feature]
Something not working, or a question you wish you could ask? Use the buttons above. Each opens a short form that asks for the details needed to help. Issues are public, so never include credentials or health records; security problems go through the security policy instead.
Want to contribute code? Read the contributing guide. Everyone taking part follows the Code of Conduct.
If whoop-ai-mcp is useful to you, a GitHub star helps other people find it, and you can buy me a coffee to support development.
Project growth
[WHOOP MCP GitHub star history chart]
[WHOOP MCP cumulative npm downloads since April 11, 2026]
Downloads include automated installs and may not represent unique users.
License
MIT. This is an unofficial project and isn't affiliated with WHOOP. A WHOOP membership and API access are separate from this package.
Source: README.md at commit 00210f0
Tools
0Version history
1- v0.5.2LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts