Skip to main content
Glama

Camden Tools

Get stock level

get_stock_level
Read-only

Live 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.

Input Schema

NameRequiredDescriptionDefault
skuYesProduct SKU exactly as shown on the site.

Output Schema

NameRequiredDescriptionDefault
skuYes
localeYes
availableYes
stock_levelYesUnits that can be ordered now (the figure the basket caps quantities at); null when not reported.
warehouse_quantityYesUnits physically in the London warehouse, including ones sold but not yet dispatched. 0 for items shipped direct from a supplier, so do not read 0 as out of stock: use available and stock_level.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedOutput schema / properties / stock_level
      Added value: +{
      +  "description": "Units that can be ordered now (the figure the basket caps quantities at); null when not reported.",
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / warehouse_quantity / description
      Previous value: -"Units in the London warehouse; null when not reported."New value: +"Units physically in the London warehouse, including ones sold but not yet dispatched. 0 for items shipped direct from a supplier, so do not read 0 as out of stock: use available and stock_level."
    • changedOutput schema / required
      Previous value: -[
      -  "sku",
      -  "available",
      -  "warehouse_quantity",
      -  "locale"
      -]New value: +[
      +  "sku",
      +  "available",
      +  "stock_level",
      +  "warehouse_quantity",
      +  "locale"
      +]
  2. Changed2 schema fields changed
    • removedOutput schema / properties / warehouse_quantity / anyOf
      Removed value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedOutput schema / properties / warehouse_quantity / type
      Added value: +[
      +  "number",
      +  "null"
      +]
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "available": {
      +      "type": "boolean"
      +    },
      +    "locale": {
      +      "type": "string"
      +    },
      +    "sku": {
      +      "type": "string"
      +    },
      +    "warehouse_quantity": {
      +      "anyOf": [
      +        {
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Units in the London warehouse; null when not reported."
      +    }
      +  },
      +  "required": [
      +    "sku",
      +    "available",
      +    "warehouse_quantity",
      +    "locale"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish that this is a read-only, non-destructive, open-world operation. The description adds useful behavioral context by explaining that the result is live/fresh and highlighting the staleness limitation of product-result stock data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is two tight clauses that front-load the core purpose and then add the freshness differentiator. There is no filler, and every sentence contributes useful selection context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read-only tool with a full input schema and an output schema, the description is complete enough: it states the purpose, what the check answers, and why it is fresher than product-result stock data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single sku parameter is already documented as the product SKU exactly as shown on the site. The description does not add further SKU format or interpretation detail beyond what the schema provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: a live availability/stock check for a SKU, including what the result means (buyable now, orderable units). It also distinguishes this from the stale stock_level field on product results, so an agent can tell when this tool is the right source of stock information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage context by positioning the tool as a live availability check and explicitly contrasting it with product results that can be hours old. It does not spell out when-not-to-use cases or name a sibling tool directly, so it falls short of fully explicit routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources