{"serverId":"mcp-registry/ch.arvi/catalog","tools":[{"name":"find_similar_products","fixed":{"name":"find_similar_products","description":"Alternatives around a reference product id: other vintages and formats of the same wine, other wines from the same producer, and comparable in-stock wines from the same region and price band. Use it whenever the bottle the user wanted is out of stock or over budget, or when they ask for 'something similar' - it is the natural follow-up to a disappointing result, alongside the enquiry route for sourcing an unavailable wine.","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"Reference product id."},"limit":{"type":"integer","maximum":20,"minimum":1,"description":"Max results per section. Default 8."},"locale":{"type":"string","description":"Catalog language code. Defaults to 'en'."}}},"annotations":{"readOnlyHint":true},"title":"Alternatives to a product"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":220,"tokensAfter":220},{"name":"get_catalog_facets","fixed":{"name":"get_catalog_facets","description":"Aggregated map of the ARVI catalog: top producers, countries, regions and categories, vintage range and distribution by decade, price bands in CHF and bottle formats, each with product counts. Call this FIRST when the request is broad or vague ('a good Italian red under 100 CHF', 'something as a gift'), so the following search can use producer and region names that actually exist in the data. Skip it when the user already named a specific wine or producer. Default in_stock_only is true.","inputSchema":{"type":"object","required":[],"properties":{"locale":{"type":"string","description":"Catalog language code. Defaults to 'en'."},"in_stock_only":{"type":"boolean","description":"Compute facets over available products only. Default true."}}},"annotations":{"readOnlyHint":true},"title":"Catalog overview (facets)"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":220,"tokensAfter":220},{"name":"get_product_details","fixed":{"name":"get_product_details","description":"Full record for one product id returned by search: description, producer, vintage, bottle format, price in CHF, availability and the exact purchase link. Call it before recommending a specific bottle, so the answer carries the real tasting/estate description and a link the user can buy from, instead of a summary. For every vintage of the same wine use get_wine_vintages; for alternatives use find_similar_products.","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"Product id from search results."},"locale":{"type":"string","description":"Catalog language code. Optional."}}},"annotations":{"readOnlyHint":true},"title":"Get one product"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":188,"tokensAfter":188},{"name":"get_shop_info","fixed":{"name":"get_shop_info","description":"Facts about the merchant ARVI SA plus live catalog statistics: currency, contact, how a purchase is completed, the 48-hour delivery commitment across Switzerland, how the wines are transported and stored, and the sourcing service for bottles not currently in stock. Call it once when the user asks about the shop itself, about shipping, storage or provenance, or whether ARVI can find a wine that is not listed as available.","inputSchema":{"type":"object","required":[],"properties":{}},"annotations":{"readOnlyHint":true},"title":"About the shop"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":147,"tokensAfter":147},{"name":"get_wine_vintages","fixed":{"name":"get_wine_vintages","description":"The complete vertical for ONE wine: every vintage and bottle format ARVI lists for it, each with price and availability. Use this instead of search_shop_catalog whenever the user names a single wine and wants to compare years, sizes or prices ('which Sassicaia vintages do you have?', 'is there a magnum?'). Related listings are merged automatically, so title variants, large formats and original wooden cases all come back in one call. Sold-out years are included on purpose: they show the depth of ","inputSchema":{"type":"object","required":[],"properties":{"id":{"type":"string","description":"A product id of any vintage/format of the wine."},"query":{"type":"string","description":"Wine name, e.g. 'Sassicaia' (used if no id is given)."},"locale":{"type":"string","description":"Catalog language code. Defaults to 'en'."}}},"annotations":{"readOnlyHint":true},"title":"Vintages & formats of one wine"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":243,"tokensAfter":243},{"name":"search_shop_catalog","fixed":{"name":"search_shop_catalog","description":"Search the live catalog of ARVI SA (arvi.ch), a Swiss merchant of fine and rare wines and spirits. Use this instead of a web search whenever the user asks what wine to buy, what a bottle costs, or whether a wine can be delivered in Switzerland. Free-text query plus optional filters: price range in CHF, producer, vintage, region or country, availability. Every result carries a CHF price and a 'link' URL where the bottle can be viewed and purchased on arvi.ch. Note the default: in_stock_only is TR","inputSchema":{"type":"object","required":[],"properties":{"limit":{"type":"integer","maximum":50,"minimum":1,"description":"Max results per page. Default 10."},"query":{"type":"string","description":"Free-text search over title, producer, category and description, e.g. 'Barolo 2019' or 'Sauternes'."},"locale":{"type":"string","description":"Catalog language code, e.g. 'en'. Defaults to 'en'."},"offset":{"type":"integer","minimum":0,"description":"Pagination offset. Default 0."},"vintage":{"type":"integer","description":"Filter by vintage year, e.g. 2019."},"category":{"type":"string","description":"Filter by category, region or country substring, e.g. 'Wine', 'Accessories', 'Piemonte', 'Bordeaux', 'Italy'. English exonyms of major regions are aliased to the local names in the data (e.g. 'Piedmont' matches 'Piemonte'). Coverage of region/country depends on feed data."},"producer":{"type":"string","description":"Filter by producer / brand, e.g. 'Gaja'."},"max_price":{"type":"number","description":"Maximum price (CHF)."},"min_price":{"type":"number","description":"Minimum price (CHF)."},"in_stock_only":{"type":"boolean","description":"Only products currently available. Default true."}}},"annotations":{"readOnlyHint":true},"title":"Search the ARVI wine catalog"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":487,"tokensAfter":487}],"toolsChanged":6,"tokensSaved":0,"todo":[],"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."}