Anatome

dev.anatome由 anatome.dev 发布官方发布者v2.6.0更新于 Oct 24, 2026

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

已验证Streamable HTTP可网页运行位置与生活知识与记忆数据与分析

概览

AI 生成的概览

让助手查询动作与训练计划、记录训练和饮食,并分析恢复与营养进度。

可以做什么
提供 873 个动作的搜索与查询、肌肉清单与 SVG 肌肉图,以及精选训练计划(PPL、上下肢、5x5 等)的浏览与排入日程。可记录训练组数、有氧活动、餐食、饮水和身体测量,并查询每日营养、恢复百分比与进度指标。另有 AI 解析餐食文字、餐食照片估算营养、生成餐食与训练草案,以及数据导出与变更事件同步。
适用场景
适合想用对话方式记录训练、饮食与身体数据,并获取恢复状态、营养统计或现成训练计划的人;也适合需要动作库与肌肉图示来规划或讲解训练的教练场景。
运行要求
远程 HTTP 端点,无需本地安装。多数个人数据工具需要应用用户上下文(X-App-User-Id 请求头或登录令牌);食物查询依赖 Open Food Facts 与 USDA 外部数据。
安装前请注意
多项工具会写入、修改或删除用户数据(训练、餐食、饮水、身体测量),删除为软删除并保留 30 天。AI 餐食与训练草案需 confirm:true,并明确标注非医疗建议。照片估算会把图像发送至外部模型,且有额度上限。用户身份须由令牌提供,勿随意代入他人标识。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Anatome,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/dev.anatome%2Fanatome/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "anatome": {
      "type": "http",
      "url": "https://anatome.dev/mcp"
    }
  }
}

工具

36

search_exercises

Search exercises

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 and media. Paginates: pass next_cursor back as `cursor`.

输入参数q必填levellimitcursorfieldsmuscleequipment

get_exercise

Get exercise

Fetch one exercise by name, id, or random.

输入参数idnamerandom

resolve_exercise

Resolve exercise

Resolve an exercise name into primary/secondary muscle layers for rendering.

输入参数exercise必填

list_muscles

List muscles

List all 23 supported muscle slugs with anatomical names.

无需输入参数。

generate_muscle_image

Generate muscle image

Render an SVG diagram of the human body with muscles highlighted in arbitrary colors. Returns SVG.

输入参数viewgenderlayers必填

list_routines

List routines

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.

输入参数goallimitdifficultysplit_typedays_per_week

get_routine

Get routine

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.

输入参数slug必填

instantiate_routine

Instantiate routine

Schedule the signed-in user's routine into planned workouts from start_date. Coach assignment of another user is REST-only.

输入参数routine_id必填start_date必填cadence_daysidempotency_key

search_foods

Search foods

Search food products by name (Open Food Facts + USDA). Returns macros per 100g.

输入参数q必填localepage_size

lookup_barcode

Lookup barcode

Lookup a food product by EAN/UPC barcode.

输入参数barcode必填

log_workout

Log workout

Log a workout with exercise sets (strength or cardio unified). Requires an app user context.

输入参数date必填setstitleprimary_sportidempotency_key

get_workouts

Get workouts

List the current app user's workouts (most recent first).

输入参数limitdate_todate_from

log_meal

Log meal

Log a meal (calories + macros + optional ingredients) for the current app user.

输入参数date必填fatsname必填carbsproteincalories必填meal_typeidempotency_key

get_meals

Get meals

List the current app user's meals for a date range.

输入参数date_todate_from

log_water

Log water

Log water intake (ml) for the current app user.

输入参数date必填amount_ml必填idempotency_key

log_body_metric

Log body metric

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). Logging weight enables bodyweight-inclusive volume analytics.

输入参数date必填unit必填notesvalue必填metric_type必填idempotency_key

get_body_metrics

Get body metrics

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 range. Requires an app user context.

输入参数tofromlimitmetric_type

upsert_profile

Upsert profile

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 fallback bodyweight for bodyweight-inclusive volume when no dated weight metric exists.

输入参数goalheightweightlanguagetimezonediet_typeunit_systemactive_sportsmeals_per_daydaily_fats_goaldaily_carbs_goaldaily_fiber_goal另有 5 个

get_profile

Get profile

Get the current app user's fitness profile (height, weight, macro + water goals, diet, active sports). Requires an app user context.

无需输入参数。

log_cardio

Log cardio

Log a cardio activity (run/bike/swim/etc.) for the current app user. Supports duration, distance, HR, power, calories.

输入参数date必填notessport必填titleavg_hrcaloriesdistance_midempotency_keyduration_seconds

get_cardio_activities

Get cardio activities

List the current app user's cardio activities (most recent first).

输入参数limitdate_todate_from

ai_parse_meal

Ai parse meal

Parse free-text meal description ('2 eggs and toast with butter') into structured items with grams + macros.

输入参数text必填locale

ai_photo_macros

Ai photo macros

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).

输入参数image_urlimage_base64

ai_meal_plan

Ai meal plan

Draft a meal plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.

输入参数days必填goalhealthconfirm必填diet_typedaily_calories

ai_workout_plan

Ai workout plan

Draft a workout plan. Not medical advice. confirm:true required. Pass health constraints so the draft can honour them.

输入参数goalhealthconfirm必填experiencedays_per_week必填

get_muscle_recovery

Get muscle recovery

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 bodyweight exercises so recovery reflects real load.

输入参数include_bodyweight

get_nutrition_daily

Get nutrition daily

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-User-Id.

输入参数date_todate_from

get_water

Get water

List the current app user's water intake entries for a date range. Requires X-App-User-Id.

输入参数datedate_todate_from

update_meal

Update meal

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.

输入参数datefatsnamecarbsfibersugarsodiumalcoholmeal_id必填proteincaloriesmeal_type另有 2 个

delete_meal

Delete meal

Delete a logged meal by id (soft delete, 30-day recovery window). Requires X-App-User-Id.

输入参数meal_id必填

update_sets

Update sets

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 separate, so a subset can be relabelled. Adding a set is log_workout, not this.

输入参数rperepsnotesdeleteweightset_ids必填exercisecompleted

delete_workout

Delete workout

Delete a logged workout and its sets by id (soft delete, 30-day recovery window).

输入参数workout_id必填

export_data

Export data

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.

输入参数confirmdomains

get_events

Get events

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 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.

输入参数limitsinceentities

my_training_context

My training context

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`. Identity comes from the token, not a caller-supplied user id.

输入参数domainsworkout_limit

get_progress

Get progress

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; correlate takes metric_a vs metric_b. Only completed sets count.

输入参数todaysfromsportbucketmethodmetric必填windowgoal_idexercisegroup_bymetric_a另有 2 个

版本历史

1
  1. v2.6.0最新Sep 16, 2026

评分

已满足适用检查项的 72%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分

    请在注册中心条目中发布图标。

  • 文档15 分

    请声明包含 README 的 GitHub 仓库,或在 OAuth 受保护资源元数据中提供 resource_documentation。

  • 许可证不适用

    托管服务按其提供方的条款使用,因此这里不要求许可证。此检查项不计入百分比。