aiTrainer
The aiTrainer server acts as a personal workout coach, allowing you to log, track, and manage exercise data through an MCP interface.
Log workouts: Record exercises with sets, reps, weights, optional RPE (1–10), notes, and units; automatically grouped into sessions based on the day and idle timeout.
View current workout: Retrieve the open workout session and all exercises logged so far today.
Exercise history: Get recent workout sessions for a specific exercise to review past performance.
Recent workouts: Browse workout sessions across all exercises, filterable by number of days or result limit.
Progress & coaching signals: Obtain insights for a specific exercise including estimated 1RM, personal bests, volume trends, and sessions since last weight increase.
List exercises: View known exercises and their aliases (e.g.
bench,bench press) to help normalize names when logging.Edit sessions and sets: Fetch a session by ID, update session dates/notes, or modify individual sets by ID.
Delete data: Remove entire workout sessions or specific exercises from a session.
Allows logging exercises and reading workout progress via Telegram chat.
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., "@aiTrainerLog squat 5 reps at 100 kg"
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.
aiTrainer
Personal workout coach as a Python MCP server for OpenClaw. Chat over Telegram, log exercises in natural language, and let the agent read structured progress from SQLite.
Features
Log exercises, sets, reps, weights, optional RPE, and notes
Automatic workout session grouping (same day + within idle timeout)
Exercise aliases (
bench,bench press, etc.)Progress signals: estimated 1RM, personal bests, volume trend, sessions since last increase
MCP stdio transport for OpenClaw
Related MCP server: MCP Logger
Requirements
Python 3.11+
Linux target machine (also works on macOS for development)
Install
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"Run locally
aicoach-mcpOr:
python -m aicoach.serverConfiguration
Environment variables:
Variable | Default | Description |
|
| SQLite database path |
|
| Default weight unit |
|
| Auto-close idle workout sessions |
OpenClaw setup
Add aiCoach to your OpenClaw MCP config. On a standard install this lives in ~/.openclaw/openclaw.json.
Option A: CLI helper
openclaw mcp set aicoach '{
"command": "/path/to/aicoach/.venv/bin/aicoach-mcp",
"env": {
"AICOACH_DB_PATH": "/home/you/.local/share/aicoach/aicoach.db"
}
}'Option B: direct JSON config
{
"mcpServers": {
"aicoach": {
"command": "/path/to/aicoach/.venv/bin/aicoach-mcp",
"args": [],
"env": {
"AICOACH_DB_PATH": "/home/you/.local/share/aicoach/aicoach.db"
}
}
}
}Notes:
A
commandfield means OpenClaw launches the server over stdio automatically.Use the absolute path to your virtualenv binary on the Linux host.
Restart or reload OpenClaw after changing MCP config.
Agent prompt
Copy prompts/coach_instructions.md into your OpenClaw agent instructions so the model knows when to call aiCoach tools.
MCP tools
Tool | Purpose |
| Log one exercise and attach it to the current session |
| Show the open session and exercises logged so far |
| Fetch one session with set ids for editing |
| Recent sessions for one exercise |
| Recent sessions across exercises |
| Coaching signals for one exercise |
| Known exercises and aliases |
| Change a session date or note |
| Update one set by id |
| Delete an entire workout session |
| Delete one exercise from a session |
| Merge source sessions into one target session |
Example tool input
{
"exercise": "squat",
"sets": [
{"reps": 5, "weight": 100},
{"reps": 5, "weight": 100},
{"reps": 5, "weight": 100}
],
"note": "moved well"
}Tests
pytestMCP stdio smoke test:
python scripts/mcp_smoke_test.pyOpenClaw example config
See examples/openclaw-mcp-snippet.json for a copy-paste MCP server entry.
Project layout
aicoach/
config.py # settings and env vars
db.py # sqlite schema
repository.py # storage and session logic
progress.py # coaching signals
server.py # MCP server
prompts/
coach_instructions.md
tests/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
- Alicense-qualityDmaintenanceA Model Context Protocol server for tracking personal health and well-being, offering tools for workout logging, nutrition management, and daily journaling with AI-assisted analysis integration.Last updated10MIT
- 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
- 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
- Alicense-qualityCmaintenanceA Model Context Protocol (MCP) server that provides AI assistants with access to the Hevy fitness tracking API. This allows you to log workouts, manage routines, browse exercises, and track your fitness progress directly through AI chat interfaces.Last updated21MIT
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
MCP server for Withings health data — sleep, activity, heart, and body metrics.
MCP server for generating rough-draft project plans from natural-language prompts.
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/dns-szrvs/aiTrainer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server