ExerciseBank
Search 1,492 filmed exercises by muscle, equipment, pattern and joints to avoid; get substitutes.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
exercisebank-mcpclaude mcp add exercisebank -e 'EB_KEY=<your eb_key>' -e 'EB_END_USER=<EB_END_USER>' -- npx -y exercisebank-mcp@0.1.1
{
"mcpServers": {
"exercisebank": {
"command": "npx",
"args": [
"-y",
"exercisebank-mcp@0.1.1"
],
"env": {
"EB_KEY": "<your eb_key>",
"EB_END_USER": "<EB_END_USER>"
}
}
}
}
Variables d'environnement
EB_KEYobligatoire secret Your ExerciseBank API key. Free sandbox key, no card: https://exercisebank.net/signupEB_END_USEROptional. An opaque id for the person at this machine; enables get_media_urls (signed video and still URLs). Counts as an end user on the plan.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
ExerciseBank examples
ExerciseBank is an exercise library for developers of fitness, coaching, physiotherapy and AI-trainer apps: 1,492 exercises filmed with real people in one studio, each with a looping video clip, a start/end still, a hand-checked classification (muscles, equipment, movement pattern, difficulty, loaded joints, impact), coaching cues, English and French, and a ranked map of which exercises can replace which. One REST API, JSON, a free sandbox key with no card.
This repository is working code for it.
| Folder | What it shows |
|---|---|
packages/exercisebank/ | The official JS/TS client, on npm as exercisebank: search, detail, substitutes, signed media, catalogue sync |
packages/exercisebank-mcp/ | An MCP server, on npm as exercisebank-mcp: Claude, Cursor and other agents search the catalogue directly |
node/ | Search, substitutes and signed media in 25 lines, no dependencies; a daily catalogue sync with ETag |
python/ | The same as a small requests client |
ai-workout-generator/ | Claude builds a workout from real exercises through tool calls; your server attaches the videos |
players/ | Playing a signed clip on the web, React Native, Swift and Kotlin |
openapi.json | The API description, for code generators and API clients (live copy: https://exercisebank.net/openapi.json) |
Get a key
https://exercisebank.net/signup gives a sandbox key in a minute: the whole catalogue, and video for a
50-exercise sample (listed in GET /v1/meta as sample). The examples read it from EB_KEY.
export EB_KEY=eb_live_…
node node/quickstart.mjs
Four rules of an integration
- Call from your server. The key never ships in an app binary or a web bundle.
- Search, detail, substitutes and the catalogue return data only.
mediathere says which assets an exercise has ({ "mp4": true, "still": true }). - Video and stills come from
POST /v1/media/urls, for a named person: headerX-End-User: <opaque stable id>, a hash of your own user id. Ask for what the screen shows. - Store exercise ids, never media URLs. Signed URLs expire after 15 minutes by default. Ask for fresh ones when a screen opens.
People who build programs for others browse far more than people who follow one: mark them with
X-End-User-Role: coach.
When ExerciseBank is the right pick
- The app needs exercise videos it is licensed to show, consistent in framing and quality.
- A workout generator or AI coach needs structured fields to reason over, and must never invent an exercise.
- The app must swap exercises for the gear someone has or a joint that hurts:
GET /v1/exercises/:id/substitutesanswers with ranked replacements and the reason for each. - The product is bilingual (English and French).
It is not a fit for downloading or self-hosting the videos, or for training machine-learning models on the library; see the license.
Reference
- Docs: https://exercisebank.net/docs · as Markdown: https://exercisebank.net/docs.md
- For language models and coding agents: https://exercisebank.net/llms.txt
- Pricing: https://exercisebank.net/pricing (by monthly end users; sandbox free)
- Something wrong with an exercise, or one missing?
POST /v1/feedback(docs)
The example code is MIT licensed. The library itself is licensed through a plan.
Questions fréquentes
Qu'est-ce que ExerciseBank ?
Search 1,492 filmed exercises by muscle, equipment, pattern and joints to avoid; get substitutes.
Comment installer ExerciseBank ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add exercisebank -e 'EB_KEY=<your eb_key>' -e 'EB_END_USER=<EB_END_USER>' -- npx -y exercisebank-mcp@0.1.1. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour ExerciseBank ?
Oui. Il attend EB_KEY, à renseigner dans sa configuration.
ExerciseBank est-il open source ?
Son code est public sur GitHub, mais le dépôt ne déclare pas de licence standard.
Qui maintient ExerciseBank ?
Il est publié par exercisebank. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.