{"ok":true,"site":{"host":"m.dearmydeer.com","url":"https://m.dearmydeer.com/","type":"live","category":"Commerce","desc":"Online store with product search, cart management and checkout tools.","tools":[{"name":"search-products","kind":"answer","impl":"imperative","description":"Searches products in this store. In addition to a product name you can pass situational tags (season, style, place, purpose) for a more precise search. Present the results in the order they appear in the array. Reordering them makes the user pick a different product when they refer to one by position, such as the second one.","annotations":{"readOnlyHint":true,"untrustedContentHint":true,"consequentialHint":false},"inputSchema":{"type":"object","required":["product_name"],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to the search results page. If exactly one product matches, it moves to that product page instead. Only set true when the user asks to be taken somewhere (show me / open it / go there). Omit it when the user is only asking a question. Defaults to false; when true the page actually changes."},"product_name":{"type":"string","description":"Product name to search for, for example 't-shirt' or 'sneakers'. Separate multiple names with commas. Map the central product type of the user request to this field."},"product_tag":{"type":"string","description":"Situational tags such as season, occasion or purpose, extracted from the user request. For example: summer, commute, hiking, home workout. Separate multiple tags with commas."},"price_min":{"type":"number","description":"Minimum price. Map expressions such as 'over 10,000 won', 'at least $10' or 'from $20'. Pass digits only; currency handling is done by the store."},"price_max":{"type":"number","description":"Maximum price. Map expressions such as 'under 50,000 won', 'under $50' or 'at most 30,000 won'. Pass digits only."},"sort":{"type":"string","enum":["created_date","product_name","updated_date"],"enumNames":["Registration date","Product name","Last modified date"],"description":"Sort key for the results. Map it when the user asks for newest first, by name, or recently updated."},"order":{"type":"string","enum":["asc","desc"],"enumNames":["Ascending","Descending"],"description":"Sort direction. Defaults to desc. Map it when the user asks for ascending order, lowest price first, or most recent first."},"limit":{"type":"integer","description":"Maximum number of results. Map it when the user names a count such as 'just 10' or 'top 5'. Omit to use the default."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"search-products-detail","kind":"answer","impl":"imperative","description":"Retrieves the detail of one product by product number. When the user refers to a product by position, such as the second one, use the product_no at that index of the previous search-products result. The array order is the reference, not any order you presented.","annotations":{"readOnlyHint":true,"untrustedContentHint":true,"consequentialHint":false},"inputSchema":{"type":"object","required":["product_no"],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to that product page. When the request identifies a single product, set true whether the user says tell me or show me, because the user is about to look at it. Omit it only while looking up several products in a row to compare them. Defaults to false; when true the page actually changes."},"product_no":{"type":"integer","description":"Product number"},"shop_no":{"type":"integer","description":"Multi-store number"},"variants_verbose":{"type":"boolean","description":"Set to true to expand variant detail. Each variant then carries additional_amount and option_axes, up to 100 variants are returned, and the response includes variants_total and variants_truncated. Defaults to false, which returns at most 5 variants."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"get_cart","kind":"answer","impl":"imperative","description":"Retrieves the items and amounts in the user cart. Called with no arguments it reads the cart shown on the store cart page. Use it for requests such as what is in my cart or what is the total.","annotations":{"readOnlyHint":true,"consequentialHint":false},"inputSchema":{"type":"object","required":[],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to the cart page. Only set true when the user asks to be taken somewhere (show me / open it / go there). Omit it when the user is only asking a question. Defaults to false; when true the page actually changes."},"cart_id":{"type":"string","description":"Cart identifier to read. Omit it to read the cart on the screen the user is viewing; normally omit it."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create_cart","kind":"act","impl":"imperative","description":"Adds a product to the cart. With no arguments it adds the variant and quantity the user has selected on the product page they are viewing. The result is reflected in the store cart page as-is. Some products can be shipped either domestically or internationally, and domestic and international items go into separate carts. For those products you must ask the user which one they want and pass delivery_type; never choose it yourself.","annotations":{"readOnlyHint":false,"consequentialHint":false},"inputSchema":{"type":"object","required":[],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to the cart page after adding. Only set true when the user asks to be taken somewhere (show me / open it / go there). Omit it when the user is only asking a question. Defaults to false; when true the page actually changes."},"delivery_type":{"type":"string","enum":["domestic","overseas"],"description":"Shipping the user chose for products that offer both domestic and international shipping. Ask the user before setting it. It is ignored for products that ship only one way."},"cart":{"type":"object","description":"Items to add. Omit it to use the selection on the current product page. It cannot be omitted on pages other than a product detail page.","properties":{"line_items":{"type":"array","description":"Items to add","items":{"type":"object","properties":{"item":{"type":"object","properties":{"id":{"type":"string","description":"Variant identifier (cafe24_{mall}_{shop}_{product_no}_{item_code})"}},"required":["id"]},"quantity":{"type":"integer","description":"Quantity to add"}},"required":["item","quantity"]}},"buyer":{"type":"object","description":"Buyer information (email, name, phone)"},"context":{"type":"object","description":"Context such as shipping country, region and postal code"}},"required":["line_items"]}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"update_cart","kind":"act","impl":"imperative","description":"Changes the quantity of items already in the cart, or removes an item. Specify only the items you want to change; the rest stay as they are. A quantity of 0 removes that item. Identify items by the item.id from a get_cart result.","annotations":{"readOnlyHint":false,"consequentialHint":false},"inputSchema":{"type":"object","required":["items"],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to the cart page after updating. Only set true when the user asks to be taken somewhere (show me / open it / go there). Omit it when the user is only asking a question. Defaults to false; when true the page actually changes."},"items":{"type":"array","description":"Items whose quantity should change. Items you do not list stay as they are.","items":{"type":"object","required":["item_id","quantity"],"properties":{"item_id":{"type":"string","description":"item.id from a get_cart result, for example cafe24_mall_1_22_P000000W000A"},"quantity":{"type":"integer","description":"New quantity. 0 removes the item from the cart."}}}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"cancel_cart","kind":"act","impl":"imperative","description":"Empties the whole cart. This cannot be undone, so the tool does not run it immediately; it shows a confirmation button on screen and the user has to press it.","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","required":[],"properties":{"navigate":{"type":"boolean","description":"Set to true to move the browser to the cart page after emptying. Only set true when the user asks to be taken somewhere (show me / open it / go there). Omit it when the user is only asking a question. Defaults to false; when true the page actually changes."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create-checkout-url","kind":"transact","impl":"imperative","description":"Creates a checkout page for buying one product immediately. This bypasses the cart and cannot order multiple products at once. To order everything in the cart, use create-cart-checkout-url instead. This tool always moves the browser to the checkout page it creates. Navigation is not optional, so do not tell the user to click a link.","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","required":[],"properties":{"product_no":{"type":"integer","description":"Product number. Omit it to use the product on the page the user is currently viewing. It cannot be omitted on pages other than a product detail page."},"variant_code":{"type":"string","description":"Variant code. Omit it to use the variant the user has selected on the current product page."},"quantity":{"type":"integer","description":"Quantity to buy. Omit it to use the quantity field on the current page, falling back to 1."}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"create-cart-checkout-url","kind":"transact","impl":"imperative","description":"Creates a checkout page for the items in the cart. Without item_ids it orders the entire cart. When the user wants only part of it, such as just what I added, only this one, or only the jeans, you must call get_cart first and pass those item.id values in item_ids. Without them the other items in the cart are ordered too. Domestic and international shipping items cannot be checked out together; if the cart has both, ask the user which group to check out and pass that group's item_ids. To buy one product immediately without using the cart, use create-checkout-url. This tool always moves the browser to the checkout page it creates. Navigation is not optional, so do not tell the user to click a link.","annotations":{"readOnlyHint":false,"consequentialHint":true},"inputSchema":{"type":"object","required":[],"properties":{"item_ids":{"type":"array","description":"Restricts the order to these items. Pass item.id values from a get_cart result. Omit it to order the entire cart.","items":{"type":"string"}}}},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"apiSurface":"spec","favicon":"/favicons/m.dearmydeer.com.png","toolCount":8}}