- Home
- MCP servers
- Domestique
Domestique
- typescript
0
GitHub Stars
typescript
Language
6 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Domestique is a TypeScript MCP server that unifies access to fitness data from Intervals.icu, Whoop, and TrainerRoad, letting you query workouts, view recovery metrics, planning calendars, and trends from a single endpoint.
How to use
You connect your MCP client to the Domestique server to access multiple data sources in one place. Use the available tools to retrieve today’s data, historical trends, and planning information. You can also configure Claude to ask natural-language questions and receive consolidated responses about workouts, recovery, planning, and trends.
How to install
Prerequisites you need before running the server include Node.js 20 or newer, access to Intervals.icu with an API key, a Whoop OAuth setup, and a TrainerRoad private calendar feed.
-
Prepare environment configuration by copying the example and filling in credentials.
-
Start the Docker environment to run the server and dependencies.
-
Complete the Whoop OAuth flow to obtain and store tokens in Redis for token refresh.
Configuration and operation notes
Key configuration and runtime steps you will use include setting environment variables for MCP authentication and data source credentials, starting the server, and connecting via an MCP client or Claude.
To connect with Claude, you can use the MCP URL for the deployment and pass your secret token in the Authorization header, or include it as a query parameter if your setup requires that UI method.
Claude integration example
Use the HTTP endpoint provided by your deployment to connect Claude. The server URL exposes the MCP API under /mcp, and you can supply your secret token in the Authorization header like this: Authorization: Bearer YOUR_SECRET_TOKEN. If you prefer a query parameter approach for Claude's UI, append token=YOUR_SECRET_TOKEN to the MCP URL.
Troubleshooting and tips
If tokens or API keys are not accepted, verify that Redis is running and that all required environment variables are set. Check the logs for OAuth token refresh events and ensure your Intervals.icu and TrainerRoad feeds are reachable. Use the MCP Inspector tool to verify tool availability and parameter handling against your local server.
Available tools
get_todays_recovery
Today's Whoop recovery metrics including sleep and HRV data.
get_todays_strain
Today's Whoop strain metrics including strain score, heart rate, and calories.
get_todays_completed_workouts
Today's completed workouts from Intervals.icu.
get_todays_planned_workouts
Today's planned workouts from TrainerRoad and Intervals.icu calendars.
get_workout_history
Historical workouts with matched Whoop strain data, supporting ISO dates or natural language ranges; includes expanded metrics like speed, cadence, efficiency, and per-activity fitness snapshots.
get_strain_history
Whoop strain scores and activities for a date range.
get_recovery_trends
HRV, sleep, and recovery patterns over time with summary statistics.
get_training_load_trends
Training load trends including CTL, ATL, TSB, ramp rate, and ACWR for injury risk.
get_upcoming_workouts
Planned workouts for future date ranges from both TrainerRoad and Intervals.icu calendars.
get_planned_workout_details
Detailed information about a specific planned workout by ID or date.