Skip to main content
Glama
Bazni
by Bazni

exercise-mcp

MCP server over hasaneyldrm/exercises-dataset — 1,324 exercises, 10 languages, animation GIFs.

Tools: list_facets, search_exercises, get_exercise, build_workout.

lib/server.js     data loading + tool definitions (shared)
server.js         stdio (default) / --http express entrypoint
api/mcp.js        Vercel serverless entrypoint
scripts/trim-data.js  drop unused languages: 17 MB -> 1.7 MB

Setup

npm install
npm run build            # downloads + trims the dataset into data/

node server.js            # stdio; prints "exercise-mcp ready (1324 exercises)"

Point EXERCISES_JSON=data/exercises.min.json at the trimmed file for any deployed environment.

Related MCP server: mcp-academia-server

Local (Claude Desktop / Claude Code)

claude mcp add exercise-db -- node /absolute/path/to/exercise-mcp/server.js

Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json:

{ "mcpServers": { "exercise-db": { "command": "node", "args": ["/abs/path/server.js"] } } }

Local servers do not reach claude.ai or the mobile apps.

Commit data/exercises.min.json, push, then railway up. railway.json sets the start command and /health check; the server binds 0.0.0.0:$PORT.

Set MCP_TOKEN in the Railway variables to require Authorization: Bearer <token> on /mcp.

Connector URL: https://<project>.up.railway.app/mcp

Vercel

Works, with caveats — see vercel.json. Deploy the repo as-is; the function lives at /api/mcp and includeFiles ships the trimmed dataset into the bundle.

  • The dataset parses on cold start (~1.5 s for the full file, ~80 ms trimmed), then stays in module scope while the instance is warm. Trim before deploying.

  • Stateless only: GET/DELETE return 405, which is correct for the stateless Streamable HTTP profile the SDK serves with sessionIdGenerator: undefined.

  • Do not put the endpoint behind Vercel's edge cache; MCP responses are per-request.

Connector URL: https://<project>.vercel.app/api/mcp

Adding it to Claude

Settings → Connectors → Add custom connector → paste the URL. Claude reaches your server from Anthropic's cloud, so it must be publicly resolvable — localhost and private networks won't work.

Notes

  • Search returns 5-field rows and get_exercise returns one language, because raw records are ~13 KB each and would flood the model's context.

  • image / gif_url are repo-relative; the server rewrites them to absolute raw.githubusercontent.com URLs. Override with MEDIA_BASE if self-hosting media.

  • Licence: metadata and instruction text MIT; GIFs and thumbnails are © Gym visual, redistributed with permission. Keep the attribution, and get your own media licence before shipping a product.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    This MCP server enables the generation of structured fitness content, including detailed exercise instructions with image prompts, balanced daily workout sessions, and personalized multi-day training plans. It facilitates the creation of comprehensive workout programs tailored to specific goals, age ranges, and movement patterns.
    2
  • A
    license
    -
    quality
    D
    maintenance
    An MCP server specialized in managing and querying gym exercises through a centralized database. It enables users to search for workouts by name or muscle group and retrieve detailed information including sets, repetitions, and rest intervals.
    2,504
    1
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    An MCP server that provides access to detailed exercise-to-muscle mapping data for over 320 exercises and 65 muscles. It enables users to analyze workout coverage, find exercise alternatives based on muscle overlap, and search for specific exercise activation data.
    6
    30
    4
    MIT
  • F
    license
    B
    quality
    C
    maintenance
    A personal remote MCP server for fitness data that provides read-only tools to query Garmin Connect activities and Hevy workouts, enabling users to list, retrieve, and analyze exercise records through natural language.
    13

View all related MCP servers

Related MCP Connectors

  • Wger MCP — wraps wger Workout Manager REST API (free, no auth for read)

  • MCP server for AI access to Swagger by SmartBear.

  • 350+ production-ready APIs through one MCP server — weather, geocoding, validation, financial data.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Bazni/gym-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server