Create Hevy routines and analyze your training from chat. Unofficial; BYO Hevy PRO API key.
If you already use Hevy (Unofficial), the hevy (unofficial) mcp server is the piece that lets your assistant work with it directly. Create Hevy routines and analyze your training from chat. Unofficial; BYO Hevy PRO API key.
Unofficial MCP server for Hevy. Design training programs in chat; your AI creates the routines directly in your Hevy account and analyzes your logged training. Requires a Hevy PRO API key (hevy.com/settings?developer).
Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
search_exercises — Search the user's Hevy exercise library by name (fuzzy). Returns template id, exact title, type, muscle group and equipmentlist_routine_folders — List the user's routine folders (id + title). Check this before creating a folder — reuse an existing one when the name matchescreate_routine_folder — Create a routine folder, or return the existing folder if one with this exact title already exists (never duplicates)list_routines — List the user's existing routines (id, title, folder_id, exercise_count). Use to avoid creating duplicatescreate_routine — create a routine (lb-first: weight_lb snaps to 2.5/5 lb increments; RPE folded into notes; supersets; duration/distance targets supported)get_workouts — Get the user's most recent logged workouts, newest first, as compact summaries: title, date, duration, and per-exercise set count + top set. Useget_workout — Get one logged workout with every set (weights in kg). Use the id from get_workoutsget_workout_count — Total number of workouts the user has ever logged in Hevyget_exercise_history — past sets + estimated 1RM in lb for one exercise (full history, optional date range)get_routine — Get one routine in full (all exercises and sets). Always call this before update_routine so you can send back the complete routineupdate_routine — Replace an existing routine. WARNING: this overwrites the routine — Hevy replaces its exercises with exactly what you send, so first call get_routineget_training_summary — weekly sessions/volume (lb), sets per muscle group, top-lift 1RM trendConfiguration is passed through the environment: HEVY_API_KEY, AUTH_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Hevy (Unofficial)'s toolset — search_exercises, list_routine_folders, create_routine_folder and 9 more — is a fair guide to whether it matches your workflow. It is maintained by almostjacked; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Hevy (Unofficial)'s own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| search_exercises | Search the user's Hevy exercise library by name (fuzzy). Returns template id, exact title, type, muscle group and equipment. |
| list_routine_folders | List the user's routine folders (id + title). Check this before creating a folder — reuse an existing one when the name matches. |
| create_routine_folder | Create a routine folder, or return the existing folder if one with this exact title already exists (never duplicates). |
| list_routines | List the user's existing routines (id, title, folder_id, exercise_count). Use to avoid creating duplicates. |
| create_routine | create a routine (lb-first: weight_lb snaps to 2.5/5 lb increments; RPE folded into notes; supersets; duration/distance targets supported) |
| get_workouts | Get the user's most recent logged workouts, newest first, as compact summaries: title, date, duration, and per-exercise set count + top set. Use get_workout for full set-by-set detail of one workout. |
| get_workout | Get one logged workout with every set (weights in kg). Use the id from get_workouts. |
| get_workout_count | Total number of workouts the user has ever logged in Hevy. |
| get_exercise_history | past sets + estimated 1RM in lb for one exercise (full history, optional date range) |
| get_routine | Get one routine in full (all exercises and sets). Always call this before update_routine so you can send back the complete routine. |
| update_routine | Replace an existing routine. WARNING: this overwrites the routine — Hevy replaces its exercises with exactly what you send, so first call get_routine and include every exercise you want to keep. Folder cannot be changed |
| get_training_summary | weekly sessions/volume (lb), sets per muscle group, top-lift 1RM trend |
{
"mcpServers": {
"hevy": {
"command": "npx",
"args": ["-y", "@almostjacked/hevy-mcp"],
"env": {
"HEVY_API_KEY": "your-value",
"AUTH_TOKEN": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
| Variable | Description | Required |
|---|---|---|
| HEVY_API_KEY | Credential the server authenticates with. | Yes |
| AUTH_TOKEN | Credential the server authenticates with. | Yes |
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.