Hevy MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HEVY_API_KEY | Yes | Your Hevy API key, get from https://hevy.com/settings?developer |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_workoutsB | Get a paginated list of workouts from Hevy |
| get_workout_countA | Get the total number of workouts logged in Hevy |
| get_workout_eventsB | Get workout events (updates/deletes) since a given date, useful for syncing local caches |
| get_workoutA | Get full details of a single workout by ID |
| create_workoutC | Log a new workout in Hevy |
| update_workoutC | Update an existing workout in Hevy |
| get_user_infoA | Get the current Hevy user's profile info (username, join date, etc.) |
| get_routinesB | Get a paginated list of saved workout routines |
| get_routineA | Get a single routine by ID with all exercises and sets |
| create_routineC | Create a new workout routine |
| update_routineC | Update an existing routine |
| get_exercise_templatesB | Get the exercise library — all available exercises with their IDs, muscle groups, and equipment |
| get_exercise_templateC | Get a specific exercise template by ID |
| get_exercise_historyB | Get the training history for a specific exercise (all sets across all workouts), great for tracking progress |
| get_routine_foldersC | Get a list of routine folders |
| get_routine_folderC | Get a specific routine folder by ID |
| create_routine_folderC | Create a new routine folder to organize routines |
| update_routine_folderC | Rename a routine folder |
| get_body_measurementsC | Get a paginated list of body measurements (weight, body fat %, etc.) over time |
| get_body_measurement_by_dateC | Get body measurements for a specific date |
| upsert_body_measurementC | Create or update body measurements for a specific date |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Each tool targets a distinct resource and action. Workout-related tools are differentiated by purpose (listing, counting, events, details). Exercise and measurement tools are similarly distinct.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_routine, get_workouts, upsert_body_measurement). No mixing of conventions.
21 tools is slightly above the ideal range but still reasonable for a fitness app covering routines, folders, exercises, workouts, and measurements. Each tool serves a clear purpose.
Covers create, read, update, and upsert for key resources, but notably missing delete operations (e.g., delete_routine, delete_workout, delete_body_measurement). Also lacks search/filter tools. Notable gap.