Anatome MCP server
Log workouts and meals by telling your AI. 873 exercises, muscle diagrams, food lookup.
Little public usage data yet
Reviews
Write oneNobody has reviewed Anatome yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Anatome tools (36, 4 write)
write = sends, deletes, buys or postsai_meal_planFreeDraft a meal plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.
ai_parse_mealFreeParse free-text meal description ('2 eggs and toast with butter') into structured items with grams + macros.
ai_photo_macrosFreeAnalyze 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_planFreeDraft a workout plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.
delete_mealwrite actionFreeDelete a logged meal by id (soft delete, 30-day recovery window). Requires X-App-User-Id.
delete_workoutwrite actionFreeDelete a logged workout and its sets by id (soft delete, 30-day recovery window).
export_dataFreeExport 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_imageFreeRender an SVG diagram of the human body with muscles highlighted in arbitrary colors. Returns SVG.
get_body_metricsFreeList 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 range. Requires an app user context.
get_cardio_activitiesFreeList the current app user's cardio activities (most recent first).
get_eventsFreeWhat 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 entries after it; omit `since` for a first sync. seq is a global counter: gaps in your feed are other accounts' events, not lost data. Judge completeness from has_more, not seq.
get_exerciseFreeFetch one exercise by name, id, or random.
get_mealsFreeList the current app user's meals for a date range.
get_muscle_recoveryFreePer-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 bodyweight exercises so recovery reflects real load.
get_nutrition_dailyFreePer-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-User-Id.
get_profileFreeGet the current app user's fitness profile (height, weight, macro + water goals, diet, active sports). Requires an app user context.
get_progressFreeAny 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; correlate takes metric_a vs metric_b. Only completed sets count.
get_routineFreeFetch 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_waterFreeList the current app user's water intake entries for a date range. Requires X-App-User-Id.
get_workoutsFreeList the current app user's workouts (most recent first).
instantiate_routineFreeSchedule the signed-in user's routine into planned workouts from start_date. Coach assignment of another user is REST-only.
list_musclesFreeList all 23 supported muscle slugs with anatomical names.
list_routinesFreeBrowse 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_metricFreeLog 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). Logging weight enables bodyweight-inclusive volume analytics.
log_cardioFreeLog a cardio activity (run/bike/swim/etc.) for the current app user. Supports duration, distance, HR, power, calories.
log_mealFreeLog a meal (calories + macros + optional ingredients) for the current app user.
log_waterFreeLog water intake (ml) for the current app user.
log_workoutFreeLog a workout with exercise sets (strength or cardio unified). Requires an app user context.
lookup_barcodeFreeLookup a food product by EAN/UPC barcode.
my_training_contextFreeReturns 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`. Identity comes from the token, not a caller-supplied user id.
resolve_exerciseFreeResolve an exercise name into primary/secondary muscle layers for rendering.
search_exercisesFreeSearch 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 and media. Paginates: pass next_cursor back as `cursor`.
search_foodsFreeSearch food products by name (Open Food Facts + USDA). Returns macros per 100g.
update_mealwrite actionFreeCorrect 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_setswrite actionFreeCorrect 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 separate, so a subset can be relabelled. Adding a set is log_workout, not this.
upsert_profileFreeUpsert 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 fallback bodyweight for bodyweight-inclusive volume when no dated weight metric exists.
Public scan report
scanner v0.1.9 · 2026-09-23 · same rubric, same numbers if you re-run it
- –Code scanremote-only server, no package to scann/a
- Live reliabilityremote reachable in 1483ms20/20
- Tool poisoning36 tool descriptions checked15/15
- Auth qualityopen endpoint exposes 4 write-action tools with no auth3/15
- Maintenanceno repository listed3/15
- Maintainer identityverified namespace with website, no repo4/10
Findings (2)
- highWrite-action tools reachable without authentication
auth.open-write - lowNo source repository listed
maint.no-repo
Install directly
claude mcp add --transport http anatome https://anatome.dev/mcp
Anatome: common questions
- Is Anatome MCP server safe?
- With care: it is graded C, so read the findings first (60/100). Read the Anatome safety report
- How do I install Anatome?
- It runs remotely at anatome.dev. Add it to Claude Code, Claude Desktop or Cursor with the snippets above, or call it through the mcp.market gateway without installing anything.
- Does Anatome need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Anatome maintained?
- The latest release is v2.6.0.
- Is Anatome up?
- 100% of our last 20 checks got an answer. We check remote servers about four times a day.