strength-training-mcp
A stateless MCP server providing evidence-based strength training tools that encode classical powerlifting programs, fatigue modeling, and training science principles — with all state managed by the calling agent.
Browse training programs (
list_training_templates): Explore a built-in library of classical programs (5/3/1, Texas Method, Madcow, GZCLP, nSuns CAP3, Coan-Philippi, Smolov Jr), filterable by category (powerlifting, strength, peaking) and difficulty (beginner, intermediate, advanced).Retrieve weekly training plans (
get_template_plan): Get a specific week's prescribed sessions from any template, including exercises, sets, reps, intensity, and AMRAP flags.Look up exercise form guidance (
lookup_exercise_form): Get form cues, common mistakes, and equipment-filtered alternatives for any exercise.Learn training science principles (
explain_principle): Get cited explanations of concepts like RPE autoregulation, periodization, the Banister model, deload triggers, and volume landmarks.Calculate fatigue scores (
calculate_fatigue_score): Compute Banister fitness-fatigue metrics (CTL/ATL/TSB) from recent training history, optionally incorporating recovery data like sleep and soreness.Get session modification suggestions (
suggest_session_modification): Receive actionable adjustment recommendations (scale weight, change intensity, deload, etc.) based on planned vs. actual performance and current fatigue state.Apply plan adjustments (
apply_plan_adjustment): Modify a week's plan by applying adjustments such as DELOAD_WEEK, SCALE_WEEK, SHIFT_VOLUME, or ADD_REST_DAY, returning the adjusted plan JSON.Get today's session recommendation (
recommend_session_for_today): Receive a personalized session recommendation with rationale based on your template, current week, fatigue state, and last session.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@strength-training-mcpRecommend today's session with fatigue score -15."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Strength Training MCP Server
A stateless MCP server exposing 8 tools for evidence-based strength training. Encodes classical powerlifting programs (5/3/1, Texas Method, Madcow, GZCLP, nSuns CAP3, Coan-Philippi, Smolov Jr), the Banister fitness-fatigue model, RPE-based autoregulation, and an adjustment policy engine.
No user data is stored on the server. All state lives in the calling agent. The server is a pure function: same inputs → same outputs.
Supported Transports
Transport | Support | Entry Point | Use Case |
Stdio | ✅ |
| Claude Desktop, Claude Code, Cursor |
Streamable HTTP | ✅ |
| ModelScope, Aura, remote agents |
SSE | ❌ | — | Not implemented (use Streamable HTTP instead) |
Related MCP server: RepStack
Quick Start
Stdio (local clients)
uvx --from strength-training-mcp strength-training-mcpHTTP server (remote / cloud)
uvx --from strength-training-mcp strength-training-mcp-http --port 8080Test:
curl http://localhost:8080/health
# → {"status":"ok","version":"0.1.1"}For MCP calls over HTTP, use any MCP client (e.g., fastmcp.Client, Claude Desktop, or ModelScope) pointing at http://localhost:8080/mcp.
Deploy on ModelScope
This package is published to PyPI as strength-training-mcp. ModelScope can deploy it directly via uvx.
Step 1 — Choose transport
In ModelScope MCP deployment console, select Stdio or Streamable HTTP.
Recommendation: Use Stdio for the simplest one-click deployment.
Step 2 — Fill service config
Option A — Stdio (recommended)
{
"mcpServers": {
"strength-training": {
"command": "uvx",
"args": [
"--from",
"strength-training-mcp",
"strength-training-mcp"
],
"env": {}
}
}
}Option B — Streamable HTTP
Deploy the HTTP server first (see Self-Host below), then fill your public URL:
{
"mcpServers": {
"strength-training": {
"type": "http",
"url": "https://your-domain.com/mcp"
}
}
}Step 3 — No parameters required
This server requires no API keys, no environment variables, and no database. Leave parameter config empty.
Step 4 — Verify
After deployment, test:
curl https://your-deployment-url/health
# → {"status":"ok","version":"0.1.1"}Self-Host
See docs/selfhost.md for:
systemd service setup
nginx reverse proxy (hide application port)
Caddy + HTTPS
Docker deployment
Minimal production setup:
# Install
uv tool install strength-training-mcp
# Run behind nginx on port 80
strength-training-mcp-http --host 127.0.0.1 --port 3492Then configure nginx to proxy 80 → 127.0.0.1:3492.
Tools
Tool | Purpose |
| Browse the built-in program library |
| Get a specific week's prescribed sessions |
| Get form cues + alternatives for an exercise |
| Explain a training science principle with citation |
| Compute Banister CTL/ATL/TSB from training history |
| Get adjustment recommendations based on fatigue + actual |
| Apply aggregate adjustments to a week (deload, etc.) |
| Compose today's session with rationale |
See docs/api.md for full tool reference, input schemas, and error codes.
Agent Integration
Claude Desktop example
{
"mcpServers": {
"strength-training": {
"command": "uvx",
"args": [
"--from",
"strength-training-mcp",
"strength-training-mcp"
]
}
}
}Development
uv sync --all-extras
uv run pytest tests/unit # unit tests
uv run pytest tests/integration # E2E tests
uv run pytest --cov=src/strength_training_mcpKnowledge Sources
All templates and principles cite their original public sources. See docs/rts-principles.md for citations.
License
MIT
Maintenance
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
- FlicenseBqualityDmaintenanceA personal fitness tracking server that enables logging and querying workouts, nutrition, and body metrics through a local SQLite database. Integrates with OpenNutrition MCP for food logging and supports exercise history tracking for workout progression.Last updated17
- Flicense-qualityDmaintenanceA stateless MCP server that normalizes strength training logs into a deterministic canonical schema, enabling consumers to build analytics downstream without storing data server-side.Last updated
- FlicenseBqualityCmaintenanceA 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.Last updated13
- FlicenseAqualityBmaintenancePersonal workout coach MCP server that logs exercises in natural language, tracks progress with SQLite, and provides coaching signals like estimated 1RM and volume trends.Last updated6
Related MCP Connectors
MCP server for Withings health data — sleep, activity, heart, and body metrics.
Wger MCP — wraps wger Workout Manager REST API (free, no auth for read)
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/daiduo2/strength-training-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server