Alpha Progression MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ALPHA_PROGRESSION_READ_ONLY | No | Set to 1 to turn plan editing off (read-only mode). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_sessionsA | Performed workouts as compact summaries, newest first. Per workout: name, plan, start, duration, working sets, volume (kg x reps), and per exercise the muscle,
working sets, top set and e1RM. |
| get_sessionB | One workout with every set: weight, unit, reps, RIR (reps in reserve), duration, notes and targets. |
| get_weekly_trainingA | Weekly training load, the main input for volume and frequency guidance. Defaults to the last 8 weeks. Per week (Monday start): workouts, minutes, working sets, and per muscle the fractional working sets
(1 per set for the target muscle, 0.5 for its main secondary muscles) and frequency (days trained).
|
| get_progressA | Which exercises are improving or stalled. Defaults to the last 6 months. Per exercise done at least |
| get_exercise_historyA | One exercise over time: a summary plus one row per workout (newest first) with the top set,
e1RM, working sets and volume. |
| find_exercisesA | Search exercises by name and/or muscle or group (e.g. "chest", "quads", "legs"), most recently done first. By default only exercises the user has done, with how often and when last. |
| get_plansA | Training plans: per day the exercises with their muscle and weekly set/rep/RIR targets. Only the current plan by default; active_only=false returns all plans. |
| get_measurementsA | Recorded body measurements (bodyweight, body fat, waist, ...) with dates, oldest first. |
| get_documentB | Any single stored document by id, for anything the other tools don't cover (e.g. "settings", "profile"). |
| set_plan_targetsA | Change the target sets and/or reps of one exercise in the training plan. Example: day="Day 1", exercise="Bench Press", sets=4, reps=6. |
| add_plan_exerciseA | Add one exercise to a day of the training plan, at the end or right after the exercise named in Example: day="Day 2", exercise="Seated Leg Curls (machine)", sets=3, reps=10, after="Deadlifts". Returns a preview; nothing is saved unless apply=true (only after the user approved the preview). |
| swap_plan_exerciseA | Replace one exercise on a day of the training plan with another, keeping its targets unless sets/reps are given. Example: day="Day 2", exercise="Overhead Triceps Extensions", new_exercise="Dips", sets=3, reps=8. Returns a preview; nothing is saved unless apply=true (only after the user approved the preview). |
| remove_plan_exerciseA | Take one exercise off a day of the training plan. Past workouts with it stay in the history. Example: day="Day 2", exercise="Overhead Triceps Extensions". Returns a preview; nothing is saved unless apply=true (only after the user approved the preview). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 13 tools
Most tools target clearly distinct views: session summaries, single-session detail, plans, weekly load, progress trends, per-exercise history, exercise search, measurements. The main friction is the get_sessions/get_session pair and get_progress vs get_exercise_history, which require reading descriptions to separate (aggregate trend vs one exercise's rows), but the descriptions do make the boundary clear. get_document is a deliberate catch-all and is framed as a fallback, so it doesn't badly muddy selection.
All names are snake_case verb_noun with a small, predictable verb set (get_/find_/set_/add_/swap_/remove_), and mutating plan tools share a clean add/swap/remove/set family. Minor deviations: singular/plural get_session vs get_sessions is the only noun-form irregularity, and find_exercises breaks the get_ prefix for a read operation. Overall readable and predictable.
13 tools is squarely in the well-scoped range, split between 9 read/analysis tools and 4 plan-mutation tools. Each tool maps to a distinct question an agent would ask (how much did I train, is this lift stalling, what's on the plan) with no filler. The four plan-edit tools are arguably granular but each covers a real edit operation.
Read coverage of the training domain is strong (sessions, sets, plans, weekly volume, progress, history, measurements, arbitrary documents), and plan editing covers add/swap/remove/retarget. However the write surface is thin: there is no way to log a workout, record a body measurement, or create/rename a training plan, so an agent asked to capture new data hits a dead end. The preview/apply gating is good but doesn't fill those gaps.