← WebMCP Directory

Tool tree

northline-business-supply.zihao-y.chatgpt.site

CommerceTools verified
Website
B2B supplier of sit-stand desks, ergonomic seating, monitors, docking stations, business laptops and office IT equipment. Net 30 invoicing, next-day delivery and assembly service.
Explore capabilities

    page: Every page

    list_categoriesAnswer

    List the product categories of the Northline Business Supply catalogue with their ids, names and product counts. All prices on this site are in EUR excluding 21% VAT.

    View tool JSON
    {
      "name": "list_categories",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the product categories of the Northline Business Supply catalogue with their ids, names and product counts. All prices on this site are in EUR excluding 21% VAT.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    search_productsAnswer

    Search the catalogue for office furniture and IT equipment (desks, chairs, monitors, laptops, docks, keyboards, headsets, monitor arms, storage, power, networking, printing). Returns matching products with SKU, price, volume pricing, stock and options. Use the SKU with get_product or add_to_cart.

    View tool JSON
    {
      "name": "search_products",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search the catalogue for office furniture and IT equipment (desks, chairs, monitors, laptops, docks, keyboards, headsets, monitor arms, storage, power, networking, printing). Returns matching products with SKU, price, volume pricing, stock and options. Use the SKU with get_product or add_to_cart.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Free-text keywords or a SKU, e.g. \"sit-stand desk\", \"27 inch usb-c monitor\", \"thunderbolt dock\". Leave empty to list everything in a category."
          },
          "category": {
            "type": "string",
            "description": "Restrict to a category id (see list_categories), e.g. \"desks\", \"monitors\", \"docking\"."
          },
          "brand": {
            "type": "string",
            "description": "Restrict to a brand name."
          },
          "maxPrice": {
            "type": "number",
            "description": "Maximum unit price in EUR excluding VAT."
          },
          "inStockOnly": {
            "type": "boolean",
            "description": "Only return items that are in stock."
          },
          "sort": {
            "type": "string",
            "description": "Sort order.",
            "enum": [
              "relevance",
              "price-asc",
              "price-desc",
              "name"
            ]
          },
          "limit": {
            "type": "integer",
            "description": "Maximum number of results (default 20).",
            "minimum": 1,
            "maximum": 60
          }
        },
        "additionalProperties": false
      },
      "page": "/"
    }
    get_productAnswer

    Get full details for one product by SKU: description, specifications, options (finishes, colours, layouts), volume price breaks, stock and lead time, and related SKUs.

    View tool JSON
    {
      "name": "get_product",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get full details for one product by SKU: description, specifications, options (finishes, colours, layouts), volume price breaks, stock and lead time, and related SKUs.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string",
            "description": "Product SKU, e.g. \"NL-DSK-EP160\"."
          }
        },
        "required": [
          "sku"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    list_workstation_setupsAnswer

    List the recommended per-seat workstation configurations (bundles of desk, chair, monitor, arm, dock, cable management etc.) with their component SKUs and per-seat price. Add one with add_setup_to_cart.

    View tool JSON
    {
      "name": "list_workstation_setups",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the recommended per-seat workstation configurations (bundles of desk, chair, monitor, arm, dock, cable management etc.) with their component SKUs and per-seat price. Add one with add_setup_to_cart.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    add_to_cartAction

    Add a product to the shopping cart by SKU and quantity, optionally choosing product options such as finish, colour or keyboard layout. Volume pricing is applied automatically. Returns the updated cart.

    View tool JSON
    {
      "name": "add_to_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "Add a product to the shopping cart by SKU and quantity, optionally choosing product options such as finish, colour or keyboard layout. Volume pricing is applied automatically. Returns the updated cart.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string",
            "description": "Product SKU."
          },
          "quantity": {
            "type": "integer",
            "description": "Quantity to add (default 1).",
            "minimum": 1
          },
          "options": {
            "type": "object",
            "description": "Product option selections as key/value pairs, e.g. {\"Top finish\":\"White\",\"Frame colour\":\"Black\"}. Omit to use the default (first) value of each option. Use get_product to see available options.",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "sku"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    add_setup_to_cartAction

    Add a complete recommended workstation configuration to the cart, multiplied by the number of seats. Component quantities and default options can be adjusted afterwards with update_cart_item / add_to_cart.

    View tool JSON
    {
      "name": "add_setup_to_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "Add a complete recommended workstation configuration to the cart, multiplied by the number of seats. Component quantities and default options can be adjusted afterwards with update_cart_item / add_to_cart.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "setupId": {
            "type": "string",
            "description": "Setup id from list_workstation_setups, e.g. \"standard-workstation\"."
          },
          "seats": {
            "type": "integer",
            "description": "Number of seats/workstations (default 1).",
            "minimum": 1
          }
        },
        "required": [
          "setupId"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    update_cart_itemAction

    Change the quantity of a cart line. Set quantity to 0 to remove it. If the same SKU is in the cart with several option combinations, pass options to target one line.

    View tool JSON
    {
      "name": "update_cart_item",
      "kind": "act",
      "impl": "imperative",
      "description": "Change the quantity of a cart line. Set quantity to 0 to remove it. If the same SKU is in the cart with several option combinations, pass options to target one line.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string",
            "description": "Product SKU already in the cart."
          },
          "quantity": {
            "type": "integer",
            "description": "New quantity (0 removes the line).",
            "minimum": 0
          },
          "options": {
            "type": "object",
            "description": "Product option selections as key/value pairs, e.g. {\"Top finish\":\"White\",\"Frame colour\":\"Black\"}. Omit to use the default (first) value of each option. Use get_product to see available options.",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "sku",
          "quantity"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    remove_from_cartAction

    Remove a product line from the cart.

    View tool JSON
    {
      "name": "remove_from_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "Remove a product line from the cart.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sku": {
            "type": "string",
            "description": "Product SKU to remove."
          },
          "options": {
            "type": "object",
            "description": "Product option selections as key/value pairs, e.g. {\"Top finish\":\"White\",\"Frame colour\":\"Black\"}. Omit to use the default (first) value of each option. Use get_product to see available options.",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "sku"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    get_cartAnswer

    Get the current cart: lines with quantities, options and prices, the selected delivery method, totals (subtotal, discount, delivery, VAT, total) and the estimated delivery date.

    View tool JSON
    {
      "name": "get_cart",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get the current cart: lines with quantities, options and prices, the selected delivery method, totals (subtotal, discount, delivery, VAT, total) and the estimated delivery date.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    clear_cartAction

    Remove every item from the cart.

    View tool JSON
    {
      "name": "clear_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "Remove every item from the cart.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    set_delivery_methodAction

    Choose the delivery method for the cart: "standard" (1–3 working days, free over €500), "express" (next working day, €79) or "assembly" (delivery to the room, assembly and packaging removal, from €149).

    View tool JSON
    {
      "name": "set_delivery_method",
      "kind": "act",
      "impl": "imperative",
      "description": "Choose the delivery method for the cart: \"standard\" (1–3 working days, free over €500), \"express\" (next working day, €79) or \"assembly\" (delivery to the room, assembly and packaging removal, from €149).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "method": {
            "type": "string",
            "description": "Delivery method id.",
            "enum": [
              "standard",
              "express",
              "assembly"
            ]
          }
        },
        "required": [
          "method"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    get_checkout_infoAnswer

    Get everything needed to place an order: the signed-in business account (company, credit terms, credit limit, primary contact), saved delivery address ids, available delivery and payment methods, and the current cart totals.

    View tool JSON
    {
      "name": "get_checkout_info",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get everything needed to place an order: the signed-in business account (company, credit terms, credit limit, primary contact), saved delivery address ids, available delivery and payment methods, and the current cart totals.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    place_orderSensitive Action

    Record a simulated order for the current cart contents on the Meridian Labs demo account. This represents a binding action in the demo flow. Show the user the final contents, total and delivery estimate, then call this tool only after the user explicitly approves them and accepts the terms. Returns the locally stored order confirmation.

    View tool JSON
    {
      "name": "place_order",
      "kind": "transact",
      "impl": "imperative",
      "description": "Record a simulated order for the current cart contents on the Meridian Labs demo account. This represents a binding action in the demo flow. Show the user the final contents, total and delivery estimate, then call this tool only after the user explicitly approves them and accepts the terms. Returns the locally stored order confirmation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "purchaseOrderNumber": {
            "type": "string",
            "description": "The buyer's internal PO reference; printed on the invoice."
          },
          "contactName": {
            "type": "string",
            "description": "Name of the person placing the order."
          },
          "contactEmail": {
            "type": "string",
            "description": "Email address for the order confirmation."
          },
          "contactPhone": {
            "type": "string",
            "description": "Phone number for the delivery driver (optional)."
          },
          "addressId": {
            "type": "string",
            "description": "Saved address id: \"hq\" (Amsterdam head office) or \"utrecht\" (Utrecht office). Omit when supplying a new address."
          },
          "newAddress": {
            "type": "object",
            "description": "New delivery address, used when addressId is omitted.",
            "properties": {
              "line1": {
                "type": "string",
                "description": "Street address"
              },
              "line2": {
                "type": "string",
                "description": "Floor / building / department"
              },
              "postcode": {
                "type": "string",
                "description": "Postcode"
              },
              "city": {
                "type": "string",
                "description": "City"
              },
              "country": {
                "type": "string",
                "description": "Country (default Netherlands)"
              },
              "instructions": {
                "type": "string",
                "description": "Delivery instructions"
              }
            },
            "additionalProperties": false
          },
          "deliveryMethod": {
            "type": "string",
            "description": "Delivery method id; defaults to the one selected on the cart.",
            "enum": [
              "standard",
              "express",
              "assembly"
            ]
          },
          "paymentMethod": {
            "type": "string",
            "description": "Payment method id.",
            "enum": [
              "invoice",
              "card",
              "transfer"
            ]
          },
          "requestedDeliveryDate": {
            "type": "string",
            "description": "Preferred delivery date, YYYY-MM-DD (optional; earliest next working day)."
          },
          "notes": {
            "type": "string",
            "description": "Notes for the warehouse or delivery team, e.g. floor and room (optional)."
          },
          "acceptTerms": {
            "type": "boolean",
            "description": "Must be true after the user accepts the terms of sale."
          },
          "confirmedByUser": {
            "type": "boolean",
            "description": "Must be true only after the user explicitly approves the final cart contents, total and delivery estimate."
          }
        },
        "required": [
          "purchaseOrderNumber",
          "contactName",
          "contactEmail",
          "paymentMethod",
          "acceptTerms",
          "confirmedByUser"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    get_orderAnswer

    Get an existing order by its order id (e.g. "NBS-104211"), including status, lines, totals and delivery details.

    View tool JSON
    {
      "name": "get_order",
      "kind": "answer",
      "impl": "imperative",
      "description": "Get an existing order by its order id (e.g. \"NBS-104211\"), including status, lines, totals and delivery details.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "orderId": {
            "type": "string",
            "description": "Order id."
          }
        },
        "required": [
          "orderId"
        ],
        "additionalProperties": false
      },
      "page": "/"
    }
    list_ordersAnswer

    List the orders on this business account, newest first.

    View tool JSON
    {
      "name": "list_orders",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the orders on this business account, newest first.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "page": "/"
    }
    request_quoteAction

    Record a simulated project quote request for the products currently in the cart (recommended for 10+ workstations or when assembly, staged delivery or old-furniture removal is needed). Returns a locally stored quote reference; no external request or email is sent.

    View tool JSON
    {
      "name": "request_quote",
      "kind": "act",
      "impl": "imperative",
      "description": "Record a simulated project quote request for the products currently in the cart (recommended for 10+ workstations or when assembly, staged delivery or old-furniture removal is needed). Returns a locally stored quote reference; no external request or email is sent.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "contactName": {
            "type": "string",
            "description": "Requester name (defaults to the account contact)."
          },
          "contactEmail": {
            "type": "string",
            "description": "Email that would receive the quote (defaults to the account contact)."
          },
          "notes": {
            "type": "string",
            "description": "Project details: number of seats, timing, assembly needs."
          }
        },
        "additionalProperties": false
      },
      "page": "/"
    }
    search_catalogAction

    Search the product catalogue by keyword or SKU and open the results page.

    View tool JSON
    {
      "name": "search_catalog",
      "kind": "act",
      "impl": "declarative",
      "description": "Search the product catalogue by keyword or SKU and open the results page.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Search products, brands or SKUs — e.g. sit-stand desk, 27\" monitor, Thunderbolt dock"
          }
        }
      },
      "page": "/"
    }

    page: Delivery

    filter_catalogAction

    Filter the product catalogue by keyword, category, brand, maximum price and stock status. Submitting navigates to the filtered catalogue page.

    View tool JSON
    {
      "name": "filter_catalog",
      "kind": "act",
      "impl": "declarative",
      "description": "Filter the product catalogue by keyword, category, brand, maximum price and stock status. Submitting navigates to the filtered catalogue page.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Keyword or SKU"
          },
          "category": {
            "type": "string",
            "enum": [
              "desks",
              "seating",
              "monitors",
              "computers",
              "docking",
              "input",
              "av",
              "ergonomics",
              "storage",
              "power",
              "networking",
              "lighting",
              "printing",
              "collab"
            ]
          },
          "brand": {
            "type": "string",
            "enum": [
              "Northline Workspace"
            ]
          },
          "max": {
            "type": "number",
            "description": "e.g. 500"
          },
          "stock": {
            "type": "boolean"
          },
          "sort": {
            "type": "string",
            "enum": [
              "relevance",
              "price-asc",
              "price-desc",
              "name"
            ]
          }
        }
      },
      "page": "/delivery"
    }