Hevy Coach

io.github.gCuadrosPublished by GitHub account gCuadrosv0.4.2Updated Oct 25, 2026

Training analytics over your Hevy log: e1RM, PRs, volume, consistency, bodyweight.

VerifiedStreamable HTTPWeb executableLocation & LifestyleData & Analytics

Overview

AI-generated overview

An MCP server for the Hevy workout app that fetches your training data live and computes analytics such as e1RM, PRs, volume and consistency.

What you can do
Check the connection and read workouts, routines and routine folders from Hevy live, with no local cache or sync step. Resolve exercises by name and review their logged history. Compute progress analytics: estimated 1RM trends, PRs at 1/3/5/8RM, weekly volume per muscle group, training consistency and period-over-period comparisons. Read bodyweight and measurement logs and weight trends over a date range. Create routines and routine folders, edit existing routines, and log bodyweight or measurements. Expose live snapshots as resources and provide guided prompts for weekly reviews, program audits, deload checks and session prep.
When to use it
Useful if you track training in Hevy and want an assistant to reason over your real numbers for progress reviews, program audits, deload decisions or planning a session, rather than estimating from memory.
Requirements
A Hevy account with a PRO subscription and a Hevy API key, supplied as the HEVY_API_KEY environment variable for the local npm package (run via npx, Node.js). Alternatively, connect to the hosted Streamable HTTP endpoint, which uses OAuth. Network access to Hevy's API is required.
Before you install
The API key grants full account access with no scopes, so treat it as a sensitive secret. Four tools write to Hevy: create-routine, update-routine, create-routine-folder and log-body-measurement; update-routine replaces an existing exercise list outright. Hevy's API has no delete endpoint, so anything created this way cannot be removed from the server. Workout history is never modified. Data is sent only to Hevy's API.

Installation

In SourceWeft

  1. Open Hevy Coach in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.gCuadros%2Fhevy-coach-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "hevy-coach": {
      "type": "http",
      "url": "https://hevy-mcp-alpha.vercel.app/mcp"
    }
  }
}

README

hevy-coach-mcp

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).

Install

claude mcp add hevy -e HEVY_API_KEY=your_key_here -- npx -y hevy-coach-mcp

Or add it manually to your client's MCP config:

json
{  "mcpServers": {    "hevy": {      "command": "npx",      "args": ["-y", "hevy-coach-mcp"],      "env": { "HEVY_API_KEY": "your_key_here" }    }  }}

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.

First use

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.

Tools

Fifteen read tools, all marked readOnlyHint:

  • health-check — connection status
  • get-workouts, get-workout — list/inspect workouts
  • list-routines, get-routine — list/inspect routines
  • list-routine-folders — the folders routines are organised into, with their IDs
  • search-exercises, get-exercise-history — resolve an exercise by name and see its logged history
  • get-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 carrying
  • get-volume-report — effective sets and tonnage per muscle group per week
  • get-consistency — training frequency, streak, longest gap
  • compare-periods — volume/workout-count diff between two date ranges
  • get-body-measurements — logged bodyweight and measurements, newest first
  • get-bodyweight-trend — weight change over a range: total, percentage and rate per week

Four 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 numbered
  • update-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 twice
  • log-body-measurement — record a bodyweight or measurement for a date you give it; re-logging a date keeps whatever else was stored that day

Resources

hevy://profile, hevy://routines, hevy://exercises, hevy://stats/summary, hevy://workouts/recent — cheap live snapshots for a client to read without a tool call.

Prompts

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.

Privacy

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.

Contributing

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.

License

MIT

Source: README.md at commit c3a2326

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

1
  1. v0.4.2LatestSep 16, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts