Tool tree
gradeNot graded
list_categoriesAnswer
List all product categories in the store with the number of products in each. Use this first to orient yourself.
View tool JSON
{
"name": "list_categories",
"kind": "answer",
"impl": "imperative",
"description": "List all product categories in the store with the number of products in each. Use this first to orient yourself.",
"inputSchema": {
"type": "object",
"properties": {},
"required": []
}
}search_productsAnswer
Search the product catalog. Combine query (text in name/description/brand/tags), category (Footwear|Electronics|Clothing|Home|Books|Beauty), brand, tag, minPrice, maxPrice (in INR), and sort (relevance|price-low|price-high|rating|discount). Example: find shoes under ₹2000 → { query: 'shoes', maxPrice: 2000 }. Returns matching products with id, name, price, rating, brand and category.
View tool JSON
{
"name": "search_products",
"kind": "answer",
"impl": "imperative",
"description": "Search the product catalog. Combine query (text in name/description/brand/tags), category (Footwear|Electronics|Clothing|Home|Books|Beauty), brand, tag, minPrice, maxPrice (in INR), and sort (relevance|price-low|price-high|rating|discount). Example: find shoes under ₹2000 → { query: 'shoes', maxPrice: 2000 }. Returns matching products with id, name, price, rating, brand and category.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "free-text search (e.g. 'running shoes', 'headphones')"
},
"category": {
"type": "string",
"enum": [
"Footwear",
"Electronics",
"Clothing",
"Home",
"Books",
"Beauty"
]
},
"brand": {
"type": "string"
},
"tag": {
"type": "string",
"description": "matches a tag, e.g. 'wireless', 'winter'"
},
"minPrice": {
"type": "integer",
"description": "minimum price in INR"
},
"maxPrice": {
"type": "integer",
"description": "maximum price in INR, e.g. 2000"
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price-low",
"price-high",
"rating",
"discount"
]
},
"limit": {
"type": "integer"
}
},
"required": []
}
}get_product_detailsAnswer
Get full details for a single product by id, including description, stock, all tags, and any discount.
View tool JSON
{
"name": "get_product_details",
"kind": "answer",
"impl": "imperative",
"description": "Get full details for a single product by id, including description, stock, all tags, and any discount.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
}compare_productsAnswer
Compare 2 or more products side-by-side by id. Returns a normalized comparison table: name, brand, price, discount %, rating, review count, category, stock, tags.
View tool JSON
{
"name": "compare_products",
"kind": "answer",
"impl": "imperative",
"description": "Compare 2 or more products side-by-side by id. Returns a normalized comparison table: name, brand, price, discount %, rating, review count, category, stock, tags.",
"inputSchema": {
"type": "object",
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"ids"
]
}
}get_recommendationsAnswer
Get personalized product recommendations based on items already in the cart (and overall bestsellers if the cart is empty). Optionally exclude a productId (e.g. the one currently being viewed).
View tool JSON
{
"name": "get_recommendations",
"kind": "answer",
"impl": "imperative",
"description": "Get personalized product recommendations based on items already in the cart (and overall bestsellers if the cart is empty). Optionally exclude a productId (e.g. the one currently being viewed).",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string",
"description": "exclude this product (e.g. the one being viewed)"
},
"limit": {
"type": "integer"
}
},
"required": []
}
}add_to_cartAction
Add a product to the shared cart. quantity defaults to 1. The cart is shared with the human user, so they will see the item appear in real time. Returns the updated cart item and the new cart total.
View tool JSON
{
"name": "add_to_cart",
"kind": "act",
"impl": "imperative",
"description": "Add a product to the shared cart. quantity defaults to 1. The cart is shared with the human user, so they will see the item appear in real time. Returns the updated cart item and the new cart total.",
"inputSchema": {
"type": "object",
"properties": {
"productId": {
"type": "string"
},
"quantity": {
"type": "integer",
"description": "defaults to 1"
}
},
"required": [
"productId"
]
}
}get_cartAnswer
Show the current contents of the shared cart: each item with product, quantity and line total, plus subtotal, total item count, and any total savings vs. MRP.
View tool JSON
{
"name": "get_cart",
"kind": "answer",
"impl": "imperative",
"description": "Show the current contents of the shared cart: each item with product, quantity and line total, plus subtotal, total item count, and any total savings vs. MRP.",
"inputSchema": {
"type": "object",
"properties": {},
"required": []
}
}update_cart_itemAction
Change the quantity of a cart item (use the cartItemId from get_cart). Set quantity to 0 to effectively remove it — or use remove_cart_item.
View tool JSON
{
"name": "update_cart_item",
"kind": "act",
"impl": "imperative",
"description": "Change the quantity of a cart item (use the cartItemId from get_cart). Set quantity to 0 to effectively remove it — or use remove_cart_item.",
"inputSchema": {
"type": "object",
"properties": {
"cartItemId": {
"type": "string"
},
"quantity": {
"type": "integer",
"description": "new quantity, 1-99"
}
},
"required": [
"cartItemId",
"quantity"
]
}
}remove_cart_itemAction
Remove a single item from the cart by cartItemId.
View tool JSON
{
"name": "remove_cart_item",
"kind": "act",
"impl": "imperative",
"description": "Remove a single item from the cart by cartItemId.",
"inputSchema": {
"type": "object",
"properties": {
"cartItemId": {
"type": "string"
}
},
"required": [
"cartItemId"
]
}
}clear_cartAction
Empty the entire cart. Use with the user's permission.
View tool JSON
{
"name": "clear_cart",
"kind": "act",
"impl": "imperative",
"description": "Empty the entire cart. Use with the user's permission.",
"inputSchema": {
"type": "object",
"properties": {},
"required": []
}
}checkoutSensitive Action
Place an order for the current cart. Provide a shipping address (customerName, addressLine, city, 6-digit pincode). paymentMethod defaults to 'cod' (cash on delivery); other values: 'upi', 'card'. Creates an order, clears the cart, and returns the order with an id and total. Always confirm the address with the user before calling this.
View tool JSON
{
"name": "checkout",
"kind": "transact",
"impl": "imperative",
"description": "Place an order for the current cart. Provide a shipping address (customerName, addressLine, city, 6-digit pincode). paymentMethod defaults to 'cod' (cash on delivery); other values: 'upi', 'card'. Creates an order, clears the cart, and returns the order with an id and total. Always confirm the address with the user before calling this.",
"inputSchema": {
"type": "object",
"properties": {
"customerName": {
"type": "string"
},
"addressLine": {
"type": "string"
},
"city": {
"type": "string"
},
"pincode": {
"type": "string",
"description": "exactly 6 digits"
},
"paymentMethod": {
"type": "string",
"enum": [
"cod",
"upi",
"card"
],
"description": "defaults to cod"
}
},
"required": [
"customerName",
"addressLine",
"city",
"pincode"
]
}
}get_order_historyAnswer
Show the user's past orders, newest first, with items, total and status.
View tool JSON
{
"name": "get_order_history",
"kind": "answer",
"impl": "imperative",
"description": "Show the user's past orders, newest first, with items, total and status.",
"inputSchema": {
"type": "object",
"properties": {},
"required": []
}
}