UK tool shop: search, prices ex/inc VAT, stock, delivery, order tracking and basket links.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Whole-basket Website Express verdict for a set of product ids and quantities: every line must be eligible (no split shipments).
Basket lines as product ids with quantities.
Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices.
Whole-basket Website Express verdict for a set of product ids and quantities: every line must be eligible (no split shipments).
| Argument | Type | Description |
|---|---|---|
| items* | array | Basket lines as product ids with quantities. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Product id from search/product tools.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 999,
"minimum": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Basket lines as product ids with quantities."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Whether Camden Tools ships to a country, with any restriction message.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| country_code* | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code"
],
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US."
}
}
}Side-by-side comparison of 2 to 5 products by SKU: price ex/inc VAT, stock, brand, weight and the specification bullet points, so an agent can recommend between options.
| Argument | Type | Description |
|---|---|---|
| skus* | array | |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"skus"
],
"properties": {
"skus": {
"type": "array",
"items": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Product SKU exactly as shown on the site."
},
"maxItems": 5,
"minItems": 2
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Turn product ids and quantities into one link that fills the shopper's basket on camdentools.com. Opening the link makes sure the basket holds at least those quantities (opening it twice does not double them); the shopper reviews the basket and pays at checkout themselves. The result says which lines are out of stock: those cannot be bought, so offer an alternative before sharing the link. Use it to finish a shopping conversation. Ids come from search_products, list_products or get_product.
| Argument | Type | Description |
|---|---|---|
| items* | array | Basket lines as product ids with quantities. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Product id from search/product tools.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 999,
"minimum": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Basket lines as product ids with quantities."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Delivery services, charges and transit times for a basket to a destination (country plus postcode/ZIP and city). This is an estimate using placeholder contact details; exact rates are confirmed at checkout.
| Argument | Type | Description |
|---|---|---|
| city | string | Destination city. |
| items* | array | Basket lines as product ids with quantities. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| postcode | string | Destination postcode / ZIP. |
| country_code* | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"items"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"description": "Destination city."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Product id from search/product tools.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 999,
"minimum": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Basket lines as product ids with quantities."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"postcode": {
"type": "string",
"maxLength": 20,
"description": "Destination postcode / ZIP."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US."
}
}
}A blog post's full text (plain text) by slug.
| Argument | Type | Description |
|---|---|---|
| slug* | string | |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}A brand's details, its active promotions and its products (paged) by brand slug.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| slug* | string | Brand slug from list_brands. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"slug": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Brand slug from list_brands."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 15, 30, 50 or 100 (default 15)."
}
}
}Evaluate a prospective basket for a destination country: whether it can be fulfilled, which promotions apply (including free-delivery style offers and free gifts) and the adjusted basket value. Same check the checkout runs.
| Argument | Type | Description |
|---|---|---|
| items* | array | Basket lines as product ids with quantities. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| has_tax_id | boolean | Whether the buyer has a VAT/tax id (business purchase). |
| country_code* | string | Destination country (ISO alpha-2). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"country_code",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Product id from search/product tools.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 999,
"minimum": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Basket lines as product ids with quantities."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"has_tax_id": {
"type": "boolean",
"description": "Whether the buyer has a VAT/tax id (business purchase)."
},
"country_code": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Destination country (ISO alpha-2)."
}
}
}A category's name, description and its products (paged) by category slug.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| slug* | string | Category slug from list_categories. |
| sort | string | Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"slug"
],
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"slug": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "Category slug from list_categories."
},
"sort": {
"type": "string",
"maxLength": 40,
"description": "Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 15, 30, 50 or 100 (default 15)."
}
}
}The London Click & Collect warehouse: address, opening hours, whether it is open right now (Europe/London, bank holidays respected) and when it next opens.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}Whether Website Express (free same-working-day dispatch for eligible UK orders) is available right now, the order-by cutoff and the promised dispatch date.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Full text (markdown) of a store policy: delivery, returns, payment-options, faqs or contact.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| policy* | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"policy"
],
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"policy": {
"enum": [
"delivery",
"returns",
"payment-options",
"faqs",
"contact"
],
"type": "string"
}
}
}Country-specific pricing for a set of products (the checkout applies the destination country's currency and pricing). Returns unit, sale and final prices plus the subtotal.
| Argument | Type | Description |
|---|---|---|
| items* | array | Basket lines as product ids with quantities. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| shipping_country* | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"shipping_country",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Product id from search/product tools.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "integer",
"default": 1,
"maximum": 999,
"minimum": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "Basket lines as product ids with quantities."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"shipping_country": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US."
}
}
}Full details for one product by slug, SKU or id: description, specifications, prices ex/inc VAT with bulk breaks, stock, variants, safety/spec documents and the canonical page URL. Provide exactly one of slug, sku or id.
| Argument | Type | Description |
|---|---|---|
| id | integer | Numeric product id. |
| sku | string | Product SKU. |
| slug | string | Product slug from a product URL (…/product/<slug>). |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Numeric product id.",
"exclusiveMinimum": 0
},
"sku": {
"type": "string",
"maxLength": 64,
"description": "Product SKU."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "Product slug from a product URL (…/product/<slug>)."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Safety data sheets, specification sheets and COSHH hazard codes for a product (by slug or SKU). Returns document URLs.
| Argument | Type | Description |
|---|---|---|
| sku | string | Product SKU. |
| slug | string | Product slug from a product URL (…/product/<slug>). |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sku": {
"type": "string",
"maxLength": 64,
"description": "Product SKU."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "Product slug from a product URL (…/product/<slug>)."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Active promotions that apply to one SKU (discounts, free gifts, end dates).
| Argument | Type | Description |
|---|---|---|
| sku* | string | Product SKU exactly as shown on the site. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sku"
],
"properties": {
"sku": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Product SKU exactly as shown on the site."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Look up up to 50 products at once by SKU or by numeric id. Returns compact products (name, price ex/inc VAT, stock, link).
| Argument | Type | Description |
|---|---|---|
| ids | array | |
| skus | array | |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"ids": {
"type": "array",
"items": {
"type": "integer",
"maximum": 9007199254740991,
"exclusiveMinimum": 0
},
"maxItems": 50,
"minItems": 1
},
"skus": {
"type": "array",
"items": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Product SKU exactly as shown on the site."
},
"maxItems": 50,
"minItems": 1
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Variants, similar products, recommendations and 'you may also like' items for a product (by slug or SKU). Useful for alternatives when something is out of stock.
| Argument | Type | Description |
|---|---|---|
| sku | string | Product SKU. |
| slug | string | Product slug from a product URL (…/product/<slug>). |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"sku": {
"type": "string",
"maxLength": 64,
"description": "Product SKU."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "Product slug from a product URL (…/product/<slug>)."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Who Camden Tools is, how to contact them, VAT display rules, key page links, current announcements and a summary of each policy (delivery, returns, payment, FAQs). Call get_policy for the full text of a policy.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Live availability check for a SKU (is it available now and how many are in the London warehouse).
| Argument | Type | Description |
|---|---|---|
| sku* | string | Product SKU exactly as shown on the site. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"sku"
],
"properties": {
"sku": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "Product SKU exactly as shown on the site."
}
}
}Brands sold by Camden Tools (DeWalt, Makita, Milwaukee, Bosch, Stanley …). Without a query returns the popular brands; with a query searches brand names.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| sort | string | Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order. |
| query | string | Brand name search text. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"sort": {
"type": "string",
"maxLength": 40,
"description": "Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order."
},
"query": {
"type": "string",
"maxLength": 80,
"description": "Brand name search text."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 15, 30, 50 or 100 (default 15)."
}
}
}Curated product bundles (kits) with their items and prices.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
}
}
}Product categories with slugs and links. Use popular_only for the curated set shown on the site; otherwise the full list.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum categories to return (default 100). |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| popular_only | boolean | Only the popular categories (default false). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Maximum categories to return (default 100)."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"popular_only": {
"type": "boolean",
"description": "Only the popular categories (default false)."
}
}
}Current storefront promotions (percentage/fixed discounts and free gifts), optionally grouped by brand or category. Also points at the /offers page.
| Argument | Type | Description |
|---|---|---|
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| group_by | string | Grouping (default all). |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"group_by": {
"enum": [
"all",
"brand",
"category"
],
"type": "string",
"description": "Grouping (default all)."
}
}
}Browse a product collection: most popular, newest, on sale, Website Express eligible, or a category by slug (see list_categories). Supports paging, sorting and brand/price filters.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| sort | string | Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order. |
| brand | string | Brand slug to filter by. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| max_price | number | Maximum price in the locale currency. |
| min_price | number | Minimum price in the locale currency. |
| collection* | string | Which collection to list. |
| min_discount |
Addresses for a UK postcode (rate limited upstream). Returns matching addresses or suggestions when the postcode is incomplete.
| Argument | Type | Description |
|---|---|---|
| postcode* | string | UK postcode, e.g. NW2 7JW. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"maxLength": 12,
"minLength": 2,
"description": "UK postcode, e.g. NW2 7JW."
}
}
}Guides and articles from the Camden Tools blog (how-tos, buying guides, brand news).
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| query | string | Search text; omit for the latest posts. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"query": {
"type": "string",
"maxLength": 120,
"description": "Search text; omit for the latest posts."
}
}
}Full-text search of the Camden Tools catalogue (hand tools, power tools, accessories, safety equipment). Returns compact products with prices ex/inc VAT, stock and a link. Use page/per_page to paginate and brand/min_price/max_price to narrow down.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, starting at 1. |
| sort | string | Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order. |
| brand | string | Brand slug to filter by. |
| query* | string | What the shopper is looking for, e.g. 'cordless combi drill 18v'. |
| locale | string | Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices. |
| express | boolean | Only products eligible for Website Express same-day dispatch (UK). |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| max_price | number | Maximum price in the locale currency. |
Order status, tracking number/URL, shipping method and line items for any order, given the order number and the delivery postcode (no sign-in needed).
| Argument | Type | Description |
|---|---|---|
| postcode* | string | Delivery postcode / ZIP on the order. |
| order_number* | string | Order number from the confirmation email. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"order_number",
"postcode"
],
"properties": {
"postcode": {
"type": "string",
"maxLength": 20,
"minLength": 2,
"description": "Delivery postcode / ZIP on the order."
},
"order_number": {
"type": "string",
"maxLength": 40,
"minLength": 3,
"description": "Order number from the confirmation email."
}
}
}| number |
| Minimum discount percentage (on-sale listings). |
| category_slug | string | Required when collection is 'category'. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"collection"
],
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"sort": {
"type": "string",
"maxLength": 40,
"description": "Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order."
},
"brand": {
"type": "string",
"maxLength": 80,
"description": "Brand slug to filter by."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 15, 30, 50 or 100 (default 15)."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum price in the locale currency."
},
"min_price": {
"type": "number",
"minimum": 0,
"description": "Minimum price in the locale currency."
},
"collection": {
"enum": [
"popular",
"new",
"on-sale",
"express",
"category"
],
"type": "string",
"description": "Which collection to list."
},
"min_discount": {
"type": "number",
"maximum": 100,
"minimum": 0,
"description": "Minimum discount percentage (on-sale listings)."
},
"category_slug": {
"type": "string",
"maxLength": 120,
"description": "Required when collection is 'category'."
}
}
}| min_price | number | Minimum price in the locale currency. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"maximum": 500,
"minimum": 1,
"description": "Page number, starting at 1."
},
"sort": {
"type": "string",
"maxLength": 40,
"description": "Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order."
},
"brand": {
"type": "string",
"maxLength": 80,
"description": "Brand slug to filter by."
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "What the shopper is looking for, e.g. 'cordless combi drill 18v'."
},
"locale": {
"type": "string",
"maxLength": 5,
"minLength": 2,
"description": "Storefront locale such as en-GB (default), en-US, de, fr-FR, es-ES, it-IT, nl-NL, pl. Controls product names, slugs and prices."
},
"express": {
"type": "boolean",
"description": "Only products eligible for Website Express same-day dispatch (UK)."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 15, 30, 50 or 100 (default 15)."
},
"max_price": {
"type": "number",
"minimum": 0,
"description": "Maximum price in the locale currency."
},
"min_price": {
"type": "number",
"minimum": 0,
"description": "Minimum price in the locale currency."
}
}
}