create_batch
ChatGPTRecord one cooking of a dish, from a saved recipe or from its ingredients with grams: saved foods by name or id, or unsaved ingredients with their own estimated numbers. Its nutrition is fixed when created; per 100 g follows the cooked weight. Returns the batch with nutrition per 100 g.
delete_food
ChatGPTRemove a saved food, recipe or batch from the library. Entries already logged keep their numbers. A batch can be deleted only when nothing was logged from it.
delete_food_entry
ChatGPTRemove an entry by id.
get_daily_summary
ChatGPTTotals, targets, remaining, calorie split, weight and activity for a day. Default: today.
get_food
ChatGPTOne saved food, recipe or batch by id or name, with full nutrition per 100 g and per serving, a recipe's ingredients, and a batch's ingredients, weights, grams left and portions eaten by others.
get_food_log
ChatGPTEntries for one date, or a range up to 31 days. Entries include ids for update/delete.
get_nutrition_trend
ChatGPTPer-day calorie and macro totals for a range (default last 7 days), including days with no entries, plus averages over logged days.
get_profile
ChatGPTFood Tracker server 1.5.0. Timezone, meal plan (which meals the user eats, labels and time windows), body profile, estimated daily energy burn (BMR/TDEE), goal, targets and latest weight and body composition. The reply also states the server version.
get_targets
ChatGPTDaily calorie and macro targets in effect on a date (default today).
get_weight_log
ChatGPTWeight and body-composition entries for a date range (default last 30 days) with 7-day moving averages for weight, muscle and body fat.
list_foods
ChatGPTSearch the user's food library: saved foods, recipes and batches, with ids, nutrition per 100 g, serving weight and each batch's grams left.
log_activity
ChatGPTRecord steps, active/workout calories, workout minutes or water for a date (default today). Only passed fields change.
log_food
ChatGPTRecord one or more food items for a meal. Pass every item of the meal in one call. Returns the created entries and the day's running totals versus targets.
log_shared_portion
ChatGPTRecord grams of a batch eaten by someone else. It lowers the batch's grams left and is not added to the user's food log.
log_weight
ChatGPTRecord body weight for a date (default today), with body composition when known: body fat %, skeletal muscle mass, fat mass, body water, and tape measurements. Values may be read from a smart-scale or body-composition (InBody/BCA) printout photo. One row per date: logging the same date again overwrites weight; a composition field that is omitted keeps its stored value, null clears it.
open_pack
ChatGPTRecord that the user opened a pack (tub, loaf, jar) of a saved food, so what is left of it is counted from the portions logged since; correct what is left of the open pack; or stop counting. Returns the pack size, grams used and grams left.
save_food
ChatGPTSave an ingredient or packaged product to the user's food library, or update a saved one (by id, or the same name and brand). Values are per 100 g or per serving. Returns the saved values per 100 g and per serving.
save_recipe
ChatGPTSave a reusable recipe made of saved foods with their grams, or update one (by id, or the same name; the items replace the old list). Returns its totals and nutrition per 100 g and per serving.
set_meal_plan
ChatGPTThe user's meal plan: up to 12 meals plus the fixed catch-all 'other'. Each meal has a stable key, a label and an optional time window. Pass a preset (two_meals: lunch+dinner; three_meals; three_meals_two_snacks), or 'slots' as the whole plan in the order wanted: a slot without 'meal' creates a new meal (its key is derived from the label, e.g. 'Post-dinner snack' → post_dinner_snack); a known key or label updates that meal (omitted fields keep their values); meals not listed are turned off, not deleted. Use 'remove' to delete meals for good: their logged food moves to other. Renaming keeps the key and the entries.
set_meal_targets
ChatGPTSet calorie and macro targets per meal from a date onward (default today), for the meals in the user's plan. Pass explicit values per meal, or use_suggested: true to split the current daily target by how much each meal usually carries; explicit values override suggested ones. Explicit values patch the targets in effect: meals not mentioned keep theirs, and null clears a value. Or scale_to_daily: true to keep the current meal proportions and re-fit them to the daily target in effect. Meal targets are independent of the daily target and need not add up to it.
set_targets
ChatGPTSet daily calorie and macro targets from a date onward (default today). Earlier days keep their old targets. Pass explicit values, or use_suggested: true to take the goal-based suggestion (suggested_targets in the profile); explicit values override suggested ones.
update_batch
ChatGPTChange a batch: cooked weight, name, method, date, notes, finished or not, and remove portions recorded as eaten by others. Only the fields passed change.
update_food_entry
ChatGPTCorrect any field of an existing entry by id. Only the fields passed are changed.
update_profile
ChatGPTChange the goal (lose / maintain / gain), goal weight, body details, training schedule or timezone. Only the fields passed change. Returns the new energy estimate and goal-based suggested targets. Targets are not changed unless apply_suggested_targets is true.