MCP 服务器

fitfly-engine

io.github.dropflyai/fitfly-engine
医疗健康 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Manages an adaptive fitness program with workout sessions, exercise substitutions, readiness adjustments, progression tracking, nutrition targets, and meal plans.

changelog
What the engine changed and why
The 'what changed & why' feed — the engine's coaching decisions (volume bumps, deloads, swaps) in Coach Fly's voice. Use to explain to the athlete why their plan evolved.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}}
get_program
Get the active program
The athlete's current multi-day program (render-ready).
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_todays_session
Get today's training session
Today's workout: exercises, sets/reps, per-exercise load guidance and concrete target weights, plus nutrition targets and cycle status. Auto-applies the user's readiness check-in (autoregulation) if they've done one today. Call this to see what the athlete should do now.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'dayIndex': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Which program day (1-based). Defaults to the first day.'}}}
list_swap_options
List same-area swap options for an exercise
Valid alternatives for an exercise — same muscle group, filtered to the athlete's equipment/level/injuries. Use before swap_exercise.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['exerciseId'], 'properties': {'exerciseId': {'type': 'string'}}}
log_workout
Log completed sets
Record what the athlete actually lifted. The engine runs progression (double-progression, e1RM), detects PRs, and returns per-exercise outcomes (established/progressed/held/deloaded) with next-time targets. Weights are in kg.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['exercises'], 'properties': {'goal': {'enum': ['strength', 'hypertrophy', 'general_fitness', 'fat_loss'], 'type': 'string'}, 'dayIndex': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'exercises': {'type': 'array', 'items': {'type': 'object', 'required': ['exerciseId', 'sets'], 'properties': {'sets': {'type': 'array', 'items': {'type': 'object', 'required': ['weightKg', 'reps'], 'properties': {'rpe': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'reps': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'weightKg': {'type': 'number'}, 'completed': {'type': 'boolean'}}}}, 'exerciseId': {'type': 'string'}, 'prescribedRepTop': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}}, 'description': 'Per-exercise completed sets (weights in kg).'}}}
meal_plan
Generate a meal plan
A day of meals hitting the athlete's targets, USDA truth-checked (flags feasible=false with a note when macros are approximate). Slow (~15s AI call).
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'exclusions': {'type': 'array', 'items': {'type': 'string'}}, 'mealsPerDay': {'type': 'integer', 'maximum': 5, 'minimum': 3}, 'trainingDay': {'type': 'boolean'}, 'dietaryStyle': {'type': 'string'}}}
nutrition_targets
Get nutrition targets
The athlete's daily calorie + macro targets, computed from body stats, activity, and goal.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
readiness_checkin
Log a readiness check-in
Record how the athlete feels today (energy, sleep, soreness — each 1–5). The engine scores readiness and, on the next get_todays_session, reshapes the workout accordingly (reduce volume / reduce intensity / recovery day). Returns the readiness score + modifier.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['energy', 'sleep', 'soreness'], 'properties': {'sleep': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': '1 terrible … 5 great'}, 'energy': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': '1 drained … 5 great'}, 'soreness': {'type': 'integer', 'maximum': 5, 'minimum': 1, 'description': '1 none … 5 very sore'}}}
regenerate_program
Regenerate the program
Rebuild the whole program from the stored profile (~20s AI generation). Use after a profile change or a plateau.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
swap_exercise
Swap an exercise
Replace an exercise with a valid same-area alternative. scope 'today' = just this session; scope 'program' = going forward. The new lift starts fresh (day-one calibration).
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['exerciseId', 'toExerciseId'], 'properties': {'scope': {'enum': ['today', 'program'], 'type': 'string', 'description': "Default 'program'."}, 'dayIndex': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'exerciseId': {'type': 'string'}, 'toExerciseId': {'type': 'string'}}}
已添加
changelog
2026年9月17日 12:41
已添加
meal_plan
2026年9月17日 12:41
已添加
nutrition_targets
2026年9月17日 12:41
已添加
regenerate_program
2026年9月17日 12:41
已添加
get_program
2026年9月17日 12:41
已添加
swap_exercise
2026年9月17日 12:41
已添加
list_swap_options
2026年9月17日 12:41
已添加
log_workout
2026年9月17日 12:41
已添加
readiness_checkin
2026年9月17日 12:41
已添加
get_todays_session
2026年9月17日 12:41