complete_shopping_list
ChatGPTDone shopping — removes all checked items from the shopping list. The list stays active.
By Bara Vara AB
Connect your Dillr kitchen to Claude so it knows what's in your pantry, who's eating, and what you've cooked before. Claude can plan meals around real constraints, save recipes to your library, build shopping lists, and update your inventory — all in one conversation. Everything Claude writes syncs instantly to the Dillr app for everyone in your household, so you can plan at your desk and cook from your phone.
search_recipes, get_menu, get_cooking_history, get_kitchen_context): - /recipes/{recipeId} — a saved recipe in the personal library - /menus/{menuId}/recipes/{recipeId} — the inline snapshot inside a menu - /cooking_history/{historyId} — the inline snapshot inside a cooking history entry Copy the link substring from the source tool verbatim — no decomposition needed.link (from search_recipes). Does not modify the recipe itself — for that, use save_recipe.recipe block also adds that recipe to the user's library — so present the full plan first (the meals AND the recipes you're proposing) in your reply, and call save_menu only once the user has approved. Don't propose a plan and save it in the same turn. Two modes: - **content**: Full replace — provide the complete list of meals as markdown. Requires start_date (defaults end_date to start_date + 6 days). - A menu covers at most 7 nights. For a longer plan, save one menu per week, as separate save_menu calls. - **changes**: Edit an existing menu with SEARCH/REPLACE blocks on its markdown. Menu format (one bullet per meal): ` - Monday Dinner [Miso Glazed Tofu](/recipes/abc123) — Family weekday favorite - Double the glaze - Tuesday [Quick Stir Fry](/recipes/xyz789) - Dinner [Spaghetti Carbonara](/recipes/def456) — Pantry meal - [Grandma's pot roast](/recipes/ghi101) - Monday **Morning Pancakes** — Fluffy banana pancakes ` **Every meal should be cookable — give it a real recipe, don't just name it.** For each meal, do one of: 1. **Link** a recipe the user already has — find it with search_recipes and link it by id: [title](/recipes/{id}). 2. **Attach a new recipe** (the default for any new dish you're proposing) — write the meal as a **bold** title and put the FULL recipe in a fenced ``recipe block directly under the meal bullet. Dillr saves it to the library and links it automatically — no separate save_recipe call. Write the actual recipe (ingredients + steps), same markdown as save_recipe — do not just name the dish: ``` - Monday Dinner **Miso Glazed Tofu** — Family favorite `recipe Miso Glazed Tofu Ingredients - 400g firm tofu Instructions - Press the tofu, then sear. ` `` A bare **bold** title with NO recipe block is only for a meal that genuinely has no recipe (leftovers, eating out) — never use it as a shortcut to skip writing a recipe the user will want to cook. Don't save a names-only plan and offer to add recipes later; write them now. - Weekday and slot (Breakfast/Lunch/Dinner) prefixes are optional and case-insensitive. - Linked meals use [title](/recipes/{id}) from search_recipes. Menu-scoped links [title](/menus/{menu_id}/recipes/{id}) are also accepted. - Bare-title meals (no link) require **bold** title: - Monday Morning Pancakes. Linked meals already have bracket delimiters. - Weekday and slot values must be in English (Monday–Sunday, Breakfast/Lunch/Dinner). Titles and descriptions can be any language. - Optional description after — (space, em-dash, space). - Optional indented - …` bullets become the meal's notes. Only call save_menu once the user has approved the plan (see the note above). Refer to the menu by its name (or date range) in your reply — never show the user the menu_id; it's only an identifier for tool calls. SEARCH/REPLACE format: <<<<<<< SEARCH (exact text) ======= (replacement) >>>>>>> REPLACElink — the same link returned by get_recipe, search_recipes, and get_menu (e.g. /recipes/{id} or /menus/{menu_id}/recipes/{id}). For best results, call get_guide("recipe_creation") before writing a recipe. Recipe format: `` Recipe Title Ingredients Group name: (optional) - ingredient 1 - ingredient 2 Instructions - Step text - Timer: Label (Xs) - Starter: "Question?" - Tip: tip text Details Summary: Brief description Label: Short name Time: 30 minutes Yield: 4 servings Nutrition (optional) - Calories: 450 kcal Tips (optional) - Tip text `` SEARCH/REPLACE format: <<<<<<< SEARCH (exact text) ======= (replacement) >>>>>>> REPLACE **Category** - [ ] Item (qty) → recipe - [x] Checked item ` Group items under Category headers. Write category names in the user's language. Order categories from fresh to shelf-stable. Checkbox format: - [ ] item (qty) → recipe (legacy — for recipe is also accepted) or - [x] item`. SEARCH/REPLACE format: <<<<<<< SEARCH (exact text) ======= (replacement) >>>>>>> REPLACElink column — copy a [title](/recipes/{id}) cell verbatim into get_recipe. WHERE clause examples: Equality: {"cuisines":"italian"} Array member: {"tags":{"contains":"vegetarian"}} Any-of: {"tags":{"contains_any":["vegetarian","vegan"]}} Comparison: {"cook_time_minutes":{"lte":30}} AND (implicit): {"cuisines":"italian","cook_time_minutes":{"lte":30}} OR: {"or":[{"cuisines":"italian"},{"cuisines":"mexican"}]} NOT: {"not":{"tags":{"contains":"dessert"}}} Title search: {"title":{"contains":"lasagna"}} Nutrition: {"nutrition_calories":{"lte":400}}, {"nutrition_protein_g":{"gte":30}} Operators: eq, gt, gte, lt, lte (comparison); contains, contains_any, contains_all (arrays); and, or, not (logical). IMPORTANT: All indexed values including titles are normalized to English, lowercase, singular. Use "chicken" not "Chicken", "pancake" not "Pannkakor". get_recipe_stats helps discover available filter values. Omit where entirely to list all recipes. Note: recently saved recipes may take a moment to appear in search results.## kind headers and - fact bullets. - changes: Edit existing profile with SEARCH/REPLACE blocks. Write ## kind headers in the user's language. SEARCH/REPLACE format: <<<<<<< SEARCH (exact text) ======= (replacement) >>>>>>> REPLACE