mcpserver.lol
registry/anatome
Connection check verified live · 27h ago

anatome

Log workouts and meals by telling your AI. 873 exercises, muscle diagrams, food lookup.

Tools 36
GitHub stars
Installs / wk
Licence
Transport streamable-http
Last checked 27h ago

Tools & capabilities

36 tools

Read from the running server on 27h ago.

ai_meal_plan days*goalhealthconfirm*diet_typedaily_calories
Draft a meal plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.
ai_parse_meal text*locale
Parse free-text meal description ('2 eggs and toast with butter') into structured items with grams + macros.
ai_photo_macros image_urlimage_base64
Analyze a meal image and estimate foods + macros. Pass exactly one of image_url or image_base64. Vision model, capped separately from the text AI budget (free tier 1/mo).
ai_workout_plan goalhealthconfirm*experiencedays_per_week*
Draft a workout plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.
delete_meal can modify data meal_id*
Delete a logged meal by id (soft delete, 30-day recovery window). Requires X-App-User-Id.
delete_workout can modify data workout_id*
Delete a logged workout and its sets by id (soft delete, 30-day recovery window).
export_data read-only confirmdomains
Export the signed-in user's data as JSON. Pass `domains` (e.g. meals,workouts) or confirm:true for a full copy. Identity comes from the token, never a caller-supplied user id.
generate_muscle_image viewgenderlayers*
Render an SVG diagram of the human body with muscles highlighted in arbitrary colors. Returns SVG.
get_body_metrics read-only tofromlimitmetric_type
List the current app user's body metrics / measurements (weight, height, bicep, body fat, etc.), most recent first. Filter by metric_type (e.g. 'weight', 'bicep') and/or a date ran…
get_cardio_activities read-only limitdate_todate_from
List the current app user's cardio activities (most recent first).
get_events read-only limitsinceentities
What changed since a cursor, including DELETES, which a list read cannot show. Returns {seq, entity, id, action}. Pass the last seq back as `since` on the next call to receive only…
get_exercise read-only idnamerandom
Fetch one exercise by name, id, or random.
get_meals read-only date_todate_from
List the current app user's meals for a date range.
get_muscle_recovery read-only include_bodyweight
Per-muscle 7-day recovery % (Fitbod parity) — the 'what should I train today?' input. Recommends fresh muscles. Pass include_bodyweight=true to add the user's bodyweight to bodywei…
get_nutrition_daily read-only date_todate_from
Per-day calories, macros, fiber/sugar/sodium/alcohol, water, targets and adherence % over a date range (default: last 7 days). The 'how am I tracking today?' tool. Requires X-App-U…
get_profile read-only
Get the current app user's fitness profile (height, weight, macro + water goals, diet, active sports). Requires an app user context.
get_progress read-only todaysfromsportbucketmethod +8
Any progression metric for the current user — pick one in `metric`. training_load is acute:chronic (>1.5 ramping too fast, <0.8 detraining); muscle_recovery is per-muscle freshness…
get_routine read-only slug*
Fetch a single curated routine by slug with all days + slots fully expanded (exercises, sets, reps ranges, rest, superset groupings). The 'give me a full program' tool.
get_water read-only datedate_todate_from
List the current app user's water intake entries for a date range. Requires X-App-User-Id.
get_workouts read-only limitdate_todate_from
List the current app user's workouts (most recent first).
instantiate_routine routine_id*start_date*cadence_daysidempotency_key
Schedule the signed-in user's routine into planned workouts from start_date. Coach assignment of another user is REST-only.
list_muscles read-only
List all 23 supported muscle slugs with anatomical names.
list_routines read-only goallimitdifficultysplit_typedays_per_week
Browse the curated workout routine library (PPL, upper/lower, full-body, 5x5, etc.). Filter by difficulty, goal, split_type, days_per_week. Returns minimal list.
log_body_metric date*unit*notesvalue*metric_type*idempotency_key
Log a body measurement. metric_type: weight (kg), height (cm), body_fat (%), muscle_mass (kg), waist/chest/bicep/forearm/hip/thigh/calf/neck/shoulder (cm), bmi, resting_hr (bpm). L…
log_cardio date*notessport*titleavg_hrcalories +3
Log a cardio activity (run/bike/swim/etc.) for the current app user. Supports duration, distance, HR, power, calories.
log_meal date*fatsname*carbsproteincalories* +2
Log a meal (calories + macros + optional ingredients) for the current app user.
log_water date*amount_ml*idempotency_key
Log water intake (ml) for the current app user.
log_workout date*setstitleprimary_sportidempotency_key
Log a workout with exercise sets (strength or cardio unified). Requires an app user context.
lookup_barcode read-only barcode*
Lookup a food product by EAN/UPC barcode.
my_training_context read-only domainsworkout_limit
Returns a slice of the signed-in user's training picture. Default domains are workouts and today's nutrition. Pass `domains` to add checkin, notes or profile, or `domains=all`. Ide…
resolve_exercise read-only exercise*
Resolve an exercise name into primary/secondary muscle layers for rendering.
search_exercises read-only q*levellimitcursorfieldsmuscle +1
Search 873 exercises by name with muscle/equipment/level filters. Rows are lean (name, ext_id, equipment, level, muscles) — enough to pick one; get_exercise returns instructions an…
search_foods read-only q*localepage_size
Search food products by name (Open Food Facts + USDA). Returns macros per 100g.
update_meal datefatsnamecarbsfibersugar +8
Correct a previously logged meal — name, macros, nutrients, portion, date or meal_type. Pass only the fields you want to change. Requires X-App-User-Id.
update_sets can modify data rperepsnotesdeleteweightset_ids* +2
Correct sets already logged, by set id (log_workout returns them). Relabel the exercise, fix weight/reps/rpe, mark completed, add notes, or delete. Selection and change are separat…
upsert_profile goalheightweightlanguagetimezonediet_type +11
Upsert the current app user's fitness profile. Set `timezone` first: every daily total, streak and adherence window is bucketed by it and defaults to UTC. `weight` doubles as the f…