Tool tree
gradeNot graded
page: Every page
search_productsAnswer
Search the Swiss3Design catalogue of 3D-printed design objects. Returns names, CHF prices, availability, colours and product URLs.
View tool JSON
{
"name": "search_products",
"kind": "answer",
"impl": "imperative",
"description": "Search the Swiss3Design catalogue of 3D-printed design objects. Returns names, CHF prices, availability, colours and product URLs.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Free-text search"
},
"category": {
"type": "string",
"description": "Category slug"
},
"max_price_chf": {
"type": "number",
"description": "Maximum price in CHF"
},
"multicolor": {
"type": "boolean",
"description": "Only multicolour prints"
}
}
},
"page": "/en"
}get_productAnswer
Full details of a product: price, availability, colour options, variants, dimensions.
View tool JSON
{
"name": "get_product",
"kind": "answer",
"impl": "imperative",
"description": "Full details of a product: price, availability, colour options, variants, dimensions.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Product slug"
}
},
"required": [
"slug"
]
},
"page": "/en"
}get_store_infoAnswer
Shipping (Switzerland only), returns, payment methods, contact and custom 3D printing.
View tool JSON
{
"name": "get_store_info",
"kind": "answer",
"impl": "imperative",
"description": "Shipping (Switzerland only), returns, payment methods, contact and custom 3D printing.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/en"
}view_cartAction
Items currently in the shopping cart, with the subtotal in CHF.
View tool JSON
{
"name": "view_cart",
"kind": "act",
"impl": "imperative",
"description": "Items currently in the shopping cart, with the subtotal in CHF.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/en"
}add_to_cartAction
Add a product to the shopping cart. A colour is required when the product offers colours, a variant when it has variants (see get_product).
View tool JSON
{
"name": "add_to_cart",
"kind": "act",
"impl": "imperative",
"description": "Add a product to the shopping cart. A colour is required when the product offers colours, a variant when it has variants (see get_product).",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Product slug"
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 99,
"description": "Quantity to add (default 1); added to any quantity already in the cart, up to 99"
},
"color": {
"type": "string",
"description": "Colour name from colorOptions"
},
"variant": {
"type": "string",
"description": "Variant id or name"
}
},
"required": [
"slug"
]
},
"page": "/en"
}remove_from_cartAction
Remove a product from the cart: every line of it, or only the line with the given colour or variant. Returns how many lines were removed (0 when nothing matched).
View tool JSON
{
"name": "remove_from_cart",
"kind": "act",
"impl": "imperative",
"description": "Remove a product from the cart: every line of it, or only the line with the given colour or variant. Returns how many lines were removed (0 when nothing matched).",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Product slug"
},
"color": {
"type": "string",
"description": "Only the line with this colour name"
},
"variant": {
"type": "string",
"description": "Only the line with this variant (id or name)"
}
},
"required": [
"slug"
]
},
"page": "/en"
}go_to_checkoutSensitive Action
Open the checkout page, where the customer enters the delivery address and pays (TWINT, cards, Google Pay).
View tool JSON
{
"name": "go_to_checkout",
"kind": "transact",
"impl": "imperative",
"description": "Open the checkout page, where the customer enters the delivery address and pays (TWINT, cards, Google Pay).",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/en"
}track_orderAnswer
Order status, items, totals and Swiss Post tracking link, from the order number and the email address used for the order. A wrong number or email returns not found; lookups are rate-limited.
View tool JSON
{
"name": "track_order",
"kind": "answer",
"impl": "imperative",
"description": "Order status, items, totals and Swiss Post tracking link, from the order number and the email address used for the order. A wrong number or email returns not found; lookups are rate-limited.",
"inputSchema": {
"type": "object",
"properties": {
"order_number": {
"type": "string",
"description": "Order number from the confirmation email (S3D-…)"
},
"email": {
"type": "string",
"format": "email",
"description": "Email address used for the order"
}
},
"required": [
"order_number",
"email"
]
},
"page": "/en"
}