{"serverId":"mcp-registry/com.eurocollis/eurocollis","tools":[{"name":"convert_currency","fixed":{"name":"convert_currency","description":"Convert an amount between EuroCollis-supported currencies using live MAD-based rates.","inputSchema":{"type":"object","required":["amount","from_currency","to_currency"],"properties":{"amount":{"type":"number"},"to_currency":{"type":"string"},"from_currency":{"type":"string"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":98,"tokensAfter":98},{"name":"estimate_customs","fixed":{"name":"estimate_customs","description":"Indicative duty + VAT estimate. NOT authoritative — always render the returned disclaimer verbatim.","inputSchema":{"type":"object","required":["destination_country","declared_value_eur"],"properties":{"category":{"type":"string"},"declared_value_eur":{"type":"number"},"destination_country":{"type":"string","description":"ISO-3166 alpha-2"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":116,"tokensAfter":116},{"name":"get_cities","fixed":{"name":"get_cities","description":"Supported pickup/delivery cities for one country. Use these exact names as origin_city / destination_city in get_quote.","inputSchema":{"type":"object","required":["country"],"properties":{"country":{"type":"string","description":"ISO-3166 alpha-2, e.g. MA or FR"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":93,"tokensAfter":93},{"name":"get_courier","fixed":{"name":"get_courier","description":"Public profile for one courier by storefront slug or courier id. No PII.","inputSchema":{"type":"object","required":["courier"],"properties":{"courier":{"type":"string","description":"Storefront slug or courier UUID"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":80,"tokensAfter":80},{"name":"get_eurocollis_info","fixed":{"name":"get_eurocollis_info","description":"What EuroCollis is, the corridors it operates, currency, deposit model and where bookings are completed.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":64,"tokensAfter":64},{"name":"get_prohibited_items","fixed":{"name":"get_prohibited_items","description":"Items EuroCollis and Morocco/EU customs prohibit. Always surface before a booking recommendation.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":62,"tokensAfter":62},{"name":"get_quote","fixed":{"name":"get_quote","description":"Authoritative price quote for a Europe ↔ Africa shipment, returned from the same pricing engine the website uses. Provide weight_kg for boxes/suitcases or items[] for catalogue goods. Never re-compute prices yourself.","inputSchema":{"type":"object","required":["origin_country","origin_city","destination_country","destination_city"],"properties":{"items":{"type":"array","items":{"type":"object","required":["quantity"],"properties":{"name":{"type":"string"},"item_id":{"type":"string"},"quantity":{"type":"number"}}},"description":"Catalogue goods. Use item_id (or name) from get_services."},"flex_days":{"type":"number","description":"Search window after pickup_date (default 14)"},"weight_kg":{"type":"number","description":"Total weight for box/suitcase shipments"},"origin_city":{"type":"string"},"pickup_date":{"type":"string","description":"YYYY-MM-DD, defaults to today"},"origin_country":{"type":"string","description":"ISO-3166 alpha-2"},"destination_city":{"type":"string"},"destination_country":{"type":"string","description":"ISO-3166 alpha-2"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":313,"tokensAfter":313},{"name":"get_routes","fixed":{"name":"get_routes","description":"Every supported Europe ↔ Africa corridor. Optionally scope to one corridor for live trip volume.","inputSchema":{"type":"object","properties":{"origin_country":{"type":"string","description":"ISO-3166 alpha-2"},"destination_country":{"type":"string","description":"ISO-3166 alpha-2"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":98,"tokensAfter":98},{"name":"get_services","fixed":{"name":"get_services","description":"Shippable item catalogue with pricing units — use item_id values when calling get_quote with items.","inputSchema":{"type":"object","properties":{},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":60,"tokensAfter":60},{"name":"get_storefront","fixed":{"name":"get_storefront","description":"Published courier storefront with its canonical URL (custom domain / subdomain / platform path) and corridor pages. Omit slug to list storefronts.","inputSchema":{"type":"object","properties":{"slug":{"type":"string"},"limit":{"type":"number","description":"Used when listing"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":97,"tokensAfter":97},{"name":"search_couriers","fixed":{"name":"search_couriers","description":"Live, verified couriers with upcoming trips on a corridor. Demo accounts, unverified couriers and past departures are excluded.","inputSchema":{"type":"object","properties":{"limit":{"type":"number"},"from_date":{"type":"string","description":"YYYY-MM-DD, defaults to today"},"origin_country":{"type":"string","description":"ISO-3166 alpha-2"},"destination_country":{"type":"string","description":"ISO-3166 alpha-2"}},"additionalProperties":false},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":136,"tokensAfter":136}],"toolsChanged":11,"tokensSaved":0,"todo":[{"tool":"convert_currency","params":["amount","to_currency","from_currency"]},{"tool":"estimate_customs","params":["category","declared_value_eur"]},{"tool":"get_quote","params":["origin_city","destination_city"]},{"tool":"get_storefront","params":["slug"]},{"tool":"search_couriers","params":["limit"]},{"tool":"track_shipment","params":["delivery_city"]}],"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."}