Change the meals behind the grocery list
update_mealsAdd, remove, replace or edit the meals behind the user's grocery list; their ingredients go on and off the list to match, in one transaction. Send a whole plan at once with add (at most 21 meals, 40 ingredients each, amounts in any unit). Shared ingredients are combined where units allow. Removing a meal lowers what's needed of shared items and removes items no other meal needs, but never items added by hand; ticked items stay, marked noLongerNeeded. replace swaps a meal for another in one step. Returns the list like get_list plus change (items added and removed, estimate before and after) and undo: the update_meals arguments that reverse it.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "update_meals"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| add | No | ||
| near | No | Where to price the list. Remembered for next time; omit to use the last place. | |
| remove | No | ||
| update | No | ||
| replace | No | ||
| radiusKm | No | Search radius in km around `near` (default 5). | |
| maxStores | No | Shop at most this many stores (remembered; null clears it). The list is split across the set that prices the most items for the least. | |
| preferBanners | No | Only these banners, e.g. ["no-frills", "food-basics"] (remembered; null clears it). |