Tool tree
A specialty coffee gear shop where you and your agent build the cart together.
Implementation
gradeNot graded
gradeNot graded
search_productsAnswer
Search Cairn's product catalog by keyword. Matches against name, description, category, and tags.
View tool JSON
{
"name": "search_products",
"kind": "answer",
"impl": "imperative",
"description": "Search Cairn's product catalog by keyword. Matches against name, description, category, and tags.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text search term, e.g. 'grinder' or 'pour-over'."
}
},
"required": [
"query"
]
}
}filter_productsAction
Filter products by category, price range, and/or stock availability. All fields optional.
View tool JSON
{
"name": "filter_products",
"kind": "act",
"impl": "imperative",
"description": "Filter products by category, price range, and/or stock availability. All fields optional.",
"inputSchema": {
"type": "object",
"properties": {
"category": {
"type": "string",
"description": "One of: grinders, kettles, filters, scales, beans"
},
"minPrice": {
"type": "number",
"description": "Minimum price in USD."
},
"maxPrice": {
"type": "number",
"description": "Maximum price in USD."
},
"inStockOnly": {
"type": "boolean",
"description": "If true, only return items currently in stock."
}
}
}
}get_product_detailsAnswer
Get full details for a single product by its id.
View tool JSON
{
"name": "get_product_details",
"kind": "answer",
"impl": "imperative",
"description": "Get full details for a single product by its id.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product id, e.g. 'grind-01'."
}
},
"required": [
"productId"
]
}
}add_to_cartAction
Add a product to the shared cart. This updates the same cart the human sees on screen.
View tool JSON
{
"name": "add_to_cart",
"kind": "act",
"impl": "imperative",
"description": "Add a product to the shared cart. This updates the same cart the human sees on screen.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product id to add."
},
"quantity": {
"type": "integer",
"minimum": 1,
"description": "How many to add. Defaults to 1."
}
},
"required": [
"productId"
]
}
}update_cart_quantityAction
Set the quantity of a product already in the cart. Setting quantity to 0 removes it.
View tool JSON
{
"name": "update_cart_quantity",
"kind": "act",
"impl": "imperative",
"description": "Set the quantity of a product already in the cart. Setting quantity to 0 removes it.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product id to update."
},
"quantity": {
"type": "integer",
"minimum": 0,
"description": "New quantity."
}
},
"required": [
"productId",
"quantity"
]
}
}remove_from_cartAction
Remove a product entirely from the cart.
View tool JSON
{
"name": "remove_from_cart",
"kind": "act",
"impl": "imperative",
"description": "Remove a product entirely from the cart.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "The product id to remove."
}
},
"required": [
"productId"
]
}
}apply_couponAction
Apply a discount coupon code to the cart. Returns an error if the code is invalid or the cart doesn't meet its minimum.
View tool JSON
{
"name": "apply_coupon",
"kind": "act",
"impl": "imperative",
"description": "Apply a discount coupon code to the cart. Returns an error if the code is invalid or the cart doesn't meet its minimum.",
"inputSchema": {
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Coupon code, e.g. 'PEBBLE10'."
}
},
"required": [
"code"
]
}
}get_cart_summaryAnswer
Read-only: returns the current cart contents, subtotal, discount, and total. Cannot modify or complete the order.
View tool JSON
{
"name": "get_cart_summary",
"kind": "answer",
"impl": "imperative",
"description": "Read-only: returns the current cart contents, subtotal, discount, and total. Cannot modify or complete the order.",
"inputSchema": {
"type": "object",
"properties": {}
}
}