io.github.shashankswe2020-ux/whoop
MCP server for WHOOP health data — recovery, sleep, workouts, cycles, and trends.
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
whoop-ai-mcpclaude mcp add whoop -e 'WHOOP_CLIENT_ID=<your whoop_client_id>' -e 'WHOOP_CLIENT_SECRET=<your whoop_client_secret>' -- npx -y whoop-ai-mcp@0.5.2
{
"mcpServers": {
"whoop": {
"command": "npx",
"args": [
"-y",
"whoop-ai-mcp@0.5.2"
],
"env": {
"WHOOP_CLIENT_ID": "<your whoop_client_id>",
"WHOOP_CLIENT_SECRET": "<your whoop_client_secret>"
}
}
}
}
متغيرات البيئة
WHOOP_CLIENT_IDإلزامي سري Your WHOOP Developer App Client ID from developer.whoop.comWHOOP_CLIENT_SECRETإلزامي سري Your WHOOP Developer App Client Secret from developer.whoop.com
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
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.
npx -y whoop-ai-mcp@latest setup --client=claude-desktop
Quickstart | Watch the walkthrough | Website | Tool reference
Claude Desktop builds the review; whoop-ai-mcp supplies the data. Your results and layout will differ.
Ask your WHOOP data anything
| Ask | You get |
|---|---|
| "How am I doing today?" | Recovery, primary sleep, strain and your latest workout, with gaps flagged where data is missing |
| "Is my HRV unusual for me?" | Your personal baseline: distribution, percentiles and how many days it's based on |
| "How did my sleep change this month?" | Trends, period-to-period comparisons, sleep debt and consistency |
| "Give me my weekly health review." | Recovery, sleep and training in one summary |
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.
Assistant Command Claude Desktop npx -y whoop-ai-mcp@latest setup --client=claude-desktopClaude Code npx -y whoop-ai-mcp@latest setup --client=claude-codeCodex npx -y whoop-ai-mcp@latest setup --client=codexGitHub Copilot npx -y whoop-ai-mcp@latest setup --client=copilotGemini CLI npx -y whoop-ai-mcp@latest setup --client=gemini-cliCursor npx -y whoop-ai-mcp@latest setup --client=cursorVS Code npx -y whoop-ai-mcp@latest setup --client=vscodeOpenClaw npx -y whoop-ai-mcp@latest setup --client=openclawPerplexity (macOS app + helper) npx -y whoop-ai-mcp@latest setup --client=perplexityFor 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:
cargo install whoop-mcp
whoop-mcp setup --client=claude-desktop
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
- 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.
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
| Group | Tools |
|---|---|
| Today and baselines | get_today, get_baselines, get_sleep_debt |
| Trends and reviews | get_weekly_summary, get_trend, compare_periods, get_calendar |
| Records | get_recovery_collection, get_sleep_collection, get_workout_collection, get_cycle_collection, get_sleep_by_id, get_workout_by_id, get_cycle_by_id |
| Profile | get_profile, get_body_measurement |
| HYROX and triathlon | get_hyrox_session_report, get_hyrox_performance, get_triathlon_performance, get_race_readiness, audit_performance_data, verify_claim |
| Local only: race log, corrections, dashboard | log_race_result, annotate_workout, open_performance_dashboard |
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
| Guide | What's in it |
|---|---|
| Installation | Assistants, manual configuration, environment variables and WHOOP authorization |
| Tool reference | Every tool and its parameters, date expressions, resources, prompts and caching |
| Privacy | Structured results, aggregate mode and what your assistant provider receives |
| Telemetry | Consent, opting out, what's collected and how long it's kept |
| Troubleshooting | Local diagnostics, common errors and MCP Inspector |
| Deployment | Docker, cloud hosting and remote connector OAuth |
| Development | Tests, project structure and release workflow |
| Background | Ecosystem research and the video walkthrough |
What changed recently? See the changelog or the latest release.
Feedback and contributing
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
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.
الأسئلة الشائعة
ما هو io.github.shashankswe2020-ux/whoop؟
MCP server for WHOOP health data — recovery, sleep, workouts, cycles, and trends.
كيف أثبّت io.github.shashankswe2020-ux/whoop؟
يعمل على جهازك. في Claude Code: claude mcp add whoop -e 'WHOOP_CLIENT_ID=<your whoop_client_id>' -e 'WHOOP_CLIENT_SECRET=<your whoop_client_secret>' -- npx -y whoop-ai-mcp@0.5.2. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.shashankswe2020-ux/whoop إلى مفتاح API؟
نعم. يتطلب WHOOP_CLIENT_ID, WHOOP_CLIENT_SECRET، وتضبطها في إعداداته.
هل io.github.shashankswe2020-ux/whoop مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون io.github.shashankswe2020-ux/whoop؟
ينشره shashankswe2020-ux. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.