Skip to main content
Glama

Recall Kitchen

search_product_recalls

Read-onlyIdempotent

Search product recalls by query. Query uses websearch syntax: unquoted words are AND, OR is or, -term excludes, quoted phrases match as a unit (example: Generac Generator -Portable). Optional filters: source (cpsc, fdafoodsafety, FDAMedWatch, usda), since/until (YYYY-MM-DD), location (country, region, or place, ANDed with the query), offset, limit. Descriptions are truncated and extracted products are capped; use get_product_recall for the full text.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNonumber of recalls to return, 1-100, default 3
queryNowebsearch query: unquoted words are AND, OR is or, -term excludes, quoted phrases match as a unit. Example: Generac Generator -Portable
sinceNooptional published-on start date YYYY-MM-DD
untilNooptional published-on end date YYYY-MM-DD
offsetNonumber of recalls to skip
sourceNooptional source filter: cpsc, fdafoodsafety, FDAMedWatch, or usda. Aliases: FDA and food map to fdafoodsafety; medwatch maps to FDAMedWatch.
locationNooptional country, region, or place; ANDed with the query. US aliases such as CA and California still apply

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
offsetYes
recallsYes
nextOffsetNo

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive, so the description builds on that rather than repeating it. It discloses important behavioral details not visible from annotations: websearch query semantics, AND/OR/exclusion behavior, quoted phrase matching, truncation of descriptions, capping of extracted products, and the pointer to get_product_recall for full text.

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 description is two sentences with no filler. The first sentence establishes the core purpose, and the second packs syntax, filters, pagination, and the truncation caveat into a compact but readable structure. Every clause earns its place.

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 search tool with rich schema coverage and an output schema, the description is complete: it covers query syntax, all filters, pagination, and the key limitation around truncated results. It also tells the agent where to go for full text, which is exactly the context needed to invoke this tool correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful semantic value beyond the schema: it explains websearch syntax with an example, clarifies that location is ANDed with the query, lists the source filter values, and specifies date format. It does not reinvent schema fields, but it does not need to given the schema's completeness.

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 states a specific verb ('Search') and resource ('product recalls') and immediately distinguishes this tool from siblings like search_product_recalls_by_upc and search_product_recalls_from_image by framing it as query-based search. It also names get_product_recall as the companion for full-text retrieval, removing ambiguity about scope.

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?

The description clearly establishes when to use this tool: for query-based product recall searches with optional filters and pagination. It explicitly points to get_product_recall when full text is needed. It does not explicitly contrast against UPC/image/identifier-based search siblings, but the query-centric framing makes the intended context clear.

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.

TDQS

A4/5.0
Disambiguation4/5

Most tools have clearly distinct roles, and the descriptions explicitly separate product lookup from recall search. However, the multiple recall search entry points (by query, UPC, image, and identifier) overlap enough that an agent could pick the wrong one without carefully reading the details.

Naming Consistency5/5

Tool names consistently follow a snake_case verb_noun pattern such as add_, list_, remove_, search_, get_, create_, revoke_, and mark_. The single-word signup is the only minor deviation, but it does not undermine the overall naming system.

Tool Count3/5

At 19 tools, the set is in the borderline-heavy range. The count is justified by the multiple subdomains like API key management, inventory, watch patterns, notifications, and recall searching, but it still feels slightly above the ideal well-scoped tool surface.

Completeness4/5

Core recall search, product lookup, inventory tracking, watch pattern management, notifications, and API key lifecycle are all covered well. Minor gaps exist such as no way to update a watch pattern or view account usage limits, but agents can generally work around them.

Resources