US FDA Recalls (Food, Drug, Device) MCP
Server Details
FDA food, drug and medical-device recalls by keyword, class and state.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
- Repository
- donniertf-hub/uk-mcp-fleet
- GitHub Stars
- 0
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
latest_recalls and recall_search both match recalls by keyword, so an agent wanting recent recalls could reasonably pick either; the free/pro and fixed-5-vs-100 distinctions help but aren't obvious boundaries within the tool semantics. watchlist is clearly distinct as a batch supplier/brand check.
The names mix conventions: 'latest_recalls' (adjective+noun), 'recall_search' (noun-first with verb second), and 'watchlist' (bare noun). Each is readable in isolation, but there is no predictable verb_noun pattern to rely on.
Three tools for an entire food/drug/device recall domain is on the thin side; the free search, filtered search, and watchlist do each earn a place, but coverage is minimal for a regulatory data source.
Search and monitoring are covered, but there is no way to fetch full details for a specific recall (e.g., get_recall by ID), no firm/classification listing, and no pagination beyond the capped latest-5 view. Agents would hit dead ends when they need record-level detail.
Available Tools
3 toolslatest_recallsBInspect
FREE. Latest 5 FDA recalls (food, drug or device) matching a keyword (product, firm, allergen, pathogen).
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | food (default) | drug | device | |
| keyword | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description does the useful work of stating the result cap ('Latest 5') and a cost signal ('FREE'), which tell the agent about output volume and pricing. However, it omits what happens when no keyword is supplied (0 required params) and gives no indication of freshness window or return fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste; the cost signal and the core behavior come first, followed by the match dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-param tool with no output schema, the description covers purpose and matching behavior but leaves open the default behavior when both optional parameters are omitted. With 0 required params, that no-argument case is a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only documents the 'type' enum; the 'keyword' parameter has no schema description. The description compensates by explaining what the keyword matches (product, firm, allergen, pathogen), which meaningfully clarifies the undocumented parameter beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Latest 5 FDA recalls') with clear scope (food/drug/device) and filterable dimensions (product, firm, allergen, pathogen). This differentiates it implicitly from recall_search because it emphasizes recency and a hard cap of 5, though it never names the sibling directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no alternative is named. The agent must infer from 'Latest 5' that this is a lightweight recent-recall lookup versus a full recall_search, but that inference is left entirely to the reader.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recall_searchBInspect
PRO. Up to 100 recalls across food, drugs and devices with filters: keyword, class (I/II/III), state, since date.
| Name | Required | Description | Default |
|---|---|---|---|
| since | No | YYYY-MM-DD | |
| state | No | ||
| types | No | ||
| keyword | No | ||
| access_token | No | Subscriber token from /success (or Authorization: Bearer) | |
| classification | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose a result cap of 100 and the data domains searched, but omits authentication requirements, pagination/truncation behavior, and the read-only nature of the operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence that front-loads the result cap and data domains. The leading 'PRO.' is cryptic and the sentence omits important context, but it is compact with little wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With six parameters, no annotations, no output schema, and low schema coverage, the description should do more. It names several filters but lacks usage guidance against siblings, authentication context, and return or pagination details, leaving the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description must compensate. It adds meaningful filter semantics: keyword, class I/II/III, state, and since date, and implies the types array maps to food, drugs, and devices, though it does not fully document access_token or types explicitly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource as recalls across food, drugs, and devices, and indicates filtering capability. It does not explicitly distinguish this search tool from siblings like latest_recalls or watchlist, which keeps it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists available filters but gives no explicit guidance on when to use this tool versus latest_recalls or watchlist. It implies usage through the phrase 'with filters,' but provides no exclusions, prerequisites, or alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
watchlistAInspect
PRO. Check up to 50 suppliers/brands/products against recalls in the last N days (default 90).
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | ||
| items | Yes | ||
| access_token | No | Subscriber token from /success (or Authorization: Bearer) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does disclose useful behavior: a PRO/paid tier requirement, a hard cap of 50 items, and a default 90-day window. It omits return shape, error behavior for oversized lists, and whether matching is exact or fuzzy — substantial gaps for a zero-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the tier marker and the core operation, then the constraint and default. Nothing is wasted or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should say more about what a check returns (matches? recall counts? per-item status?) and what happens with invalid or excess items. It covers scope and limits well but leaves the result contract entirely unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, so the description must compensate, and it largely does: 'up to 50' explains the items array semantics and 'last N days (default 90)' gives both meaning and default for days. The access_token parameter is already documented in the schema; only item string format (exact names vs IDs) remains unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Check') and resource ('up to 50 suppliers/brands/products against recalls'), plus a time window. It is clearly a batch watchlist check rather than a single recall lookup, which implicitly distinguishes it from latest_recalls and recall_search, but it never names those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: a capped list of items (50) suggests 'use this when monitoring a set of entities' versus the sibling tools that browse/search recalls. There is no explicit when-to-use, when-not-to-use, or named alternative, and no note on what to do if the list exceeds 50.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
latest_recalls - First observed
recall_search - First observed
watchlist
Related MCP Connectors
Search recall records by company name or product keywords.
Search FDA safety data: drug adverse events, recalls, and device events.
Official FDA recalls, drug labels, adverse events and clinical trials, with cited sources.
FDA drug approvals, 510(k) device clearances, recalls and adverse-event reports.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables searching FDA food recalls and adverse event reports through natural language, supporting filters and pagination.-
- AlicenseNot gradedqualityAmaintenanceQuery FDA data on drugs, food, devices, and recalls via openFDA. Provides 12 tools for searching adverse events, drug labels, recalls, and more.949 npm4Apache 2.0
- AlicenseNot gradedqualityCmaintenanceAccess US consumer-product safety recalls from the CPSC, free and without authentication.433 npmMIT
- AlicenseAqualityBmaintenanceSearches US product recalls across CPSC, FDA, and NHTSA in one call, matching by name, brand, model number, UPC, or VIN with confidence scoring.31MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.