---
title: Tool catalog
description: Every TrainHeroic MCP tool, grouped by role and task.
sidebar:
  order: 3
---

{/* Generated by scripts/gen-mcp-tools.mts. Do not edit by hand. */}

The model chooses these tools from your request. Your MCP client shows each tool's full input
schema before it runs.

## Coach tools

Available to coach accounts on the main hosted endpoint and from the local coach server.

### Account & roster

| Tool | What it does |
| --- | --- |
| `whoami` | Your coach profile and roles |
| `head_coach` | Head coach profile for your organization |
| `list_athletes` | Everyone on your org roster |
| `list_teams` | Teams you coach |
| `get_team` | One team with athletes and program |
| `list_programs` | Standalone coach programs |
| `get_program` | Program detail by id |
| `notifications` | Unread notifications |
| `analytics_categories` | Analytics metric categories |
| `roster_activity` | Recent training activity across the roster |
| `athlete_training` | Filterable athlete training history |
| `athlete_lift_history` | Lift history for one athlete |
| `team_volume` | Volume totals for a team |

### Workouts & sessions

| Tool | What it does |
| --- | --- |
| `workout_build` | Program a session from blocks |
| `workout_read` | Read a programmed workout |
| `workout_publish` | Publish a draft to athletes |
| `session_remove` | Remove a session from a program |
| `session_unpublish` | Unpublish a live session |
| `session_copy` | Copy a session to another date |
| `session_save_as_template` | Save a session as a template |

### Exercise library

| Tool | What it does |
| --- | --- |
| `exercise_resolve` | Map a name to one exercise id |
| `exercise_search` | Fuzzy search the library |
| `exercise_get` | Full exercise by id |
| `exercise_sync` | Refresh the cached library |
| `exercise_create` | Create a custom exercise |
| `exercise_forget` | Remove a custom exercise from the cache |
| `store_stats` | Library cache stats |

### Athlete management

| Tool | What it does |
| --- | --- |
| `athlete_invite` | Invite an athlete to your org |
| `athlete_archive` | Archive an athlete |
| `athlete_restore` | Restore an archived athlete |
| `athlete_saved_workouts` | Saved workouts for an athlete |
| `log_athlete_set` | Log a set for an athlete |
| `coach_log_session` | Log a full session for an athlete |
| `swap_athlete_exercise` | Swap an exercise in a session |
| `prescribe_athlete_set` | Override prescribed sets |

### Teams & codes

| Tool | What it does |
| --- | --- |
| `team_create` | Create a team |
| `team_update` | Rename a team or reassign its calendar |
| `team_delete` | Delete a team |
| `team_code_create` | Create a join code |
| `team_code_delete` | Delete a join code |
| `list_team_codes` | Join codes for a team |

### Messaging & analytics

| Tool | What it does |
| --- | --- |
| `messaging_conversations` | Message streams and teams |
| `messaging_read` | Read a conversation |
| `message_draft` | Draft a message |
| `message_send` | Send a message |
| `message_delete` | Delete a message |
| `analytics_query` | Query readiness, volume, and more |
| `athlete_main_lift_prs` | Main-lift PRs for one athlete |
| `roster_main_lift_prs` | Main-lift PRs across the roster |

## Athlete tools

Available to every account on the main hosted endpoint and from both local servers.

### Profile & history

| Tool | What it does |
| --- | --- |
| `athlete_whoami` | Your athlete profile |
| `athlete_profile` | Training profile summary |
| `athlete_prefs` | Notification and display prefs |
| `athlete_working_maxes` | Working maxes by lift |
| `athlete_leaderboard` | Leaderboard standings |
| `athlete_workouts` | Upcoming and recent workouts |
| `athlete_exercises` | Search your exercise history |
| `athlete_exercise_history` | History for one exercise |
| `athlete_personal_records` | PRs for one exercise |
| `athlete_exercise_stats` | Stats for one exercise |
| `athlete_log_targets` | What to log today |

### Logging

| Tool | What it does |
| --- | --- |
| `athlete_session_create` | Create a training session |
| `athlete_session_add_exercises` | Add exercises to a session |
| `athlete_session_remove` | Remove a session |
| `athlete_log_session` | Log a full session |
| `athlete_log_set` | Log one set |
| `athlete_swap_exercise` | Swap an exercise in a scheduled workout |

## Hosted-only tools

These use the hosted server's D1 warehouse or feedback service.

| Tool | What it does |
| --- | --- |
| `report_feedback` | Report a bug or send feedback to the maintainers |
| `programming_sync` | Sync prescribed programming history into D1 |
| `programming_stored` | Query synced programming history |
| `messaging_sync` | Sync message history into D1 |
| `messaging_stored` | Query synced message history |
| `athlete_workouts_sync` | Sync workout history into D1 |
| `athlete_workouts_stored` | Query synced workout history |
| `athlete_training_sync` | Sync exercise history and PRs into D1 |
| `athlete_training_stored` | Query synced exercise history and PRs |
