Skip to main content
Glama

Search products

search_products
Read-only

Search products across independent US stores. At most three offers per store.

Input Schema

NameRequiredDescriptionDefault
sortNorelevance
limitNo
queryYesWhat to look for, e.g. 'beeswax tealight wicks'
max_priceNoHighest price in USD
min_priceNoLowest price in USD
in_stock_onlyNo
agent_checkoutNo'not_blocked' drops stores where our test agent could not reach the card form; 'clean' keeps only stores where it went through cleanlyany

Output Schema

NameRequiredDescriptionDefault
countYes
queryYes
offersYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, closed-world), so the description's job is additive context, and it delivers two non-obvious facts: the store corpus is US independent stores, and results are capped at three offers per store. It omits other behavioral detail such as the default in-stock filtering and the price-sort trade-offs, but what it adds is genuinely beyond the structured fields.

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

Conciseness4/5

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

Two sentences, twelve words, with the scope and the result cap front-loaded and no filler. It is efficient, though so terse that a couple more words clarifying what an 'offer' is would have cost nothing.

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

Completeness3/5

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

With seven parameters, an output schema, and annotations, the description covers the basics but leaves a real ambiguity: whether the 'limit' parameter counts products or offers, and how the three-offers-per-store cap interacts with it. The in-stock default and price bounds are undocumented in the description, so an agent must read the schema closely.

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 57%, and the description contributes nothing to parameter meaning. Fortunately the ambiguous parameters (query, min/max price, agent_checkout) carry solid schema descriptions, while the undocumented ones (sort, limit, in_stock_only) are conventional and enum/default-constrained, so the 3 baseline is defensible.

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

Purpose4/5

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

States a specific verb and resource ('Search products') plus a scope ('across independent US stores'), which is enough to distinguish it from the single-entity lookups get_offer and get_store without opening a schema. It stops short of explicitly naming those siblings as the alternative for direct lookups.

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

Usage Guidelines2/5

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

There is no statement of when to use this versus get_offer/get_store, no prerequisites, and no exclusions. The only constraints given ('independent US stores', 'at most three offers per store') describe the corpus and result shape, not invocation guidance, so the agent must infer usage from the name alone.

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