Cycling Coach AI in Your Favorite AI
Connect Claude, Claude Desktop, Claude Code, and other AI assistants directly to your Cycling Coach AI account. Query your training plan, log workouts, manage your nutrition, and more, all from the chat.
Go to Cycling Coach AIhttps://app.usecoachai.com/api/mcp Requirements
Any active plan. Read access is available on all plans.
Claude.ai (web), Claude Desktop, Claude Code, or any MCP client with Streamable HTTP support.
Step-by-step setup
Claude.ai (web)
- Go to claude.ai → Settings → Integrations
- Click "Add integration"
- Paste the server URL:
https://app.usecoachai.com/api/mcp - Claude will redirect you to Cycling Coach AI to authorize access
- Sign in with your account and click "Authorize"
- Done! You can now talk to Claude about your training
Claude Desktop / Claude Code
Add this to your Claude configuration file:
{
"mcpServers": {
"cycling-coach-ai": {
"type": "http",
"url": "https://app.usecoachai.com/api/mcp"
}
}
} Claude will automatically prompt for authorization the first time you use a tool.
Other compatible MCP clients
The server implements the standard MCP protocol with dynamic OAuth (RFC 7591). Any client that supports Streamable HTTP and Dynamic Client Registration can connect using the URL:
https://app.usecoachai.com/api/mcp Available tools
Data queries
These tools do not modify any data in your account.
| Tool | Description |
|---|---|
get_user_plan | Gets the training plan for a specific date (main, weekly, or daily) |
get_plan_week | Full details of a plan week: sessions, focus, power/HR targets |
get_today_training | Summary of all training for the day: plan sessions, quick rides, and tests |
get_plan_progress | Active plan progress: completed sessions, streak, total distance, % done |
get_daily_workouts | Recent quick rides outside the plan |
get_tests | Performance tests (FTP, ramp test, sprint, VO2Max, etc.) and their results |
get_last_activities | Last 7 logged activities |
get_fitness_metrics | Fitness metrics: FTP, VO2Max, zones |
get_training_insights | Aggregated summary of the last N days: TSS, distance, hours, FTP/VO2Max |
get_user_information | Athlete personal data (age, weight, height, metrics) |
get_user_data | Name, email, and account data |
get_user_availability | Configured weekly availability (hours per day) |
get_payment_subscription | Subscription status |
get_nutrition_plan | Athlete's personalized nutrition plan |
get_all_races | All races and events for the athlete |
get_race_analysis | Full race analysis: performance, zones, strengths/weaknesses |
get_wellness_data | Wellness data: sleep and HRV for the last 7 days |
platform_information | Information about platform features and pricing |
Actions and modifications
These tools modify data and require explicit user confirmation before executing.
| Tool | Description |
|---|---|
complete_training_with_activity | Marks a session as completed, linking it to a Strava activity |
complete_strength_training | Marks a strength session as completed |
skip_training_session | Skips a plan session |
change_training_session_date | Moves a session to another day of the week |
send_training_session_to_garmin | Sends a session to your Garmin device |
send_training_session_to_wahoo | Sends a session to your Wahoo device |
send_week_to_garmin | Sends the entire week to Garmin |
send_week_to_wahoo | Sends the entire week to Wahoo |
edit_user_information | Updates personal data (age, weight, height, FTP, HR, etc.) |
edit_user_data | Updates first name, last name, or email |
edit_user_availability | Edits the full weekly availability |
edit_user_availability_day | Edits availability for a specific day |
save_new_preference | Saves a training preference (style, limitations, goals) |
update_weight | Logs a new body weight with history |
update_language | Changes the app language |
log_meal | Logs or updates a meal for the day |
cancel_subscription | Cancels the subscription (requires explicit confirmation) |
AI-powered creation
Create or regenerate content using AI. Requires an active subscription.
| Tool | Description |
|---|---|
create_new_plan | Creates a new personalized training plan |
regenerate_training_week | Regenerates a full plan week |
regenerate_training_session | Regenerates a specific session |
create_quick_ride | Creates an extra workout outside the plan (endurance, intervals, recovery…) |
create_test | Creates a performance test (FTP, ramp, sprint, VO2Max, etc.) |
generate_nutrition_plan | Generates a personalized nutrition plan based on training |
Permissions (scopes)
When authorizing the app, you can choose the level of access you need.
| Scope | Access |
|---|---|
mcp:read | Read-only: query plan, progress, activities |
mcp:write | Read + write: log completions, edit data, send to Garmin/Wahoo |
mcp:generate | All of the above + AI generation: create/regenerate plans and workouts |
mcp | Full access |
Frequently asked questions
Do I need a paid account?
No. MCP read access (mcp:read) is available on all plans. Write and AI generation tools require an active subscription.
Is my data safe?
Yes. Access is authorized via standard OAuth 2.0 with PKCE. Your password is never shared. You can revoke access at any time from app.usecoachai.com → Settings → MCP Integrations.
Which MCP clients does it work with?
Any client that supports MCP over Streamable HTTP with dynamic OAuth: Claude.ai, Claude Desktop, Claude Code, and other MCP clients in the ecosystem.
What if Claude makes a mistake?
Write and generation tools are designed to request explicit confirmation before executing actions. Claude will show a proposal and wait for your approval before modifying any data.
How do I revoke access?
Go to app.usecoachai.com → Settings → Integrations → MCP Tokens and delete the corresponding token.
Technical details
Transport: Streamable HTTP. Auth: OAuth 2.0 with PKCE (S256) and Dynamic Client Registration (RFC 7591). No client secret required.
Get started now
Connect your favorite AI assistant to your training in under a minute.
Go to Cycling Coach AIHaving trouble with the integration? Reach us at support@usecoachai.com