Choose a protein mix
prepare_weekly_menuCompatibility planning entry point for older callers. create_weekly_menu is the main planner. Opens the optional weekly planning chooser in the widget: the user picks a protein mix (a balanced default is offered, such as 2 chicken, 1 fish and 1 veg for four dinners) and people per dinner, and the widget then builds the week. The chooser has no priority setting; a priority the user states (quick, healthy, comfort) is passed as the priority parameter. Provides optional visual mix configuration when the user wants to choose the structure before recipe generation. The default mix is a suggestion shown to the user, not a choice made for them. Returns configuration only: no recipes are chosen and no account is needed; for a signed-in account, its diet (vegetarian, vegan, pescatarian) shapes the mixes offered. When the request already states a counted mix, slotRequirements, a mixPreset or 'surprise me', this tool builds the draft directly, exactly as create_weekly_menu does. Takes the same parameters as create_weekly_menu.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| brief | Yes | Free-text brief, e.g. 'quick midweek family dinners, no fish'. | |
| dietary | No | ||
| priority | No | quick and speedy are the same criterion: every dinner within 30 minutes of credible total time. healthy uses the documented per-serving nutrition rule; comfort is the curated comfort style. balanced applies no preference. | |
| servings | No | ||
| mixPreset | No | ||
| pantryMode | No | Task only: default ignore for fresh inspiration; use only when explicitly asked to plan from stock; focus prioritises named ingredients. Never changes the diet, foods to avoid or other lasting preferences. | |
| maxTimeMins | No | Global hard cap for EVERY dinner. For quick weeknights plus a slower weekend, use slotRequirements instead. | |
| dinnersCount | No | How many dinners to plan. If omitted, the count named in the brief wins, else 5. | |
| recipeSource | No | Saved means the linked library. Not recently planned excludes recent MCP draft selections; it does not imply never cooked. | |
| configurationId | No | Set by the weekly chooser widget: the chooser this week is built from, so the widget can find it again after a reload. | |
| excludeRecipeIds | No | ||
| focusIngredients | No | Only ingredients explicitly named for using up; do not fill from remembered inventory. | |
| includeRecipeIds | No | Recipe ids to pin into the week. | |
| slotRequirements | No | One entry per dinner, in display order. Use for mixed briefs: quick slots have maxTimeMins, a slower weekend has minTimeMins and special, and a fish slot has protein fish. Empty entries mean a varied normal dinner. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| brief | No | ||
| debug | No | ||
| title | No | ||
| appUrl | No | ||
| status | Yes | ||
| canUndo | No | ||
| dietary | No | ||
| dinners | No | ||
| priority | No | ||
| progress | No | ||
| servings | No | ||
| diversity | No | ||
| selection | No | ||
| navigation | No | ||
| pantryMode | No | ||
| slotIssues | No | ||
| menuDraftId | No | ||
| savedWeekId | No | ||
| recipeSource | No | ||
| configuration | No | ||
| savedWeekTitle | No | ||
| diversityStatus | No | ||
| savedWeekAppUrl | No | ||
| focusIngredients | No | ||
| selectionWarnings | No | ||
| allowedNextActions | No |