TrainingPeaks MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| tp_auth_statusA | Check auth status. Use only when other tools return auth errors. |
| tp_get_profileA | Get athlete profile. Rarely needed - other tools work without it. |
| tp_refresh_authA | Refresh auth by extracting cookie from user's browser. Use when other tools return auth errors. |
| tp_get_workoutsA | List workouts in date range. Query only days needed. Max 90 days. |
| tp_get_workoutA | Get workout details by ID. Use after tp_get_workouts. |
| tp_create_workoutA | Create a planned workout with optional simplified interval structure or native TrainingPeaks structured_workout payload. Duration is auto-computed only from simplified structure when not provided. |
| tp_update_workoutA | Update fields of an existing workout. Supports the same simplified interval structure format as tp_create_workout plus an optional native structured_workout payload, then fetches existing, merges, and saves. |
| tp_delete_workoutC | Delete a workout. |
| tp_copy_workoutB | Copy a workout to a new date. Copies structure, description, planned fields. |
| tp_reorder_workoutsB | Reorder workouts on a given day. |
| tp_unpair_workoutA | Unpair a workout. Detaches the completed workout file from the planned workout, creating two separate workouts. No data is lost. |
| tp_pair_workoutA | Pair a completed workout with a planned workout. Attaches the completed data to the planned workout, merging them into one. |
| tp_get_workout_commentsC | Get comments on a workout. |
| tp_add_workout_commentC | Add a comment to a workout. |
| tp_get_workout_noteC | Get the private workout note for a workout. |
| tp_set_workout_noteA | Set or update the private workout note for a workout. |
| tp_upload_workout_fileB | Upload a workout file (.fit, .tcx, .gpx) to an existing workout. |
| tp_download_workout_fileA | Download a workout file by file_id. Get file_id from tp_get_workout device_files/attachment_files. |
| tp_delete_workout_fileB | Delete a workout file by file_id. Get file_id from tp_get_workout device_files/attachment_files. |
| tp_validate_structureA | Validate workout interval structure without creating a workout. Returns block count, duration, estimated IF/TSS. |
| tp_get_workout_prsC | Get PRs set during a specific workout. |
| tp_get_peaksA | Get top performances by type. For comparing PRs over time. |
| tp_analyze_workoutB | Get workout analysis: metrics, zones, laps. Saves full time-series to JSON file. |
| tp_get_fitnessA | Get fitness/fatigue trend (CTL/ATL/TSB). Supports historical date ranges. |
| tp_get_weekly_summaryA | Combined view of workouts + fitness for a week. Totals TSS, duration, end-of-week CTL/ATL/TSB. |
| tp_get_atpA | Get Annual Training Plan - weekly TSS targets, training periods, races. Max 90 days. |
| tp_get_athlete_settingsA | Get athlete settings: FTP, thresholds, zones, profile. |
| tp_update_ftpA | Update FTP and recalculate the default power zones. |
| tp_update_hr_zonesC | Update heart rate zones. |
| tp_update_speed_zonesC | Update run/swim pace zones. |
| tp_update_nutritionC | Update daily planned calories. |
| tp_get_pool_length_settingsC | Get pool length settings. |
| tp_log_metricsB | Log health metrics (weight, HRV, sleep, steps, etc.) for a date. |
| tp_get_metricsC | Get health metrics for a date range. |
| tp_get_nutritionB | Get nutrition data for a date range. |
| tp_get_equipmentB | List equipment (bikes, shoes). |
| tp_create_equipmentB | Add new equipment (bike or shoe). |
| tp_update_equipmentC | Update equipment details. |
| tp_delete_equipmentC | Delete equipment. |
| tp_get_focus_eventB | Get the A-priority focus event with goals and results. |
| tp_get_next_eventC | Get the nearest future planned event. |
| tp_get_eventsA | List events in a date range. |
| tp_create_eventB | Create a race/event with priority (A/B/C) and CTL target. |
| tp_update_eventC | Update an event. |
| tp_delete_eventC | Delete an event. |
| tp_create_noteC | Create a calendar note. |
| tp_delete_noteB | Delete a calendar note. |
| tp_get_noteA | Get a calendar note by ID. |
| tp_update_noteC | Update a calendar note. Provide at least one of: title, description, date, is_hidden. |
| tp_get_note_commentsA | Get all comments on a calendar note. |
| tp_add_note_commentA | Add a comment to a calendar note. |
| tp_list_notesB | List calendar notes for a date range. |
| tp_get_availabilityB | Get availability entries for a date range. |
| tp_create_availabilityC | Mark dates as unavailable or limited. |
| tp_delete_availabilityC | Remove an availability entry. |
| tp_get_workout_typesA | List all sport types and subtypes with IDs. Use to find subtype_id for create/update. |
| tp_get_librariesA | List workout library folders. |
| tp_get_library_itemsB | List templates in a workout library. |
| tp_get_library_itemC | Get full template details including structure. |
| tp_create_libraryC | Create a workout library folder. |
| tp_delete_libraryB | Delete a library folder and all templates. |
| tp_create_library_itemC | Save a workout template to a library. |
| tp_update_library_itemC | Edit a workout template. |
| tp_schedule_library_workoutC | Schedule a library template to a calendar date. |
| tp_list_athletesA | List athletes available to this account (coach accounts). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lsantome/Trainingpeaks-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server