Local-first cycle coach MCP for phase-aware nutrition and training context.
⚡ One-command install — pick your runtime:
- Delx Wellness for Hermes:
npx -y delx-wellness-hermes setup- Delx Wellness for OpenClaw:
npx -y delx-wellness-openclaw setup
Default is stdio. Optional Streamable HTTP — no session id, JSON responses, loopback only:
npx -y wellness-cycle-coach --http
# GET http://127.0.0.1:3000/health
# POST http://127.0.0.1:3000/mcp (sessionless)
Env: WELLNESS_CYCLE_COACH_HOST, WELLNESS_CYCLE_COACH_PORT, WELLNESS_CYCLE_COACH_TRANSPORT=http.
Pass in period start dates (from any source — Apple Health Cycle, Garmin women's health, Fitbit female health, or direct user input) and get back the user's current phase plus phase-aware recommendations for nutrition, training, and hydration. Stateless — the MCP itself never persists cycle data. Supports PCOS-aware mode via the cycle_irregular flag (v0.3.3) — accepts cycles 21-90 days, caps confidence at 'low', and returns a luteal_extended placeholder when standard 14-day-luteal math no longer applies.
npx -y wellness-cycle-coach doctor
# Or use the MCP directly via your client:
# {
# "mcpServers": {
# "wellness-cycle-coach": {
# "command": "npx",
# "args": ["-y", "wellness-cycle-coach"]
# }
# }
# }
Then in your agent:
{
"name": "cycle_full_report",
"arguments": {
"history": [
{ "start_date": "2026-04-01" },
{ "start_date": "2026-04-29" }
]
}
}
Returns current phase + nutrition emphasize/moderate/avoid + training style/intensity + hydration target + next-period estimate.
| Tool | Purpose |
|---|---|
cycle_agent_manifest | Runtime contract |
cycle_capabilities | Phases, upstream connectors, metrics |
cycle_connection_status | Health + stateless reminder |
cycle_privacy_audit | What's logged (nothing) vs sent out (nothing) |
cycle_data_inventory | Phase taxonomy + metric catalog |
cycle_estimate_phase | Current phase + cycle day + confidence |
cycle_predict_next_period | Average cycle length + next-period date |
cycle_phase_guidance | Recommendations for any specific phase |
cycle_recommend_nutrition | Phase-aware nutrition for current phase |
cycle_recommend_training | Phase-aware training for current phase |
cycle_full_report | Single-call combined report |
cycle_irregular_check | PCOS / irregular-cycle screening from history |
cycle_quickstart | Minimal getting-started walkthrough |
cycle_profile_get | Read the shared Delx Wellness profile (read-only) |
cycle_profile_update | Persist opt-in profile prefs (requires explicit user intent) |
cycle_onboarding | 11-question onboarding flow for the shared profile |
cycle_demo | Sample request/response for quick exploration |
| Phase | When | Energy | Nutrition emphasis | Training |
|---|---|---|---|---|
| menstrual | days 1 → period end (~5) | Lower | Iron + magnesium + omega-3 | Restorative (yoga, walking, mobility) |
| follicular | post-period → ovulation - 2 | Rising / peak | Complex carbs + lean protein + fermented foods | Build (strength, sprints, new skills) |
| ovulatory | ovulation ± 1 day | Peak | Antioxidants + zinc | Peak (PRs, plyometrics) |
| luteal | ovulation + 2 → next period | Falling | B vitamins + magnesium + complex carbs | Endurance + technique |
Menstrual cycle data is medical-record sensitive. The strongest privacy guarantee is to never store it. Other apps (Flo, Clue) live by hoarding cycle data on their servers; this MCP refuses to participate. The agent passes data in, the coach returns guidance, the data evaporates.
Apple Health Cycle → period dates ┐
Garmin women's health → cycle context ├─→ wellness-cycle-coach → phase + guidance
Fitbit female health → period dates ┘ │
│
↓
wellness-nourish coach
(phase-aware meal planning)
│
whoop-mcp / garminmcp / ouramcp
(recovery-aware late-luteal load adjustments)
cycle_profile_* tools can persist non-secret wellness preferences (name, goals, devices, training/nutrition context) to ~/.delx-wellness/profile.json, but only when the user explicitly asks (cycle_profile_update requires explicit_user_intent: true). Secrets (tokens, API keys, biomarkers) are rejected at write time.Run wellness-cycle-coach doctor to inspect.
cycle_irregular: true (v0.3.3), but this is NOT a substitute for clinical care — see clinician for fertility, contraception, or symptom-management decisions.MIT — see LICENSE.
wellness-cycle-coach is independent research-software. Not affiliated with Clue, Flo, Stardust, or any other cycle-tracking app. Not medical advice.
Same package, two doors. MCP registers tools on stdio/HTTP. The skill can drive the same tools through the CLI when the client has no MCP:
npx -y wellness-cycle-coach call cycle_connection_status --json '{}'
Copy skill/SKILL.md into your agent skills dir.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y wellness-cycle-coachMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-davidmosiah-wellness-cycle-coach": {
"command": "npx",
"args": [
"-y",
"wellness-cycle-coach"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referencewellness-cycle-coachnpmio.github.davidmosiah/wellness-cycle-coach works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.