Training analytics over your Hevy log: e1RM, PRs, volume, consistency, bodyweight.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
An MCP server for Hevy (the workout tracking app). It fetches your workouts, routines and exercise templates live from Hevy β no local cache or database β then does the analytics math (e1RM, PRs, volume, consistency, period comparisons) so your MCP client can reason over real numbers instead of guessing. It writes back what you ask it to β routines, folders, a bodyweight β and never touches your workout history.
Requires Hevy PRO and a Hevy API key (Hevy app β Settings β API).
Or add it manually to your client's MCP config:
This works in Claude Desktop (claude_desktop_config.json), Claude Code (.mcp.json or the command above), Cursor (.cursor/mcp.json), and Windsurf (~/.codeium/windsurf/mcp_config.json) β same shape everywhere.
Your API key stays local: it's read from the HEVY_API_KEY environment variable and never leaves your machine except in calls to Hevy's own API.
There's also a hosted mode over Streamable HTTP with OAuth, for clients that can't spawn a
local process (Claude.ai, ChatGPT). Point them at https://hevy-mcp-alpha.vercel.app/mcp
and they'll run the OAuth flow themselves. docs/CONNECTOR.md covers
both setups client by client, plus self-hosting, example questions and privacy details.
Run health-check any time to confirm the connection. Every other tool fetches live from Hevy β there's nothing to sync or warm up first.
Fifteen read tools, all marked readOnlyHint:
health-check β connection statusget-workouts, get-workout β list/inspect workoutslist-routines, get-routine β list/inspect routineslist-routine-folders β the folders routines are organised into, with their IDssearch-exercises, get-exercise-history β resolve an exercise by name and see its logged historyget-progress, get-records β estimated-1RM trend and PRs (1/3/5/8RM) per exercise; get-progress can also report each session against the bodyweight you were carryingget-volume-report β effective sets and tonnage per muscle group per weekget-consistency β training frequency, streak, longest gapcompare-periods β volume/workout-count diff between two date rangesget-body-measurements β logged bodyweight and measurements, newest firstget-bodyweight-trend β weight change over a range: total, percentage and rate per weekFour write tools, declared as writes so your client asks first:
create-routine β build a new routine from exercise names, optionally into a folder named rather than numberedupdate-routine β edit an existing routine; passing an exercise list replaces the old one outright (destructiveHint)create-routine-folder β add a folder; a title that already exists is never created twicelog-body-measurement β record a bodyweight or measurement for a date you give it; re-logging a date keeps whatever else was stored that dayhevy://profile, hevy://routines, hevy://exercises, hevy://stats/summary, hevy://workouts/recent β cheap live snapshots for a client to read without a tool call.
weekly-review, program-audit, deload-check, prepare-session β guide the client through calling the right tools for common training questions.
For the layer above those β a standing system prompt that turns the numbers into decisions β see docs/COACH-PROMPT.md.
Nothing about your account is stored β every tool call fetches fresh from Hevy's API using your own key, and nothing about your account is sent anywhere else.
Four tools write to Hevy: create-routine, update-routine, create-routine-folder and log-body-measurement, all declared as writes so your client asks before running them. Nothing writes to your workout history β that is the line, and it does not move: a logged workout is what every number here is computed from, so it can only be changed by you, in the app. Hevy's API has no delete endpoint, so nothing this server creates can be removed from here either. Note that a Hevy API key has no scopes β it grants full account access no matter what this server chooses to do with it.
Clone, yarn install, and copy .env.example to .env.local. Validate any change with
yarn typecheck && yarn test && yarn build β the same three commands CI runs.
AGENTS.md is the full guide to the architecture, conventions and the
decisions worth knowing before changing anything. It is written for AI coding agents, but
it is the fastest way for a human to get oriented too.
MIT
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/hevy-coach)<a href="https://allmcps.com/mcp/hevy-coach"><img src="https://allmcps.com/api/badge/hevy-coach?style=directory" alt="Hevy Coach on AllMCPs" /></a>