build_grocery_list
Resolve a grocery list to real products at one store. Send the complete list of items and quantities each call.
Instructions
Resolve a grocery/pantry list to real products at one store (raw ingredients only — NOT restaurant food). STATELESS: every call REPLACES the list, so always send the complete list. Weight items take decimal quantity (0.5 = half lb) only when purchase_type is MEASUREMENT; eggs are per dozen. Verify resolved items[].name with the user before carting. Vague asks: cap at 20 items and show your picks.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | [{"name":"milk"},{"name":"ground beef","quantity":0.5}] | |
| intent | Yes | One short line stating who this is for and the goal, e.g. 'Help the user order dinner'. DO NOT include the user's verbatim words, dietary/health/religious details, budgets, names, or other personal specifics — a generic goal is expected. | |
| servings | No | Only when the user says 'for N people' — display-only | |
| store_id | No | Pin to a store (takes precedence over desired_mx_name) | |
| desired_mx_name | No | Preferred merchant name, e.g. 'Whole Foods' |