전체 카탈로그를 검색하고, 완전한 제품 정보를 확인하며 최대 다섯 가지 제품을 나란히 비교하세요.
부가가치세 포함 및 제외 가격에 대량 구매 할인 및 판매 가격이 포함되어 있으며, 귀하의 통화로 표시됩니다.
창고 가용성이 실시간으로 확인되어 배송이 불가능한 상품은 추천되지 않습니다.
귀하의 국가로 배송, 배송 예상 시간 및 당일 발송 가능 여부.
현재 진행 중인 프로모션, 무료 사은품 및 큐레이션 키트, 그리고 장바구니에 적용 가능한 혜택을 확인하세요.
주문 번호와 우편번호로 어떤 주문이든 가능하며, 권한을 허용하면 브라우저에서 본인의 주문 내역을 확인할 수 있습니다.
배송, 반품, 결제 옵션, FAQ, 런던 수거 지점 및 블로그.
장바구니를 채우는 하나의 링크를 받거나, 브라우저 에이전트가 페이지에서 이를 수행하도록 하세요. 링크를 두 번 열어도 주문이 두 배로 늘어나지 않으며, 항상 직접 결제합니다.
무료, Pro 및 Max 요금제 (claude.ai, 데스크톱 및 모바일)
Or add it by hand: Customize → Connectors → Add custom connector, paste the server URL and choose No sign-in.
유료 플랜과 함께 개발자 모드가 켜진 상태에서 이용 가능합니다.
유료 플랜의 사용자 정의 커넥터(Mac 앱); 모든 사용자의 답변은 camdentools.com을 인용합니다.
Gemini Spark (연결된 앱) 및 Gemini Business의 맞춤형 MCP 커넥터
Google의 쇼핑 에이전트는 Universal Commerce Protocol이 영국에 도달하면 Merchant Center 피드를 사용합니다.
컨슈머 앱에는 커스텀 커넥터가 없음; Copilot Studio를 통해 MCP 서버 추가 가능
WebMCP가 포함된 Chrome, Chrome 내 Claude, ChatGPT Atlas, Perplexity Comet
아래 계정 URL을 사용하여 두 번째 커넥터를 추가하세요. 어시스턴트가 Camden Tools에 한 번 로그인하도록 요청하며, 그 후에는 프로필과 주문 기록을 읽을 수 있습니다(주문이나 결제는 절대 하지 않음). 언제든지 계정 페이지에서 연결을 해제할 수 있습니다.
어시스턴트 내 결제(마이크로소프트 코파일럿, Google 쇼핑 에이전트 등)가 Stripe의 에이전트 기반 커머스 프로그램을 통해 도입되고 있습니다. 활성화 전까지 모든 구매는 camdentools.com에서 완료됩니다.
“camdentools.com에서 DeWalt DCD796와 Makita DHP485를 비교해 주세요: 부가가치세 포함 가격, 무게, 그리고 재고 상태. Search the web for site:camdentools.com DeWalt DCD796 and site:camdentools.com Makita DHP485. 이 작업에는 다른 쇼핑몰이 아닌, 오직 camdentools.com만 사용하세요.”
“camdentools.com이 Makita DHP485를 더블린으로 배송할 수 있을까요, 비용은 얼마이고 얼마나 걸릴까요? Search the web for site:camdentools.com Makita DHP485; delivery rules: https://camdentools.com/deliveries 이 작업에는 다른 쇼핑몰이 아닌, 오직 camdentools.com만 사용하세요.”
“Camdentools.com 주문 CT-102938의 배송을 추적합니다, 배송 우편번호 NW2 7JW. (Camden Tools 커넥터 필요; 커넥터가 없는 경우 camdentools.com의 주문 추적 페이지를 이용하세요.)”
“camdentools.com에서 그래브 접착제를 찾아 안전 데이터 시트와 COSHH 위험 코드를 알려주세요. Search the web for site:camdentools.com grab adhesive. 이 작업에는 다른 쇼핑몰이 아닌, 오직 camdentools.com만 사용하세요.”
“Camden Tools의 웹사이트 익스프레스 서비스가 현재 camdentools.com에서 당일 발송 가능하며, 마감 시간은 언제인가요? (Camden Tools 커넥터가 필요하며, 없으면 camdentools.com의 배송 페이지를 참조하세요.)”
“camdentools.com에 18V 콤비 드릴, 콘크리트 드릴 비트 세트, 그리고 40mm 벽 플러그 팩을 담은 장바구니를 만들어 주시고, 결제 페이지 링크를 알려주세요. Camden Tools 커넥터가 있다면 하나의 장바구니 링크를 제공하세요. 없다면, site:camdentools.com으로 웹을 검색하여 상품 페이지를 나열하세요. 이 작업에는 다른 쇼핑몰이 아닌, 오직 camdentools.com만 사용하세요.”
설명
POST JSON-RPC 2.0 (Streamable HTTP, stateless, JSON responses): initialize, ping, tools/*, resources/*, prompts/*.
Same server with an OAuth bearer token: the account tools become available. Answers 401 with a WWW-Authenticate challenge that starts sign-in; 404 until OAuth is enabled.
POST JSON-RPC: SendMessage (message/send), GetTask, CancelTask. Deterministic shopping skills.
For assistants with no connector: /api/agent/search?q=, /api/agent/product/{slug} and /api/agent/basket?items=id:qty answer Markdown (format=json for JSON) with live prices, stock and basket links.
This document: tools by category with JSON Schema inputs, resources, prompts, skills, in-page tools, changelog.
Server identity, endpoint and capabilities.
A2A v1.0 card with skills.
RFC 9727 linkset.
OpenAPI 3.1 for the public endpoints.
Agent Skills discovery index and the generated SKILL.md.
ARD capability manifest.
Web Bot Auth: Ed25519 public keys that verify requests signed by Camden Tools.
Agentic Commerce Protocol discovery document; 404 until agentic checkout is enabled.
RFC 9728 metadata for the account endpoint (authorization server, scopes); 404 until OAuth is enabled.
Authentication and registration rules for agents.
Site overview for language models; llms-full.txt adds policies and the tool catalogue.
HTTP 스트리밍 가능, 무상태, JSON 응답. 공개 도구에는 인증 없이 서버 URL을 원격 MCP 서버로 붙여넣으세요. 엔드포인트의 브라우저 GET 요청은 이 페이지로 이동합니다.
https://camdentools.com/mcpnpx @modelcontextprotocol/inspector --transport http --server-url https://camdentools.com/mcpcurl -s https://camdentools.com/mcp \
-H 'content-type: application/json' \
-H 'accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'curl -s https://camdentools.com/a2a -H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"SendMessage","params":{"message":{"messageId":"m1","role":"ROLE_USER","parts":[{"text":"cordless drill"}]}}}'대부분의 대화에는 커넥터가 설치되어 있지 않으며, 브라우징 도구는 URL만 열 수 있습니다. 이들은 도구와 동일한 실시간 가격, 주식 및 장바구니 링크를 제공하는 간결한 Markdown 형식의 답변을 제공합니다; JSON 형식을 원할 경우 format=json을 추가하세요. Claude와 Perplexity는 프롬프트에서 이들을 열 수 있습니다. ChatGPT는 OpenAI의 웹 색인이 이미 알고 있는 URL만 열 수 있으므로, ChatGPT 프롬프트에서 camdentools.com을 언급하고 site:camdentools.com 검색을 요청하거나, 추적 매개변수 없이 제품 페이지 URL을 제공하세요.
https://camdentools.com/api/agent 아래 지침은 어시스턴트가 열 수 있는 페이지입니다.
https://camdentools.com/api/agent/search?q=cordless+combi+drill VAT 포함 및 불포함 가격, 재고, ID, 링크 및 각 재고 제품의 바로 사용 가능한 장바구니 링크가 포함된 제품들. 선택 사항: 페이지, 로케일.
https://camdentools.com/api/agent/product/<slug> 슬러그는 제품 페이지 URL의 마지막 부분입니다. 사양, 변형, 수량별 가격 및 문서를 포함합니다.
https://camdentools.com/api/agent/basket?items=<id>:<quantity>,<id>:<quantity> 재고를 확인하고 쇼핑객의 장바구니를 채우는 하나의 링크로 응답합니다. 아무것도 구매되지 않으며, 쇼핑객은 사이트에서 직접 결제합니다.
각 도구는 간단한 텍스트 요약과 구조화된 JSON을 반환하며, 모든 링크에는 출처 속성 매개변수가 포함됩니다. 가격은 부가세 제외 및 포함 모두 제공됩니다. 브라우저 세션 도구는 쇼핑객의 자체 브라우저에서 동일 출처 호출에만 제공됩니다.
Search and browse products, full product details, live stock, side-by-side comparisons, documents, categories and brands.
search_productsSearch productsFull-text search of the Camden Tools catalogue (tools and hardware, electrical, cleaning, household, garden, safety and more). Returns compact products with prices ex/inc VAT, stock and a link. Out-of-stock products are left out unless include_out_of_stock is true. Use page/per_page to paginate and brand/min_price/max_price to narrow down.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| query (필수) | string | What the shopper is looking for, e.g. 'cordless combi drill 18v'. |
| express | boolean | Only products eligible for Website Express same-day dispatch (UK). |
| include_out_of_stock | boolean | Also return out-of-stock products, which search leaves out by default. Use it when the shopper wants a specific model that may be sold out. |
| page | integer | Page number, starting at 1. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| 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. |
| min_price | number | Minimum price in the locale currency. |
| max_price | number | Maximum price in the locale currency. |
| 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. |
list_productsList productsBrowse 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| collection (필수) | popular | new | on-sale | express | category | Which collection to list. |
| category_slug | string | Required when collection is 'category': a category (leaf) slug from list_categories. |
| min_discount | number | Minimum discount percentage (on-sale listings). |
| page | integer | Page number, starting at 1. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| 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. |
| min_price | number | Minimum price in the locale currency. |
| max_price | number | Maximum price in the locale currency. |
| 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. |
get_productGet productFull 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| slug | string | Product slug from a product URL (…/product/<slug>). |
| sku | string | Product SKU. |
| id | integer | Numeric product id. |
| 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. |
get_productsGet several productsLook up up to 50 products at once by SKU or by numeric id. Returns compact products (name, price ex/inc VAT, stock, link).
| 파라미터 | 유형 | 설명 |
|---|---|---|
| skus | array of string | |
| ids | array of integer | |
| 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. |
get_stock_levelGet stock levelLive availability check for a SKU: whether it can be bought now and how many units can be ordered. Fresher than the stock_level on product results, which can be hours old.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| sku (필수) | string | Product SKU exactly as shown on the site. |
compare_productsCompare productsSide-by-side comparison of 2 to 5 products by SKU: price ex/inc VAT, stock, brand, shipping weight and the specification bullet points, so an agent can recommend between options.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| skus (필수) | array of 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. |
get_product_documentsGet product documentsSafety data sheets, specification sheets and COSHH hazard codes for a product (by slug or SKU). Returns document URLs.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| slug | string | Product slug from a product URL (…/product/<slug>). |
| sku | string | Product SKU. |
| 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. |
list_categoriesList categoriesThe category tree: departments, the groups inside them, and the categories (leaves) that hold products. With no department, lists every department and its groups; with a department or group slug, lists what is inside it. Use popular_only for the popular categories shown on the site. Browse a category's products with get_category or list_products.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| department | string | A department or group slug from an earlier list_categories call, to list what is inside it. |
| popular_only | boolean | Only the popular categories (default false). |
| limit | integer | Maximum entries to return (default 200). |
| 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. |
get_categoryGet categoryA category's details and its products (paged) by slug. For a department or group slug, returns what is inside it instead, since only categories hold products.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| slug (필수) | string | Category slug from list_categories. |
| page | integer | Page number, starting at 1. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| 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. |
list_brandsList brandsBrands sold by Camden Tools (DeWalt, Makita, Milwaukee, Bosch, Stanley …). Without a query returns the popular brands; with a query searches brand names.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| query | string | Brand name search text. |
| page | integer | Page number, starting at 1. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| sort | string | Sort order: price_low, price_high, name_asc, name_desc or newest. Omit for the default (most popular) order. |
get_brand_productsGet brand productsA brand's details, its active promotions and its products (paged) by brand slug.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| slug (필수) | string | Brand slug from list_brands. |
| page | integer | Page number, starting at 1. |
| per_page | integer | Results per page: 15, 30, 50 or 100 (default 15). |
| 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. |
Current promotions, per-product deals, curated bundles and basket-level promotion checks.
list_offersList offersCurrent storefront promotions (percentage/fixed discounts and free gifts), optionally grouped by brand or category. Also points at the /offers page.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| group_by | all | brand | category | Grouping (default all). |
| 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. |
get_product_promotionsGet product promotionsActive promotions that apply to one SKU (discounts, free gifts, end dates).
| 파라미터 | 유형 | 설명 |
|---|---|---|
| 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. |
list_bundlesList bundlesCurated product bundles (kits) with their items and prices.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| 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. |
get_cart_promotionsGet basket promotionsEvaluate 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| country_code (필수) | string | Destination country (ISO alpha-2). |
| items (필수) | array of object { id, quantity } | Basket lines as product ids with quantities. |
| has_tax_id | boolean | Whether the buyer has a VAT/tax id (business purchase). |
| 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. |
Website Express same-day dispatch, shipping availability by country, country pricing, delivery estimates and UK postcode lookup.
get_express_delivery_statusGet Website Express statusWhether Website Express (free same-working-day dispatch for eligible UK orders) is available right now, the order-by cutoff and the promised dispatch date.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| 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. |
check_express_eligibilityCheck Website Express eligibilityWhole-basket Website Express verdict for a set of product ids and quantities: every line must be eligible (no split shipments).
| 파라미터 | 유형 | 설명 |
|---|---|---|
| items (필수) | array of object { id, quantity } | 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. |
check_shipping_availabilityCheck shipping availabilityWhether Camden Tools ships to a country, with any restriction message.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| country_code (필수) | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
| 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. |
get_prices_for_countryGet prices for a countryCountry-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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| shipping_country (필수) | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
| items (필수) | array of object { id, quantity } | 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. |
estimate_deliveryEstimate deliveryDelivery 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| country_code (필수) | string | ISO 3166-1 alpha-2 country code, e.g. GB, IE, DE, US. |
| postcode | string | Destination postcode / ZIP. |
| city | string | Destination city. |
| items (필수) | array of object { id, quantity } | 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. |
lookup_uk_postcodeLook up a UK postcodeAddresses for a full UK postcode such as NW2 7JW (rate limited upstream). A partial postcode (only the outward part, e.g. NW2) is refused.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| postcode (필수) | string | UK postcode, e.g. NW2 7JW. |
Prepare a basket the shopper opens on the site, reviews and pays for at checkout.
create_basket_linkCreate a basket linkTurn 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| items (필수) | array of object { id, quantity } | 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. |
Track any order with its order number and delivery postcode.
track_guest_orderTrack an orderOrder status, tracking number/URL, shipping method and line items for any order, given the order number and the delivery postcode (no sign-in needed).
| 파라미터 | 유형 | 설명 |
|---|---|---|
| order_number (필수) | string | Order number from the confirmation email. |
| postcode (필수) | string | Delivery postcode / ZIP on the order. |
The signed-in shopper's profile and order history. Only from the shopper's own browser on camdentools.com, after they allow AI agent access.
get_my_profileGet my profile브라우저 세션The signed-in shopper's name, email and saved addresses. Needs the shopper's browser session with AI agent access, or an OAuth token with the profile:read scope.
파라미터가 없습니다.
list_my_ordersList my orders브라우저 세션The signed-in shopper's order history (most recent first). Needs the shopper's browser session with AI agent access, or an OAuth token with the orders:read scope.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| page | integer | Page number, starting at 1. |
get_my_orderGet my order브라우저 세션One of the signed-in shopper's orders by order number, with status, tracking and line items. Needs the shopper's browser session with AI agent access, or an OAuth token with the orders:read scope.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| order_number (필수) | string |
Store facts, policies, the London collection point and the blog.
get_site_infoGet store informationWho 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.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| 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. |
get_policyGet policy textFull text (markdown) of a store policy: delivery, returns, payment-options, faqs or contact.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| policy (필수) | delivery | returns | payment-options | faqs | contact | |
| 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. |
get_collection_point_infoGet collection point infoThe London Click & Collect warehouse: address, opening hours, whether it is open right now (Europe/London, bank holidays respected) and when it next opens.
파라미터가 없습니다.
search_blog_postsSearch blog postsGuides and articles from the Camden Tools blog (how-tos, buying guides, brand news).
| 파라미터 | 유형 | 설명 |
|---|---|---|
| query | string | Search text; omit for the latest posts. |
| page | integer | Page number, starting at 1. |
get_blog_postGet blog postA blog post's full text (plain text) by slug.
| 파라미터 | 유형 | 설명 |
|---|---|---|
| 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. |
camdentools://policies/delivery: Camden Tools delivery policy as markdown.camdentools://policies/returns: Camden Tools returns policy as markdown.camdentools://policies/payment-options: Camden Tools payment options policy as markdown.camdentools://policies/faqs: Camden Tools faqs policy as markdown.camdentools://policies/contact: Camden Tools contact policy as markdown.camdentools://store/facts: Company details, contact points, collection point and VAT display rules.camdentools://llms.txt: Site overview for language models (same content as https://camdentools.com/llms.txt).find_the_right_tool: Help a shopper choose a product for a task, within a budget and brand preference, and hand them a basket link.인수: task, budget?, brand?check_delivery: Work out delivery options, cost and timing for a basket to a destination.인수: country_code, postcode?compare: Compare a few SKUs side by side and recommend one.인수: skusA2A 엔드포인트로 JSON-RPC SendMessage를 POST하여 일반 텍스트 또는 스킬 ID를 포함한 JSON 부분을 전송하세요. 모든 메시지는 동기적으로 응답됩니다. 폴링할 태스크는 없습니다.
search-products: Find tools and equipment in the Camden Tools catalogue with prices, stock and links.예시: cordless combi drill 18vproduct-lookup: Full details for a product by SKU or slug: price ex/inc VAT, stock, variants, documents.예시: {"skill":"product-lookup","sku":"DCD796P2"}compare-products: Side-by-side comparison of two to five SKUs.예시: DCD796P2, DHP485Z, M18FPD2create-basket: Turn product ids and quantities into a link that fills the shopper's basket on camdentools.com; they review it and pay at checkout.예시: {"skill":"create-basket","items":[{"id":27155,"quantity":2},{"id":4410,"quantity":1}]}order-status: Track an order with its order number and delivery postcode.예시: order CT-102938 postcode NW2 7JWshipping-availability: Whether Camden Tools ships to a country (ISO alpha-2 code).예시: IEexpress-delivery-status: Whether same-working-day dispatch is available right now for UK orders.예시: express deliverycamdentools.com의 모든 페이지는 WebMCP API(document.modelContext)를 통해 브라우저에 이러한 도구를 등록합니다. 이들은 쇼핑객 자신의 장바구니와 페이지에 작동하며, 모든 작업에 대해 알림을 표시하고, 계정 접근은 쇼핑객의 명시적 동의가 필요합니다.
cart_getGet basketcart_add_itemAdd to basketcart_update_itemUpdate basket linecart_remove_itemRemove from basketcart_clearEmpty basketcart_apply_promoApply promo codecart_remove_promoRemove promo codewishlist_addAdd to wishlistwishlist_removeRemove from wishlistpage_get_contextGet page contextpage_navigateNavigatepage_set_vat_displaySet VAT displaypage_select_variantSelect variantproduct 페이지page_prefill_checkout_addressPre-fill checkout addresscheckout 페이지page_request_account_accessRequest account accessCamden Tools 자체 에이전트 계층에서 전송된 요청은 Ed25519 HTTP 메시지 서명으로 서명됩니다. 키 디렉토리의 공개 키를 사용하여 이를 확인하십시오.
iVuMkdK3A8DRGTiIkpemeEDzvwhDUm3Qo8frb5p_DCU아직 활성화되지 않음 Stripe를 통한 에이전트 체크아웃이 활성화될 때까지 ACP 디스커버리 문서는 404를 반환합니다. 그때까지는 장바구니 링크로 완료하고 구매자가 사이트에서 결제합니다.
Categories follow the site's new category tree (department, group, category). list_categories lists departments and groups, or with department set, what is inside one; each entry has a level, and only level category holds products. get_category on a department or group returns what is inside it, and category links point at the new /category/{department}/{group}/{category} pages. Categories with no products are left out of lists. A slug from the old tree is followed to the category that replaced it, and an unknown slug says to call list_categories. WebMCP page_navigate and llms.txt use the new pages too.
Every MCP tool result now carries its full payload as JSON text after the summary, so clients that only pass text content to the model (and not structuredContent) see the products, prices and stock, not just counts. search_products leaves out-of-stock products out by default; pass include_out_of_stock to include them. list_products on-sale adds source: 'discount', 'promotion' (nothing is discounted, so products in active promotions are listed at their normal price) or 'none'. weight_kg is labelled as the shipping weight. The payment policy adds Discover and Klarna to the methods accepted everywhere.
Fixes from an end-to-end test of every tool. Policy text (get_policy, get_site_info and the policy resources) puts each heading before its own text, pairs every FAQ question with its answer, and no longer shows internal labels or placeholders; delivery lists the countries served and the payment policy names every method. An unknown SKU no longer fails get_product, get_products or compare_products: the others are returned and the unknown one is reported as not found. get_stock_level adds stock_level, the units that can be ordered now (warehouse_quantity is 0 for items shipped from a supplier). get_brand_products prices include VAT. list_bundles names bundles instead of returning translation keys, and check_shipping_availability explains a refused country in words. Clearer errors for an unknown brand slug and a partial UK postcode. Blog posts show featured products as SKUs. Product results list at most 8 categories.
Every tool states readOnlyHint, destructiveHint and openWorldHint explicitly, as OpenAI's app directory requires. None is destructive: every tool is read-only. No other tool changes.
Every tool declares an outputSchema describing its structured result, and each result is checked against it before it is sent. compare_products reports weight_kg in kilograms (it was grams). list_products returns its category in the same shape as get_category, check_express_eligibility's express block has fixed fields, and prices, totals and discount values are always numbers.
The server description and instructions now cover international delivery: orders typically arrive in 2–7 days, with premium UPS services (Worldwide Saver, Express, Express Plus). Agents are asked to quote estimate_delivery's services and transit times for an address rather than the general range. No tool changes.
The MCP endpoints also speak the stateless 2026-07-28 revision: server/discover, per-request protocol version in _meta with the MCP-Protocol-Version, Mcp-Method and Mcp-Name headers, resultType on every result and cache hints on list and read results. Clients using initialize keep the 2025 revisions. New discovery documents: /.well-known/agents.json (every agent endpoint) and /.well-known/oauth-authorization-server (the authorization server's metadata, mirrored on this origin). In-page tools use document.modelContext, and the newsletter form on the homepage is a declarative WebMCP tool (newsletter_subscribe) that fills in the email and leaves consent and submitting to the shopper.
The shop over plain GET, for assistants with no connector installed: /api/agent (guide), /api/agent/search?q=, /api/agent/product/{slug} and /api/agent/basket?items=id:qty answer compact Markdown (or JSON) with the same live prices, stock and basket links as the MCP tools. llms.txt now opens with these instructions, and they are in SKILL.md and the OpenAPI document.
OAuth-ready account access for remote clients: POST /mcp/account with RFC 9728 protected resource metadata and a WWW-Authenticate challenge, account tools gated by the profile:read and orders:read scopes, and a generated /auth.md. The shopper signs in and approves the client on camdentools.com/connect; a grant that lacks a scope is reported as such (reconnect and approve it) rather than as a sign-in problem. Served once the Camden Tools authorization server is configured; until then the endpoint and its metadata return 404. create_basket_link now reports stock per line and lists out_of_stock_ids, and its link is idempotent: opening it makes sure the basket holds at least those quantities, so opening it twice never doubles them. Revoked or disconnected access tokens get the 401 invalid_token challenge.
New create_basket_link tool and A2A create-basket skill: one link fills the shopper's basket on the site (/cart?add=id:qty). Account tools are no longer advertised to remote clients that cannot use them. Capabilities catalogue at /api/agent-capabilities; SKILL.md, OpenAPI and llms-full.txt are generated from it. Web Bot Auth key directory. ACP discovery document (served once agentic checkout is enabled).
Launch: MCP server with 31 tools, 7 resources and 3 prompts; A2A agent with 6 skills; in-page WebMCP tools for the basket, wishlist, navigation, VAT display, variants, checkout prefill and account consent; discovery documents (API catalog, MCP server card, A2A agent card, OpenAPI, agent skills, ai-catalog, auth.md, llms.txt, llms-full.txt).