Recall Canary

U.S. federal product recalls from FDA, FSIS, CPSC, and NHTSA, in one schema.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
95%
Qualität der Benennung
100%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~6,486Tokens (Tool-Definitionen)
~38.3 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (5.07% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "recall-canary": {
      "url": "https://recallcanary.com/data/mcp"
    }
  }
}

Remote-Endpunkte

https://recallcanary.com/data/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (2)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢search_recalls(q, agency, severity, category, hazard, ...)

Search the Recall Canary index of U.S. federal product recalls (FDA, FSIS, CPSC, NHTSA) by keyword, agency, severity, category, distribution state, hazard, firm, or date window. Returns up to 50 matching records per page with abbreviated content (title, firm, severity, date, and the canonical URL of each); call get_recall to fetch the full record. With a keyword, the best matches come first unless `sort` says otherwise. Unknown agency, severity, category, state and date values are rejected with an error message describing the allowed values. An unknown `hazard` or `firm` is also an error. Read-only.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "maxLength": 200,
      "description": "Free-text query over one index of canonical recalls and preliminary press releases: titles, firm, product name/brand/description, agency reason text, AI summary, hazard tags, and identifiers (UPC, NDC, lot codes, recall and campaign numbers; codes match as printed or as bare digits, including typed in spaced or dashed groups). Every word must match, in any order; words of 3+ characters also match as prefixes (a 2-letter word matches itself and its plural), a plural also matches its singular, and a double-quoted run is an exact phrase. The one operator is an uppercase OR between two words, binding tighter than the implicit AND (`salmonella OR listeria cheese` = (salmonella OR listeria) AND cheese); NOT and NEAR are ordinary words. If no record matches every word, the results fall back to records matching SOME of them and the response says `relaxed: true` (with a notice): those are not confirmed matches. A `q` with more than 10 distinct words or codes is refused with a tool error, not searched in part. Results are ranked by relevance by default. A `q` with no searchable word (only symbols, punctuation or the operators OR / AND) is refused with a tool error, not browsed: omit `q` to browse by filters. Zero results is never evidence a product is unaffected: agencies print codes inconsistently, so also search the brand or product name and compare codes on the record."
    },
    "agency": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "string",
        "enum": [
          "FDA",
          "FSIS",
          "CPSC",
          "NHTSA"
        ]
      },
      "description": "Issuing agencies; matches any. Case-insensitive; values are uppercase."
    },
    "severity": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "string",
        "enum": [
          "CRITICAL",
          "MODERATE",
          "LOW",
          "UNKNOWN"
        ]
      },
      "description": "Matches any. The issuing agency's own level (FDA/FSIS class, NHTSA do-not-drive or park-outside warning) on one scale by a fixed rule; null when the agency gave none. A record reporting null can still match MODERATE here. CPSC records are reachable only via UNKNOWN. Preliminary press releases count as UNKNOWN: a filter without UNKNOWN excludes them. Case-insensitive; values are uppercase."
    },
    "category": {
      "type": "string",
      "enum": [
        "FOOD",
        "DRUG",
        "DEVICE",
        "COSMETIC",
        "CONSUMER_PRODUCT",
        "VEHICLE",
        "AUTO_EQUIPMENT"
      ],
      "description": "Single-select product category. Case-insensitive; values are uppercase."
    },
    "hazard": {
      "type": "string",
      "enum": [
        "undeclared-allergen",
        "undeclared-milk",
        "undeclared-egg",
        "undeclared-peanut",
        "undeclared-tree-nut",
        "undeclared-wheat",
        "undeclared-soy",
        "undeclared-sesame",
        "undeclared-fish",
        "undeclared-shellfish",
        "undeclared-additive",
        "salmonella",
        "listeria",
        "e-coli",
        "botulism",
        "contamination",
        "chemical-contamination",
        "foreign-material",
        "sterility",
        "labeling",
        "misbranding",
        "potency",
        "hidden-drug",
        "unapproved-product",
        "manufacturing-deviation",
        "dissolution",
        "impurity",
        "specification-failure",
        "packaging-defect",
        "process-deviation",
        "nutrient-deficiency",
        "quality-defect",
        "software-defect",
        "device-defect",
        "donor-eligibility",
        "import-violation",
        "no-inspection",
        "fire",
        "burn",
        "explosion",
        "carbon-monoxide",
        "electric-shock",
        "laceration",
        "impalement",
        "fall",
        "tip-over",
        "choking",
        "ingestion",
        "poisoning",
        "lead-or-chemical",
        "suffocation",
        "strangulation",
        "entrapment",
        "drowning",
        "crush",
        "impact",
        "crash",
        "injury",
        "do-not-drive",
        "fire-risk-parked",
        "vehicle-electrical",
        "vehicle-equipment",
        "vehicle-mobility-equipment",
        "vehicle-structure",
        "vehicle-power-train",
        "vehicle-backup-camera",
        "vehicle-lighting",
        "vehicle-seat-belts",
        "vehicle-suspension",
        "vehicle-visibility",
        "vehicle-air-bags",
        "vehicle-seats",
        "vehicle-brakes",
        "vehicle-steering",
        "vehicle-fuel-system",
        "vehicle-engine",
        "vehicle-tires",
        "vehicle-wheels",
        "vehicle-trailer-hitch",
        "vehicle-latches",
        "vehicle-child-seat",
        "vehicle-driver-assistance"
      ],
      "description": "Single-select hazard tag, lowercase and hyphenated, the same filter as the website hazard pages: matches records whose hazard_tags include it, press releases included. Anything else is an error."
    },
    "firm": {
      "type": "string",
      "maxLength": 100,
      "description": "Firm slug: the firm of one recall, as the `firm.slug` value of a get_recall record, or the last part of a /firm/ page URL (for example \"acme-foods\"). Matches that firm's recalls and press releases. An unknown or malformed slug is an error, not a dropped filter: no search is returned."
    },
    "state": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Two-letter USPS code for a U.S. state or DC. Matches records distributed there or flagged nationwide. Territories are not filterable. Note the round trip: this takes a bare code such as \"TX\", while `distribution.geos` in the response emits ISO 3166-2 (\"US-TX\")."
    },
    "date": {
      "type": "string",
      "enum": [
        "7d",
        "30d",
        "90d",
        "year"
      ],
      "description": "Relative window, resolved against the request clock. Ignored when `from` or `to` is set."
    },
    "from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Inclusive lower bound, YYYY-MM-DD at 00:00:00 UTC."
    },
    "to": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Inclusive upper bound, YYYY-MM-DD at 23:59:59 UTC."
    },
    "sort": {
      "type": "string",
      "enum": [
        "recent",
        "severity",
        "relevance"
      ],
      "description": "`relevance` (the default when `q` is set) puts the best matches first. `recent` orders by listing date descending (the default without `q`). `severity` puts CRITICAL then MODERATE first, date descending within each band."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "description": "1-based page number, 50 records per page. Values above 200 clamp to 200; reach deeper archive by narrowing the date window instead. Pass the next page number in this parameter to navigate paginated results."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "snapshot_at": {
      "type": "string",
      "description": "ISO-8601 UTC response-generation time, second precision. First key on purpose."
    },
    "api_version": {
      "type": "string"
    },
    "canonical": {
      "type": "string",
      "description": "Absolute URL of this representation."
    },
    "html_url": {
      "type": "string",
      "description": "Absolute URL of the human-readable page."
    },
    "license": {
      "type": "object",
      "description": "Attribution and terms (DATA-LICENSE).",
      "properties": {
        "attribution": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "publisher": {
          "type": "string"
        }
      },
      "required": [
        "attribution",
        "url",
        "publisher"
      ]
    },
    "filters": {
      "type": "object",
      "description": "The filters as applied, after normalization. An unapplied filter is echoed as null or [].",
      "properties": {
        "q": {
          "type": [
            "string",
            "null"
          ]
        },
        "category": {
          "enum": [
            "FOOD",
            "DRUG",
            "DEVICE",
            "COSMETIC",
            "CONSUMER_PRODUCT",
            "VEHICLE",
            "AUTO_EQUIPMENT",
            null
          ]
        },
        "agency": {
          "type": "array",
          "items": {
            "enum": [
              "FDA",
              "FDA_IRES",
              "FSIS",
              "CPSC",
              "NHTSA",
              "ADMIN"
            ]
          }
        },
        "severity": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "state": {
          "type": [
            "string",
            "null"
          ]
        },
        "date": {
          "type": [
            "string",
            "null"
          ]
        },
        "from": {
          "type": [
            "string",
            "null"
          ]
        },
        "to": {
          "type": [
            "string",
            "null"
          ]
        },
        "sort": {
          "enum": [
            "recent",
            "severity",
            "relevance"
          ]
        },
        "hazard": {
          "type": [
            "string",
            "null"
          ]
        },
        "firm": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "slug": {
              "type": [
                "string",
                "null"
              ]
            },
            "name": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "slug",
            "name"
          ]
        }
      },
      "required": [
        "q",
        "category",
        "agency",
        "severity",
        "state",
        "date",
        "from",
        "to",
        "sort",
        "hazard",
        "firm"
      ]
    },
    "pagination": {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer"
        },
        "per_page": {
          "type": "integer"
        },
        "has_more": {
          "type": "boolean"
        },
        "next": {
          "type": [
            "string",
            "null"
          ]
        },
        "prev": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "page",
        "per_page",
        "has_more",
        "next",
        "prev"
      ]
    },
    "notices": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Rules that narrowed or widened the results, stated in band. Empty when none apply."
    },
    "relaxed": {
      "type": "boolean"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "description": "One compacted listing row. Null-valued keys are omitted, so only record_type, id, agency, url, product_count and hazard_tags are guaranteed, and every row carries `display_title` or `title`. `reason` is not in this projection; call get_recall for the full record.",
        "properties": {
          "record_type": {
            "enum": [
              "recall",
              "preliminary"
            ],
            "description": "`preliminary` is an agency press release with no canonical record yet: no severity, status or products."
          },
          "id": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "description": "Absolute canonical URL of the human page."
          },
          "agency": {
            "type": "string",
            "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
          },
          "source_recall_id": {
            "type": "string",
            "description": "Agency key; a CPSC one can be stale."
          },
          "category": {
            "type": "string",
            "description": "Known values: FOOD, DRUG, DEVICE, COSMETIC, CONSUMER_PRODUCT, VEHICLE, AUTO_EQUIPMENT."
          },
          "severity": {
            "type": "string",
            "description": "Issuing agency level. Absent when the agency gave none. Known values: CRITICAL, MODERATE, LOW."
          },
          "status": {
            "type": "string"
          },
          "risk": {
            "type": "object",
            "description": "The agency rating as the page shows it (for example \"High risk\" for an FDA Class I recall). Null where the page shows no risk line.",
            "properties": {
              "word": {
                "type": "string"
              },
              "basis": {
                "type": "string"
              },
              "explained_at": {
                "type": "string",
                "description": "Absolute URL of the page that explains the rating."
              }
            },
            "required": [
              "word",
              "basis",
              "explained_at"
            ]
          },
          "display_title": {
            "type": "string"
          },
          "title": {
            "type": "string",
            "description": "Only when `display_title` is absent (a record not yet enriched): the title recallcanary.com shows for it, from the agency record's product names and title; never the agency headline. Not model-written."
          },
          "display_summary_short": {
            "type": "string"
          },
          "firm_name": {
            "type": "string"
          },
          "listed_at": {
            "type": "string",
            "description": "ISO-8601 UTC listing date."
          },
          "product_count": {
            "type": "integer"
          },
          "hazard_tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "ai_generated": {
            "type": "object",
            "description": "Provenance for the fields this row carries. Absent when the row carries none.",
            "properties": {
              "display_title": {
                "type": "boolean"
              },
              "display_summary_short": {
                "type": "boolean"
              },
              "category": {
                "type": "boolean",
                "description": "True only for a press release's model-classified category."
              }
            }
          }
        },
        "required": [
          "record_type",
          "id",
          "agency",
          "url",
          "product_count",
          "hazard_tags"
        ]
      }
    },
    "notes": {
      "type": "string",
      "description": "The caveat that absence of a match is not a clearance."
    }
  },
  "required": [
    "snapshot_at",
    "api_version",
    "canonical",
    "html_url",
    "license",
    "filters",
    "pagination",
    "notices",
    "relaxed",
    "results",
    "notes"
  ],
  "description": "A page of search or browse results. `relaxed` true means the results match only SOME of the query words, and `notices` says so."
}
🟢get_recall(agency, slug)

Fetch the full Recall Canary record for a single U.S. federal recall, given the agency and slug returned by search_recalls. Includes the hazard description, the affected product list with lot codes and UPCs, the recommended consumer action, distribution, the agency source link, and the firm slug (`firm.slug`, with `firm.page_url` when the firm has a page) for search_recalls' `firm` filter. Also resolves preliminary agency press releases: an orphan, or a linked one that kept its own URL (its recalls in `linked_recalls`). Read-only.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "agency": {
      "type": "string",
      "enum": [
        "fda",
        "fsis",
        "cpsc",
        "nhtsa",
        "admin"
      ],
      "description": "Lowercase agency segment from the record URL. Part of the lookup key, not decoration: a correct slug under the wrong agency is a miss."
    },
    "slug": {
      "type": "string",
      "maxLength": 200,
      "description": "The record slug from its URL, e.g. \"acme-foods-peanut-butter\". The 26-character ULID id is also accepted and resolves to what its URL shows (for a matched press release, often its recall)."
    }
  },
  "required": [
    "agency",
    "slug"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "snapshot_at": {
      "type": "string",
      "description": "ISO-8601 UTC response-generation time, second precision. First key on purpose."
    },
    "api_version": {
      "type": "string"
    },
    "canonical": {
      "type": "string",
      "description": "Absolute URL of this representation."
    },
    "html_url": {
      "type": "string",
      "description": "Absolute URL of the human-readable page."
    },
    "license": {
      "type": "object",
      "description": "Attribution and terms (DATA-LICENSE).",
      "properties": {
        "attribution": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "publisher": {
          "type": "string"
        }
      },
      "required": [
        "attribution",
        "url",
        "publisher"
      ]
    },
    "record_type": {
      "enum": [
        "recall",
        "preliminary"
      ]
    },
    "id": {
      "type": "string"
    },
    "slug": {
      "type": [
        "string",
        "null"
      ]
    },
    "url": {
      "type": "string"
    },
    "agency": {
      "type": "string",
      "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
    },
    "title": {
      "type": "string",
      "description": "Agency-published title. Never model-written."
    },
    "display_title": {
      "type": [
        "string",
        "null"
      ]
    },
    "display_summary": {
      "type": [
        "string",
        "null"
      ]
    },
    "display_summary_short": {
      "type": [
        "string",
        "null"
      ]
    },
    "consumer_action": {
      "type": [
        "string",
        "null"
      ],
      "description": "The \"What to do\" text. Null on a withdrawn alert."
    },
    "risk": {
      "type": [
        "object",
        "null"
      ],
      "description": "The agency rating as the page shows it (for example \"High risk\" for an FDA Class I recall). Null where the page shows no risk line.",
      "properties": {
        "word": {
          "type": "string"
        },
        "basis": {
          "type": "string"
        },
        "explained_at": {
          "type": "string",
          "description": "Absolute URL of the page that explains the rating."
        }
      },
      "required": [
        "word",
        "basis",
        "explained_at"
      ]
    },
    "hazard_tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "identification": {
      "type": "object",
      "description": "Page-derived identification: the products and codes the record names. Not a completeness guarantee; `partial` says when the list is incomplete, including when this response cut `products` to 25 (`mcp_truncated.identification_products`).",
      "properties": {
        "products": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "fields": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "role": {
                      "type": "string"
                    },
                    "label": {
                      "type": "string"
                    },
                    "kind": {
                      "enum": [
                        "code",
                        "date",
                        "text"
                      ]
                    },
                    "values": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "hidden": {
                      "type": "integer",
                      "description": "Values the stored cell left out (a capped list)."
                    }
                  },
                  "required": [
                    "role",
                    "label",
                    "kind",
                    "values"
                  ]
                }
              }
            },
            "required": [
              "name",
              "fields"
            ]
          }
        },
        "context": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "partial": {
          "type": "boolean"
        },
        "scope_note": {
          "type": [
            "string",
            "null"
          ]
        },
        "fallback": {
          "type": [
            "string",
            "null"
          ]
        },
        "ai_generated": {
          "type": "boolean",
          "description": "True when the product list came from a model-written identifier line."
        }
      },
      "required": [
        "products",
        "context",
        "partial",
        "scope_note",
        "fallback",
        "ai_generated"
      ]
    },
    "company_product_list": {
      "type": [
        "object",
        "null"
      ],
      "description": "The company's own list of the affected products, when the agency notice points to it instead of naming them. A product missing from `identification` may still be recalled: check this list.",
      "properties": {
        "url": {
          "type": "string"
        },
        "host": {
          "type": "string"
        },
        "label": {
          "type": "string"
        }
      },
      "required": [
        "url",
        "host",
        "label"
      ]
    },
    "content_changed_at": {
      "type": [
        "string",
        "null"
      ],
      "description": "When the published content last changed."
    },
    "ai_generated": {
      "type": "object",
      "description": "Provenance: true where the field holds model-written text. Over-attributes on purpose.",
      "properties": {
        "display_title": {
          "type": "boolean"
        },
        "display_summary": {
          "type": "boolean"
        },
        "display_summary_short": {
          "type": "boolean"
        },
        "consumer_action": {
          "type": "boolean"
        },
        "category": {
          "type": "boolean",
          "description": "True only for a press release's model-classified category."
        }
      },
      "required": [
        "display_title",
        "display_summary",
        "display_summary_short",
        "consumer_action",
        "category"
      ]
    },
    "notes": {
      "type": "string",
      "description": "Caveats for this record, including the aggregator-lag and not-a-clearance statement."
    },
    "category": {
      "type": [
        "string",
        "null"
      ],
      "description": "Known values: FOOD, DRUG, DEVICE, COSMETIC, CONSUMER_PRODUCT, VEHICLE, AUTO_EQUIPMENT."
    },
    "severity": {
      "type": [
        "string",
        "null"
      ],
      "description": "Known values: CRITICAL, MODERATE, LOW."
    },
    "status": {
      "type": [
        "string",
        "null"
      ]
    },
    "reason": {
      "type": [
        "string",
        "null"
      ],
      "description": "The agency's own stated reason, not model-written."
    },
    "description": {
      "type": [
        "string",
        "null"
      ],
      "description": "Full agency description. FSIS: sanitized HTML; others: plain text. Sanitize or escape before display."
    },
    "source_url": {
      "type": [
        "string",
        "null"
      ],
      "description": "The agency's own notice."
    },
    "advisory_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "source_recall_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "Agency key; a CPSC one can be stale."
    },
    "story_lead_id": {
      "type": [
        "string",
        "null"
      ],
      "description": "Set on a later record of a recall story; the lead it belongs to."
    },
    "story_lead_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "firm": {
      "type": "object",
      "properties": {
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "slug": {
          "type": [
            "string",
            "null"
          ],
          "description": "The firm filter value (`firm=` on search_recalls)."
        },
        "page_url": {
          "type": [
            "string",
            "null"
          ],
          "description": "/firm/<slug> page, only when that page is indexable."
        },
        "city": {
          "type": [
            "string",
            "null"
          ]
        },
        "state": {
          "type": [
            "string",
            "null"
          ]
        },
        "country": {
          "type": [
            "string",
            "null"
          ],
          "description": "CPSC: the first manufacturing country it lists. FDA: the firm's address country."
        },
        "countries_all": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The agency's structured manufacturing-country list (CPSC only), each country once; [] for FDA, FSIS and NHTSA."
        }
      },
      "required": [
        "name",
        "slug",
        "page_url",
        "city",
        "state",
        "country",
        "countries_all"
      ]
    },
    "distribution": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "nationwide": {
          "type": "boolean"
        },
        "geos": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "raw": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "nationwide",
        "geos",
        "raw"
      ]
    },
    "critical_flags": {
      "type": [
        "object",
        "null"
      ],
      "description": "NHTSA-only in practice. An absent key means the agency did not state the flag. null for a withdrawn (RETRACTED) record.",
      "properties": {
        "do_not_drive": {
          "type": "boolean"
        },
        "park_outside": {
          "type": "boolean"
        },
        "ota_fixable": {
          "type": "boolean"
        },
        "undeclared_drug": {
          "type": "boolean"
        },
        "equipment_only": {
          "type": "boolean"
        },
        "international": {
          "type": "boolean"
        }
      }
    },
    "units_affected": {
      "type": [
        "number",
        "null"
      ]
    },
    "product_count": {
      "type": "integer",
      "description": "The true event scope, which may exceed products.length."
    },
    "products_truncated": {
      "type": "boolean",
      "description": "True when `product_count` exceeds the length of `products`"
    },
    "products": {
      "type": "array",
      "items": {
        "type": "object",
        "description": "One affected product. Lot codes and UPCs: one code per element, every code held; `*_omitted` counts the codes the agency notice lists beyond them.",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "brand": {
            "type": [
              "string",
              "null"
            ]
          },
          "make": {
            "type": [
              "string",
              "null"
            ]
          },
          "component": {
            "type": [
              "string",
              "null"
            ]
          },
          "product_type": {
            "type": [
              "string",
              "null"
            ]
          },
          "product_recall_number": {
            "type": [
              "string",
              "null"
            ]
          },
          "quantity": {
            "type": [
              "string",
              "null"
            ],
            "description": "The agency's free-form quantity, verbatim."
          },
          "lot_codes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "lot_codes_omitted": {
            "type": "integer"
          },
          "upc": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "upc_omitted": {
            "type": "integer"
          },
          "gtin": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Since api 2.6.0. The GS1-valid codes of `upc` (a GTIN, or a UDI-DI on a device), without the product's own lots, serials and catalog numbers."
          },
          "serial_numbers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Since api 2.6.0. The serial numbers the agency notice lists, one per element."
          },
          "serial_numbers_omitted": {
            "type": "integer",
            "description": "Since api 2.6.0. How many more serial numbers the notice lists than `serial_numbers`, where a stored list was cut."
          },
          "catalog_numbers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Since api 2.6.0. The catalog, REF or part numbers the agency notice lists, one per element."
          },
          "sold_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "made_in": {
            "type": [
              "string",
              "null"
            ]
          },
          "remedy_description": {
            "type": [
              "string",
              "null"
            ]
          },
          "remedy_options": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "hazard_description": {
            "type": [
              "string",
              "null"
            ]
          },
          "incidents": {
            "type": [
              "string",
              "null"
            ]
          },
          "severity": {
            "type": [
              "string",
              "null"
            ],
            "description": "Known values: CRITICAL, MODERATE, LOW."
          },
          "status": {
            "type": [
              "string",
              "null"
            ]
          },
          "image_url": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "description",
          "brand",
          "make",
          "component",
          "product_type",
          "product_recall_number",
          "quantity",
          "lot_codes",
          "lot_codes_omitted",
          "upc",
          "upc_omitted",
          "gtin",
          "serial_numbers",
          "serial_numbers_omitted",
          "catalog_numbers",
          "sold_at",
          "made_in",
          "remedy_description",
          "remedy_options",
          "hazard_description",
          "incidents",
          "severity",
          "status",
          "image_url"
        ]
      }
    },
    "press_releases": {
      "type": "array",
      "items": {
        "type": "object",
        "description": "A linked agency press release, as a link only.",
        "properties": {
          "url": {
            "type": "string",
            "description": "The agency's own URL."
          },
          "title": {
            "type": "string"
          },
          "agency": {
            "type": "string"
          },
          "published_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "Deprecated: the stored pub_date. Read company_announced_at / agency_published_at."
          },
          "company_announced_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "agency_published_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "canary_url": {
            "type": [
              "string",
              "null"
            ],
            "description": "Usually the recall's own url (it took the press release's)."
          }
        },
        "required": [
          "url",
          "title",
          "agency",
          "published_at",
          "company_announced_at",
          "agency_published_at",
          "canary_url"
        ]
      }
    },
    "related": {
      "type": "object",
      "properties": {
        "same_product": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "agency": {
                "type": "string",
                "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
              },
              "title": {
                "type": "string",
                "description": "Agency-published title."
              },
              "firm_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "severity": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Known values: CRITICAL, MODERATE, LOW."
              },
              "listed_at": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "product_count": {
                "type": "integer"
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why this record is listed here, plain text."
              }
            },
            "required": [
              "id",
              "url",
              "agency",
              "title",
              "firm_name",
              "severity",
              "listed_at",
              "product_count",
              "reason"
            ]
          }
        },
        "same_hazard": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "agency": {
                "type": "string",
                "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
              },
              "title": {
                "type": "string",
                "description": "Agency-published title."
              },
              "firm_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "severity": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Known values: CRITICAL, MODERATE, LOW."
              },
              "listed_at": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "product_count": {
                "type": "integer"
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why this record is listed here, plain text."
              }
            },
            "required": [
              "id",
              "url",
              "agency",
              "title",
              "firm_name",
              "severity",
              "listed_at",
              "product_count",
              "reason"
            ]
          }
        },
        "by_firm": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "agency": {
                "type": "string",
                "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
              },
              "title": {
                "type": "string",
                "description": "Agency-published title."
              },
              "firm_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "severity": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Known values: CRITICAL, MODERATE, LOW."
              },
              "listed_at": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "product_count": {
                "type": "integer"
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why this record is listed here, plain text."
              }
            },
            "required": [
              "id",
              "url",
              "agency",
              "title",
              "firm_name",
              "severity",
              "listed_at",
              "product_count",
              "reason"
            ]
          }
        },
        "events": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "agency": {
                "type": "string",
                "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
              },
              "title": {
                "type": "string",
                "description": "Agency-published title."
              },
              "firm_name": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "severity": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Known values: CRITICAL, MODERATE, LOW."
              },
              "listed_at": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "product_count": {
                "type": "integer"
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Why this record is listed here, plain text."
              },
              "kind": {
                "type": "string",
                "description": "Known values: other_agency, source_recall, ingredient_alert, named_supplier."
              },
              "direction": {
                "enum": [
                  "from",
                  "to"
                ],
                "description": "`from` = this record cites, names or alerts; `to` = the record it cites."
              },
              "evidence": {
                "type": "object",
                "properties": {
                  "rule": {
                    "type": "string"
                  },
                  "words": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "citation": {
                    "type": "string"
                  }
                },
                "required": [
                  "rule"
                ]
              }
            },
            "required": [
              "id",
              "url",
              "agency",
              "title",
              "firm_name",
              "severity",
              "listed_at",
              "product_count",
              "reason",
              "kind",
              "direction",
              "evidence"
            ]
          },
          "description": "Stored relations of this record, at most 20. Absent (not empty) while RELATIONS_DISPLAY is off."
        }
      },
      "required": [
        "same_product",
        "same_hazard",
        "by_firm"
      ]
    },
    "dates": {
      "type": "object",
      "properties": {
        "listed_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "listed_at_basis": {
          "type": "string",
          "description": "What listed_at is: company_announced, fda_posted, fda_classified, listed, unconfirmed, none, agency_announced or nhtsa_reported."
        },
        "announced_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "ended_at": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "listed_at",
        "listed_at_basis",
        "announced_at",
        "ended_at"
      ]
    },
    "timeline": {
      "type": "array",
      "description": "Dated steps of the record, in date order. Each step names who acted on that date.",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "at": {
            "type": "integer",
            "description": "Unix seconds."
          },
          "date": {
            "type": "string",
            "description": "UTC calendar day, YYYY-MM-DD."
          }
        },
        "required": [
          "label",
          "at",
          "date"
        ]
      }
    },
    "mcp_truncated": {
      "type": "object",
      "description": "Present only when a long list was cut to 25 for this response."
    },
    "firm_name": {
      "type": [
        "string",
        "null"
      ]
    },
    "published_at": {
      "type": [
        "string",
        "null"
      ],
      "description": "Deprecated: the stored pub_date."
    },
    "company_announced_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "agency_published_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "listed_at": {
      "type": [
        "string",
        "null"
      ],
      "description": "Since api 2.6.0. The date the listing shows and sorts by; equals this record's search_recalls row. A recall's listing date is in dates.listed_at."
    },
    "linked_recalls": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "agency": {
            "type": "string",
            "description": "Known values: FDA, FDA_IRES, FSIS, CPSC, NHTSA, ADMIN."
          },
          "title": {
            "type": "string",
            "description": "Agency-published title."
          },
          "firm_name": {
            "type": [
              "string",
              "null"
            ]
          },
          "severity": {
            "type": [
              "string",
              "null"
            ],
            "description": "Known values: CRITICAL, MODERATE, LOW."
          },
          "listed_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "product_count": {
            "type": "integer"
          },
          "reason": {
            "type": [
              "string",
              "null"
            ],
            "description": "Why this record is listed here, plain text."
          }
        },
        "required": [
          "id",
          "url",
          "agency",
          "title",
          "firm_name",
          "severity",
          "listed_at",
          "product_count",
          "reason"
        ]
      }
    }
  },
  "required": [
    "snapshot_at",
    "api_version",
    "canonical",
    "html_url",
    "license",
    "record_type",
    "id",
    "url",
    "agency",
    "title",
    "hazard_tags",
    "identification",
    "content_changed_at",
    "ai_generated",
    "notes"
  ],
  "description": "One record. `record_type` says which kind: a canonical `recall` (products, timeline, dates, related) or a `preliminary` agency press release (linked_recalls, company and agency dates)."
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet2 Tools