{"ok":true,"site":{"host":"co-shop-puce.vercel.app","url":"https://co-shop-puce.vercel.app/","type":"live","desc":"CoShop is a WebMCP-powered storefront where a person and their AI agent can browse, compare, and check out together.","tools":[{"name":"search_products","kind":"answer","impl":"imperative","description":"Search the CoShop product catalog by keyword. Matches against product name, description, and category. Returns product ids that can be used with get_product_details or add_to_cart.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Free-text search, e.g. 'running shoes' or 'rain jacket'."}},"required":["query"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"filter_products","kind":"act","impl":"imperative","description":"Filter the CoShop product catalog by category, price range, size, and/or color. All fields are optional and combine with AND logic.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"category":{"type":"string","enum":["Shoes","Apparel"],"description":"Product category to filter by."},"minPrice":{"type":"number","description":"Minimum price in USD, inclusive."},"maxPrice":{"type":"number","description":"Maximum price in USD, inclusive."},"size":{"type":"string","description":"Required size, e.g. '10' or 'M'."},"color":{"type":"string","description":"Required color, e.g. 'Black'."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"get_product_details","kind":"answer","impl":"imperative","description":"Get full details for a single product by id, including price, available sizes, colors, and stock. Use the id returned by search_products or filter_products.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"The product id."}},"required":["productId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"compare_products","kind":"act","impl":"imperative","description":"Compare two or more products side by side by id. Useful when a shopper is deciding between similar items.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"productIds":{"type":"array","items":{"type":"string"},"minItems":2,"description":"Two or more product ids to compare."}},"required":["productIds"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"add_to_cart","kind":"act","impl":"imperative","description":"Add a product to the shopping cart with a chosen size, color, and quantity. Requires a valid productId from search_products, filter_products, or get_product_details.","inputSchema":{"type":"object","properties":{"productId":{"type":"string","description":"The product id to add."},"size":{"type":"string","description":"The size to add, must be one of the product's available sizes."},"color":{"type":"string","description":"The color to add, must be one of the product's available colors."},"qty":{"type":"number","minimum":1,"description":"Quantity to add. Defaults to 1."}},"required":["productId","size","color"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"view_cart","kind":"act","impl":"imperative","description":"View the current shopping cart contents, subtotal, and total.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"remove_from_cart","kind":"act","impl":"imperative","description":"Remove a line item from the shopping cart. Use the itemId shown in view_cart's output, not the productId.","inputSchema":{"type":"object","properties":{"itemId":{"type":"string","description":"The cart line item id to remove."}},"required":["itemId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"apply_discount_code","kind":"act","impl":"imperative","description":"Apply a discount code to the current cart.","inputSchema":{"type":"object","properties":{"code":{"type":"string","description":"The discount code to apply, e.g. 'WEBMCP10'."}},"required":["code"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"checkout","kind":"transact","impl":"imperative","description":"Prepare checkout for everything currently in the cart and hand it to the shopper for final confirmation. This does NOT place the order — a confirmation banner appears in the storefront that only the human shopper can accept or decline. The cart must not be empty. After calling this, tell the shopper their order is ready to confirm; use cancel_checkout to withdraw it instead.","inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"cancel_checkout","kind":"transact","impl":"imperative","description":"Withdraw a checkout that was previously prepared with the checkout tool, before the shopper confirms it.","inputSchema":{"type":"object","properties":{},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]},{"name":"get_order_status","kind":"answer","impl":"imperative","description":"Look up the status of a previously placed order by its order id.","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","properties":{"orderId":{"type":"string","description":"The order id returned by checkout."}},"required":["orderId"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/","/cart","/product/trailblazer-runner","/product/urban-glide-sneaker","/product/cloudstep-walking-shoe","/product/peak-hiker-boot"]}],"category":"Commerce","favicon":"/favicons/co-shop-puce.vercel.app.ico","apiSurface":"spec","toolCount":11}}