{"serverId":"mcp-registry/com.pinch-app/grocery","tools":[{"name":"batch_search","fixed":{"name":"batch_search","description":"ADVANCED / manual selection. Do NOT use this to build a shopping list: for any list of 2 or more items, call build_basket (one call, server-side, cheapest pick per item). Use batch_search only when you need the RAW candidate products for items you intend to select MANUALLY (for example, to override build_basket's pick on one item). It searches multiple items in parallel and returns raw candidate products per query (up to candidates_per_retailer per retailer) with NO filtering or scoring applied.","inputSchema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","items":{"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"Item name as on a shopping list (e.g., 'chicken breast 1kg', 'fresh rosemary', 'sea salt')"},"category":{"type":"string","description":"Explicit category filter (e.g., 'Fruit & Vegetables'). Overrides product_type."},"product_type":{"enum":["fresh_produce","meat","dairy","pantry","frozen","drinks","bakery","deli"],"type":"string","description":"Category hint. Set fresh_produce for fruits/vegetables/herbs, meat for raw proteins, dairy for milk/cheese/eggs/yoghurt, pantry for canned/dried/shelf-stable goods."}}},"description":"List of grocery items to search (1-20 items)."},"retailers":{"type":"array","items":{"enum":["Woolworths","Coles","Aldi","Harris Farm"],"type":"string"},"description":"Filter to these retailers only. If omitted, all 4 are searched."},"candidates_per_retailer":{"type":"number","description":"Number of candidate products to return per retailer per item (1-30, default 10). Use more candidates if you expect ambiguous results."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":470,"tokensAfter":470},{"name":"compare_prices","fixed":{"name":"compare_prices","description":"Compare prices for the same product across retailers using its barcode. Returns all retailers stocking the product, sorted cheapest first. About 7,800 products have barcode matches.","inputSchema":{"type":"object","required":["barcode"],"properties":{"barcode":{"type":"string","description":"EAN-13 barcode (e.g., '9300675016902')"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":105,"tokensAfter":105},{"name":"get_cheapest","fixed":{"name":"get_cheapest","description":"Find the cheapest option for a product across all Australian grocery retailers. Searches by name and returns results sorted by price ascending.","inputSchema":{"type":"object","required":["product_name"],"properties":{"limit":{"type":"number","description":"Number of results (1-50, default 10)"},"product_name":{"type":"string","description":"Product to search for (e.g., 'full cream milk 2L')"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":122,"tokensAfter":122},{"name":"get_price_history","fixed":{"name":"get_price_history","description":"Get historical price data for a product. Shows price changes over time with stats (lowest, highest, average). History depth depends on your tier (30-365 days).","inputSchema":{"type":"object","required":["product_id"],"properties":{"days":{"type":"number","description":"Number of days of history (default: max for your tier)"},"product_id":{"type":"string","description":"Product ID from search results"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":126,"tokensAfter":126},{"name":"get_product","fixed":{"name":"get_product","description":"Get detailed information about a specific grocery product by its ID. Product IDs are returned in search results.","inputSchema":{"type":"object","required":["product_id"],"properties":{"product_id":{"type":"string","description":"Product ID from search results"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":84,"tokensAfter":84},{"name":"get_specials","fixed":{"name":"get_specials","description":"Get current grocery specials and promotions. Filter by retailer or category. Results include savings amounts. Updated weekly. Specials captured before the most recent Wednesday catalogue changeover (Coles/Woolworths) are excluded as unconfirmed; after a changeover the list can be near-empty until the next collection. Individual products still expose such prices via get_product with special_may_have_ended: true.","inputSchema":{"type":"object","properties":{"limit":{"type":"number","description":"Number of results (1-50, default 20)"},"category":{"type":"string","description":"Filter by category"},"retailer":{"enum":["Woolworths","Coles","Aldi","Harris Farm"],"type":"string"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":202,"tokensAfter":202},{"name":"search_products","fixed":{"name":"search_products","description":"Search Australian grocery products across Woolworths, Coles, Aldi, and Harris Farm. Returns product name, price, brand, category, unit price, and whether it's on special.","inputSchema":{"type":"object","required":["query"],"properties":{"sort":{"enum":["relevance","price_asc","price_desc","unit_price_asc"],"type":"string","default":"relevance"},"limit":{"type":"number","description":"Number of results (1-50, default 20)"},"query":{"type":"string","description":"Search query (e.g., 'full cream milk', 'chicken breast')"},"category":{"type":"string","description":"Filter by category"},"retailer":{"enum":["Woolworths","Coles","Aldi","Harris Farm"],"type":"string"},"on_special":{"type":"boolean","description":"If true, only return products on special"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":223,"tokensAfter":223}],"toolsChanged":7,"tokensSaved":0,"todo":[{"tool":"get_specials","params":["retailer"]},{"tool":"search_products","params":["sort","retailer"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}