← WebMCP Directory

Tool tree

beardedcolonel.co.uk

CommerceTools verified
Website
With the Bearded Colonel, you’ll get fresh shaving razors delivered to you every month (or when you like!), at a fair price. One less thing to worry about!
Explore capabilities
    search_contentAnswer

    Search the pages and articles on Bearded Colonel. Read-only. Returns { text, results[] } where each result has title, extract and url.

    View tool JSON
    {
      "name": "search_content",
      "kind": "answer",
      "impl": "imperative",
      "description": "Search the pages and articles on Bearded Colonel. Read-only. Returns { text, results[] } where each result has title, extract and url.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "What to look for, in plain words."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10,
            "default": 5,
            "description": "How many results to return."
          }
        },
        "required": [
          "query"
        ]
      },
      "page": "/"
    }
    get_site_overviewAnswer

    What Bearded Colonel is, and the main sections of the site. Read-only. Use it first to see what the site covers. Returns { text, name, tagline, sections[] } where each section has title and url.

    View tool JSON
    {
      "name": "get_site_overview",
      "kind": "answer",
      "impl": "imperative",
      "description": "What Bearded Colonel is, and the main sections of the site. Read-only. Use it first to see what the site covers. Returns { text, name, tagline, sections[] } where each section has title and url.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }
    search_productsAnswer

    Browse or search what Bearded Colonel sells when the product is not known by name: a keyword, a category, or a need like "dry skin". Returns a shortlist. For one named product, call get_product_details instead. Read-only. Returns { text, products[] } where each product has id, sku, name, price, in_stock and url - hold the id and use it for the next call.

    View tool JSON
    {
      "name": "search_products",
      "kind": "answer",
      "impl": "imperative",
      "description": "Browse or search what Bearded Colonel sells when the product is not known by name: a keyword, a category, or a need like \"dry skin\". Returns a shortlist. For one named product, call get_product_details instead. Read-only. Returns { text, products[] } where each product has id, sku, name, price, in_stock and url - hold the id and use it for the next call.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "What to look for, in plain words."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 10,
            "default": 5,
            "description": "How many products to return."
          }
        },
        "required": [
          "query"
        ]
      },
      "page": "/"
    }
    get_product_detailsAnswer

    Everything about ONE product at Bearded Colonel, looked up by name: price, subscription frequencies, stock, category. This is the tool to use whenever a product name is known, including a partial one. Read-only. Some products carry no written description, so follow the link for the full page. Returns { text, found, ambiguous, alternatives[], id, sku, name, price, in_stock, categories[], options[], url } - when several products match, one is chosen and the rest are named in alternatives.

    View tool JSON
    {
      "name": "get_product_details",
      "kind": "answer",
      "impl": "imperative",
      "description": "Everything about ONE product at Bearded Colonel, looked up by name: price, subscription frequencies, stock, category. This is the tool to use whenever a product name is known, including a partial one. Read-only. Some products carry no written description, so follow the link for the full page. Returns { text, found, ambiguous, alternatives[], id, sku, name, price, in_stock, categories[], options[], url } - when several products match, one is chosen and the rest are named in alternatives.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The product name, or part of it. Ignored when `id` is given."
          },
          "id": {
            "type": "integer",
            "description": "The product ID from an earlier answer. Exact, and never ambiguous - prefer it over a name when you have one."
          }
        },
        "required": [
          "name"
        ]
      },
      "page": "/"
    }
    list_delivery_optionsAnswer

    Where Bearded Colonel delivers and what postage costs. Postage is charged by item type and is free above an order threshold, so this returns both. Read-only. The figure for a particular basket is confirmed at checkout. Returns { text, zones[] } where each zone has zone, free_over and postage[] of item type and cost including VAT.

    View tool JSON
    {
      "name": "list_delivery_options",
      "kind": "answer",
      "impl": "imperative",
      "description": "Where Bearded Colonel delivers and what postage costs. Postage is charged by item type and is free above an order threshold, so this returns both. Read-only. The figure for a particular basket is confirmed at checkout. Returns { text, zones[] } where each zone has zone, free_over and postage[] of item type and cost including VAT.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }
    list_categoriesAnswer

    The product categories at Bearded Colonel. Read-only. Returns { text, categories[] } where each category has id, slug, name, products count and url.

    View tool JSON
    {
      "name": "list_categories",
      "kind": "answer",
      "impl": "imperative",
      "description": "The product categories at Bearded Colonel. Read-only. Returns { text, categories[] } where each category has id, slug, name, products count and url.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }
    get_subscription_termsAnswer

    How subscriptions work at Bearded Colonel: commitment, changing delivery frequency, pausing and cancelling. Read-only. Returns { text, contract, can_change_date, can_pause, can_cancel, self_service, manage_url } as booleans plus the account URL.

    View tool JSON
    {
      "name": "get_subscription_terms",
      "kind": "answer",
      "impl": "imperative",
      "description": "How subscriptions work at Bearded Colonel: commitment, changing delivery frequency, pausing and cancelling. Read-only. Returns { text, contract, can_change_date, can_pause, can_cancel, self_service, manage_url } as booleans plus the account URL.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }
    add_to_cartAction

    Put a product in the basket at Bearded Colonel. Changes the basket; it does not take payment or place an order, and anything added can be removed again. Subscription products need the delivery frequency in `option` - call get_product_details first to see what they are, and if it is missing this returns the choices instead of guessing. Returns { text, added, needs_option, options[], name, quantity, items, total, cart_url }.

    View tool JSON
    {
      "name": "add_to_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "Put a product in the basket at Bearded Colonel. Changes the basket; it does not take payment or place an order, and anything added can be removed again. Subscription products need the delivery frequency in `option` - call get_product_details first to see what they are, and if it is missing this returns the choices instead of guessing. Returns { text, added, needs_option, options[], name, quantity, items, total, cart_url }.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "product": {
            "type": "string",
            "description": "The product name, or part of it. Ignored when `id` is given."
          },
          "id": {
            "type": "integer",
            "description": "The product ID from an earlier answer. Exact, and never ambiguous - prefer it over a name when you have one."
          },
          "option": {
            "type": "string",
            "description": "For a subscription product, the delivery frequency, for example \"Every 2 months\"."
          },
          "quantity": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "default": 1,
            "description": "How many to add."
          }
        },
        "required": [
          "product"
        ]
      },
      "page": "/"
    }
    view_cartAction

    What is in the basket at Bearded Colonel right now, line by line, with the total and any discount applied. Read-only. Returns { text, empty, items[], count, total, cart_url } where each item has id, name, quantity and subtotal - the id is what update_cart_item wants.

    View tool JSON
    {
      "name": "view_cart",
      "kind": "act",
      "impl": "imperative",
      "description": "What is in the basket at Bearded Colonel right now, line by line, with the total and any discount applied. Read-only. Returns { text, empty, items[], count, total, cart_url } where each item has id, name, quantity and subtotal - the id is what update_cart_item wants.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }
    update_cart_itemAction

    Change how many of a line already in the basket, or remove it by setting quantity to 0. Changes the basket; it does not take payment. Returns { text, updated, name, quantity, count, total }.

    View tool JSON
    {
      "name": "update_cart_item",
      "kind": "act",
      "impl": "imperative",
      "description": "Change how many of a line already in the basket, or remove it by setting quantity to 0. Changes the basket; it does not take payment. Returns { text, updated, name, quantity, count, total }.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "product": {
            "type": "string",
            "description": "The name of a line already in the basket, or part of it. Ignored when `id` is given."
          },
          "id": {
            "type": "integer",
            "description": "The product ID of a line in the basket, as view_cart reports it."
          },
          "quantity": {
            "type": "integer",
            "minimum": 0,
            "maximum": 20,
            "description": "The new quantity. 0 removes the line."
          }
        },
        "required": [
          "quantity"
        ]
      },
      "page": "/"
    }
    apply_couponAction

    Apply a discount code to the basket at Bearded Colonel. A code that is invalid, expired or not valid for what is in the basket fails harmlessly and says why. Changes the basket; it does not take payment. Returns { text, applied, code, discount, total }.

    View tool JSON
    {
      "name": "apply_coupon",
      "kind": "act",
      "impl": "imperative",
      "description": "Apply a discount code to the basket at Bearded Colonel. A code that is invalid, expired or not valid for what is in the basket fails harmlessly and says why. Changes the basket; it does not take payment. Returns { text, applied, code, discount, total }.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "The discount code, exactly as the customer received it."
          }
        },
        "required": [
          "code"
        ]
      },
      "page": "/"
    }
    go_to_checkoutSensitive Action

    Take the visitor to the checkout page at Bearded Colonel with the basket as it stands. This moves the browser to the checkout; it fills nothing in, pays for nothing and orders nothing - the person completes it themselves. Returns { text, ready, count, total, navigate }.

    View tool JSON
    {
      "name": "go_to_checkout",
      "kind": "transact",
      "impl": "imperative",
      "description": "Take the visitor to the checkout page at Bearded Colonel with the basket as it stands. This moves the browser to the checkout; it fills nothing in, pays for nothing and orders nothing - the person completes it themselves. Returns { text, ready, count, total, navigate }.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "required": []
      },
      "page": "/"
    }