Skip to main content
MCP server CX Codex

ExerciseBank — Claude Code MCP server: filter exercises by muscle and gear

An MCP server for the ExerciseBank catalogue. Your agent picks exercises by muscle, equipment and joints to spare, then finds ranked replacements. Useful when building a fitness app.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env EB_KEY=<EB_KEY> --env EB_END_USER=<EB_END_USER> --transport stdio exercisebank-mcp -- npx -y exercisebank-mcp
Open on GitHub

What ExerciseBank does

The server puts the ExerciseBank API within reach of your coding agent. Its tools cover the filter vocabulary (get_vocabulary), a filtered search (search_exercises) with options for muscle, available gear, movement pattern, difficulty range, joints to skip, impact and one-sided moves, a full record lookup (get_exercise) and ranked substitutes with a score and a reason (get_substitutes). A fifth tool, get_media_urls, returns signed video and image links.

You need a sandbox key first. It is free, needs no card, comes from https://exercisebank.net/signup and goes into EB_KEY. Node 18 or later is required; the server sits on your machine and talks over stdio. Signed media only works once EB_END_USER is defined, since each video is signed for one named person, and the links expire after 15 minutes.

With a sandbox key the media covers a sample of 50 exercises; the whole catalogue requires a paid plan. This server is meant for your own desk. A shipped product should call the API from its own backend, pass its own user ids and use the npm package exercisebank. A reference for language models lives at https://exercisebank.net/llms.txt.

What it helps with

  • pick exercises that match the gear someone owns
  • keep movements off a plan when certain joints must be spared
  • swap one exercise for another with a reasoned ranking
  • look up valid filter values before writing a query
  • prototype a workout generator without writing code first

Example prompts for the agent

  • List the ExerciseBank vocabulary and the 50 sandbox exercises
  • Find dumbbell chest exercises, no knee loading, difficulty not above medium
  • What can replace a barbell squat for someone without a barbell?

How to install ExerciseBank

Platform CLI

claude mcp add --env EB_KEY=<EB_KEY> --env EB_END_USER=<EB_END_USER> --transport stdio exercisebank-mcp -- npx -y exercisebank-mcp

Replace <…> with your own values

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about ExerciseBank

How do I install ExerciseBank in Claude Code?

Grab a sandbox key and run claude mcp add exercisebank-mcp -e EB_KEY=<EB_KEY> -- npx -y exercisebank-mcp. For signed media links, use the second form: claude mcp add --env EB_KEY=<EB_KEY> --env EB_END_USER=<EB_END_USER> --transport stdio exercisebank-mcp -- npx -y exercisebank-mcp.

What does ExerciseBank do?

It lets the agent search an exercise catalogue by muscle, equipment, movement, difficulty and joints to avoid, read full records and get ranked substitutes.

Why are video links missing?

get_media_urls appears only when EB_END_USER is set, because media is signed for a named person. A sandbox key signs clips for the 50-exercise sample.

Similar MCP servers

All MCP servers for AI and ML →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor