Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

FDA Data MCP

REMOTE · WWW.REGDATALAB.COM · SCANNED AUG 3

Clean FDA regulatory data: company resolution, facilities, recalls, inspections, approvals.

+4 this week 68 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security63
Transport & Reachability100
Schema Quality & AI Usability73
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 9359 tokens (~191/item across 49 items; 48 tools + 1 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · www.regdatalab.com

# add to Claude Code
claude mcp add --transport http medley-fda-data https://www.regdatalab.com/mcp
# ~/.codex/config.toml
[mcp_servers.medley-fda-data]
url = "https://www.regdatalab.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "medley-fda-data": {
      "type": "remote",
      "url": "https://www.regdatalab.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add medley-fda-data --url https://www.regdatalab.com/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  medley-fda-data:
    url: "https://www.regdatalab.com/mcp"
// mcp.json
{
  "mcpServers": {
    "medley-fda-data": {
      "type": "http",
      "url": "https://www.regdatalab.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +43
    • Transport: fail → pass security
    • Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 46 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. security
    • Endpoint reachability: not serving MCP → reachable functional
    • MCP protocol: unverified → pass functional
    • Stability: unverified → 0.23 functional
    • Schema quality: unverified → 100 functional
    • Tool coverage: unverified → 100 functional
  • 31 Jul 26 +9
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −10
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +10
    • Transport: fail → pass security
  • 28 Jul 26 −48
    • Endpoint reachability: reachable → not serving MCP security
    • Transport: pass → fail security
    • Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the tool list to see what that exposes. security
    • Tool coverage: 100 → unverified functional
    • Capabilities: pass → unverified functional
    • Schema quality: 100 → unverified functional
  • 27 Jul 26 +38
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 26

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://www.regdatalab.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=www.regdatalab.com CN=YR1,O=Let's Encrypt,C=US 30 Jun 2026 28 Sept 2026 RSA 2048 SHA256-RSA 5f11f700a06b59dd1f667779816a97afef3
SANs: www.regdatalab.com
CN=YR1,O=Let's Encrypt,C=US (CA) CN=Root YR,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 RSA 2048 SHA256-RSA a20253f15f2691c05dc1ce13b9bcca4e
CN=Root YR,O=ISRG,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 RSA 4096 SHA256-RSA f24b6d17f9d9ad7cb1c9fea78782699f
DNSSEC insecure

Validation of www.regdatalab.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
regdatalab.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=31536000; includeSubDomains
content-security-policy default-src 'self'; img-src 'self' data: https: https://www.google-analytics.com https://region1.google-analytics.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://challenges.cloudflare.com https://cdn.jsdelivr.net https://www.googletagmanager.com; frame-src https://challenges.cloudflare.com; connect-src 'self' https://www.regdatalab.com https://www.google-analytics.com https://region1.google-analytics.com https://www.googletagmanager.com
x-content-type-options nosniff
x-frame-options DENY
referrer-policy strict-origin-when-cross-origin
permissions-policy geolocation=(), microphone=(), camera=()
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://www.regdatalab.com/mcp Verified 200
http (plaintext) http://www.regdatalab.com/mcp HTTPS enforced 308 https://www.regdatalab.com/mcp
MCP tools — 48 exposed · ~9,326 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
fda_bpdr_summary ~166

Search FDA's Biological Product Deviation Report annual summary counts. This is summary-level biotech and blood/HCT/P manufacturing signal from official FDA annual reports, not per-event case detail.

NameTypeReqDescription
establishment_typestringEstablishment type, for example Vaccine or 351 HCT/P
fiscal_yearintegerMetric fiscal year, for example 2024
group_namestringGroup name, for example Licensed Non-Blood Manufacturers
keywordstringKeyword to search in group_name or establishment_type
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
row_typestringWhether the row is a normal establishment line, subtotal, or total

No output schema declared.

No examples provided.

fda_citations ~482

Search specific CFR violation citations from FDA inspections (Compliance Dashboard data, not available in openFDA API). Filter by company name, FEI number, CFR number, keyword, program area, fiscal year, inspection date range, or the parent inspection's classification (NAI/VAI/OAI). CFR matching is hierarchical and section-anchored: pass '21 CFR 211.68' or '211.68' and it matches '21 CFR 211.68', '21 CFR 211.68(a)', '21 CFR 211.68(b)' but NOT '21 CFR 211.680' or '21 CFR 211.6'. Each row carries the parent inspection's classification (inspection_classification / inspection_classification_code) joined by inspection_id, plus inspection_id and a best-effort source_url deep link. Returns the cited regulation, short and long descriptions of the finding, and inspection dates. Related: fda_inspections (inspection classification and dates by FEI), fda_search_warning_letters (official warning letters for the same FEI), fda_compliance_actions (warning letters that may reference these citations).

NameTypeReqDescription
act_cfr_numberstringCFR section, section-anchored prefix match (e.g. '21 CFR 211.68' or '211.68' matches 211.68, 211.68(a), 211.68(b) but not 211.680 or 211.6)
classificationstringParent inspection classification (NAI=No Action Indicated, VAI=Voluntary Action Indicated, OAI=Official Action Indicated)
company_namestringCompany name (fuzzy match)
date_fromstringStart date for inspection_end_date range (YYYY-MM-DD)
date_tostringEnd date for inspection_end_date range (YYYY-MM-DD)
fei_numberstringFDA Establishment Identifier (FEI number)
fiscal_yearintegerFiscal year of the inspection
keywordstringKeyword to search in citation descriptions
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
program_areastringProgram area (partial match, e.g. Drugs, Devices, Foods)

No output schema declared.

No examples provided.

fda_clinical_result_letters ~170

Search FDA Complete Response Letters (CRLs) — formal refusal-to-approve decisions on drug and biologics applications. Filter by company name (fuzzy match), application number (e.g., 'NDA 204017'), or letter type. CRLs are significant regulatory events indicating application deficiencies. Related: fda_search_drugs (drug application data including approval status).

NameTypeReqDescription
application_numberstringApplication number (searches array, e.g. 'NDA 204017')
company_namestringCompany name (fuzzy match)
letter_typestringLetter type filter (e.g. 'COMPLETE RESPONSE')
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination

No output schema declared.

No examples provided.

fda_company_compliance_timeline ~126

Build a reverse-chronological compliance timeline for one company and any linked subsidiaries. Combines inspections, warning letters, import alerts, import refusals, debarments, and recall/enforcement events into one dated feed.

NameTypeReqDescription
companystringyesCompany name to build the timeline for
limitintegerMaximum number of combined timeline events to return
verbosebooleanWhen false (default), suppress the inline alias dump and collapse per-dataset data_freshness to a single top-level as_of. Set true for the full block.

No output schema declared.

No examples provided.

fda_company_full ~384

Comprehensive company profile: facilities (with addresses and operations), enforcement actions (recalls), 510(k) clearances, PMA approvals, and drug applications for a single company and its known aliases. Costs 5 credits. Excludes: inspection history, citations, compliance actions (warning letters), facility-level product lists, import refusals, and family rollups across separate child company records. For family rollups: call fda_suggest_subsidiaries first, then use fda_save_aliases for true same-company names or fda_link_subsidiaries for distinct child companies. Related: fda_suggest_subsidiaries (discover subsidiaries), fda_link_subsidiaries (create explicit family links), fda_get_facility (per-facility products, operations type, risk summary by FEI), fda_inspections (inspection history by FEI or company), fda_citations (CFR violations by FEI), fda_compliance_actions (warning letters/seizures by FEI or company), fda_search_aphis (animal health facilities for vet companies), fda_drug_shortages (active drug shortages).

NameTypeReqDescription
approvals_limitintegerPMA approvals result limit
approvals_offsetintegerPMA approvals result offset
clearances_limitinteger510(k) clearances result limit
clearances_offsetinteger510(k) clearances result offset
companystringyesCompany name to look up
drugs_limitintegerDrug applications result limit
drugs_offsetintegerDrug applications result offset
enforcement_limitintegerEnforcement result limit
enforcement_offsetintegerEnforcement result offset
facilities_limitintegerFacilities result limit
facilities_offsetintegerFacilities result offset

No output schema declared.

No examples provided.

fda_compliance_actions ~202

Search FDA compliance enforcement actions (Compliance Dashboard data, not available in openFDA API): Warning Letters, Seizures, and Injunctions. These are the most serious regulatory outcomes, typically following OAI inspections. Filter by company name, FEI number, action type (Warning Letter/Seizure/Injunction), or date range. Related: fda_inspections (underlying inspection data by FEI), fda_citations (CFR violations cited in these actions).

NameTypeReqDescription
action_typestringCompliance action type
company_namestringCompany name (fuzzy match)
date_fromstringStart date for action_taken_date range (YYYY-MM-DD)
date_tostringEnd date for action_taken_date range (YYYY-MM-DD)
fei_numberstringFDA Establishment Identifier (FEI number)
limitintegerMax results to return (1-500)

No output schema declared.

No examples provided.

fda_consumer_events ~137

Search consumer adverse events for food and cosmetic products by product area, reaction keyword, or date range (YYYYMMDD format). Returns reports including outcomes, reactions, and product details.

NameTypeReqDescription
date_fromstringStart date for date_created (YYYYMMDD)
date_tostringEnd date for date_created (YYYYMMDD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_areastringFilter by product area: food or cosmetic
reactionstringReaction keyword (searches reactions array)

No output schema declared.

No examples provided.

fda_device_class ~126

Lookup FDA device classification details by product code. Returns device name, device class (I/II/III), medical specialty, regulation number, review panel, submission type, and definition. Requires: product code (3-letter code from 510(k), PMA, or device product listings). Related: fda_product_code_lookup (cross-reference across 510(k) and PMA), fda_search_510k (clearances for this product code), fda_search_pma (PMA approvals for this product code).

NameTypeReqDescription
product_codestringyesDevice product code

No output schema declared.

No examples provided.

fda_device_recalls ~200

Search FDA device recalls by recalling firm (fuzzy match), product code, recall status, or date range. Returns device-specific recall details including root cause, event type, and product codes. Complements fda_search_enforcement which covers all product types. Related: fda_search_enforcement (all recalls including drugs), fda_recall_facility_trace (trace to manufacturing facility), fda_device_class (product code details).

NameTypeReqDescription
date_fromstringStart date for event_date_initiated (YYYY-MM-DD)
date_tostringEnd date for event_date_initiated (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_codestringProduct code
recall_statusstringRecall status
recalling_firmstringRecalling firm name (fuzzy match)

No output schema declared.

No examples provided.

fda_device_supply_status ~199

Search FDA's current medical device shortage list and discontinuance list. This is an official FDA supply-chain signal for medtech selling, covering shortage categories and permanent discontinuances that may affect customer operations or product availability.

NameTypeReqDescription
categorystringDevice category
date_fromstringStart date for latest_date range (YYYY-MM-DD)
date_tostringEnd date for latest_date range (YYYY-MM-DD)
keywordstringKeyword to search descriptions, device names, notes, or reasons
limitintegerMax results to return (1-500)
list_typestringWhether to search the shortage list or discontinuance list
manufacturer_namestringManufacturer name (fuzzy match, discontinuance list only)
offsetintegerResult offset for pagination
product_codestringFDA product code, for example DSQ or MKJ

No output schema declared.

No examples provided.

fda_device_udi ~177

Search the FDA Unique Device Identification (UDI) database by brand name, company/manufacturer name, product code, or DI number. Returns device identification data including brand name, company, device description, product codes, GMDN terms, sterilization info, and premarket submissions. Related: fda_device_class (classification details by product code), fda_search_510k (clearances by product code).

NameTypeReqDescription
brand_namestringDevice brand name (fuzzy match)
company_namestringCompany/manufacturer name (fuzzy match)
di_numberstringDevice Identifier (DI) number
limitintegerResult limit
offsetintegerResult offset
product_codestringFDA product code (3-letter code, e.g. OVE)

No output schema declared.

No examples provided.

fda_device_udi_lookup ~154

Search the FDA's Global Unique Device Identification Database (GUDID) by device identifier (DI/barcode), device name, company name, or brand name. Returns device details including UDI, descriptions, and company information. Costs 1 credit.

NameTypeReqDescription
brand_namestringBrand name (fuzzy search)
company_namestringCompany/manufacturer name (fuzzy search)
device_idstringDevice Identifier (DI) — exact barcode/GTIN lookup
device_namestringDevice/brand name (fuzzy search)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination

No output schema declared.

No examples provided.

fda_drug_labels ~177

Search FDA Structured Product Labeling (SPL) data — full drug package inserts. Filter by drug name, manufacturer, application number, or specific label section (e.g., indications_and_usage, warnings, adverse_reactions, boxed_warning). Returns complete label text for matching sections. Related: fda_search_drugs (application-level data), fda_search_ndc (NDC product details).

NameTypeReqDescription
application_numberstringNDA or ANDA application number
drug_namestringBrand or generic drug name (fuzzy match)
limitintegerResult limit
manufacturerstringManufacturer name (fuzzy match)
offsetintegerResult offset
sectionstringSpecific label section to return (e.g. indications_and_usage, warnings, adverse_reactions)

No output schema declared.

No examples provided.

fda_drug_shortages ~142

Search FDA drug shortages by generic name, company, status, or availability. Drug shortages signal manufacturing capacity strain, quality issues, or supply chain disruption. Useful for identifying companies with operational challenges. Related: fda_search_drugs (drug application data by company), fda_search_ndc (NDC-level product details).

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
generic_namestringGeneric drug name (fuzzy match)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
statusstringShortage status filter

No output schema declared.

No examples provided.

fda_facility_dossier ~108

Compliance-first facility dossier by FEI number. Returns the facility profile plus recent inspections, citations, warning letters, import refusal history, import-alert mentions, recall context, freshness, and recommended next tools. Use this when you want the fastest FEI-level manufacturing risk view instead of the broader product-focused facility profile.

NameTypeReqDescription
evidence_limitintegerNumber of recent evidence rows to return per evidence section
feistringyesFDA Establishment Identifier (FEI number)

No output schema declared.

No examples provided.

fda_facility_products ~137

List device products registered at a facility by FEI number with pagination. Returns product code, proprietary name, listing number, and classification details (device name, class, medical specialty). Note: fda_get_facility already includes products — use this only when paginating through large product lists. Drug products are not linked by FEI; use fda_search_ndc with company name instead. Requires: FEI number.

NameTypeReqDescription
feistringyesFDA Establishment Identifier (FEI number)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination

No output schema declared.

No examples provided.

fda_get_facility ~232

Detailed facility profile by FEI number. Returns: facility name, full address, operations type (Manufacture, API, Repack, Contract Manufacture, etc.), establishment types (Manufacturer, Distributor, Specification Developer, etc.), registrant and owner/operator info, DUNS number, registration expiry, enforcement history (recalls), device products with classification, and a facility_risk_summary (inspection counts by classification, warning letters, last inspection date). Requires: FEI number — get it from fda_search_facilities or fda_company_full. Excludes: full inspection details and citations. Related: fda_inspections (inspection history by FEI), fda_citations (CFR violations by FEI), fda_compliance_actions (warning letters/seizures by FEI), fda_import_refusals (import refusal history by FEI), fda_facility_products (paginate large product lists).

NameTypeReqDescription
feistringyesFDA Establishment Identifier (FEI number)
products_limitintegerProducts result limit
products_offsetintegerProducts result offset

No output schema declared.

No examples provided.

fda_import_refusals ~204

Search FDA import refusals (Compliance Dashboard data, not available in openFDA API). Import refusals indicate products detained at the US border. Filter by company name, FEI number, country code (e.g., CN, IN for major API source countries), or date range. Critical for evaluating international manufacturing sites and supply chain risk. Related: fda_get_facility (facility details by FEI), fda_inspections (inspection history by FEI).

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
country_codestringISO country code (e.g. CN, IN)
date_fromstringStart date for refusal_date range (YYYY-MM-DD)
date_tostringEnd date for refusal_date range (YYYY-MM-DD)
fei_numberstringFDA Establishment Identifier (FEI number)
limitintegerMax results to return (1-500)

No output schema declared.

No examples provided.

fda_inspection_observation_summary ~184

Search FDA's official annual inspection-observation summary spreadsheets. This is aggregate Form 483 trend data by product area and citation frequency, not a full company-level 483 corpus. Use it to see which observation areas appear most often in Drugs, Devices, Foods, and other FDA program areas.

NameTypeReqDescription
cite_idstringFDA citation identifier from the spreadsheet
fiscal_yearintegerFiscal year of the spreadsheet
keywordstringFull-text query across short and long citation descriptions
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_areastringProduct or program area (e.g. Drugs, Devices, Foods)
reference_numberstringRegulatory citation reference number (e.g. 21 CFR 211.192)

No output schema declared.

No examples provided.

fda_inspections ~267

Search FDA inspection history from the Compliance Dashboard (not available in openFDA API). Filter by company name (fuzzy match), FEI number, classification (NAI=No Action Indicated, VAI=Voluntary Action Indicated, OAI=Official Action Indicated — most serious), state, country, city, or date range. Date filters apply to inspection_end_date. OAI inspections typically lead to warning letters. Related: fda_citations (specific CFR violations from inspections by FEI), fda_compliance_actions (warning letters following OAI inspections by FEI).

NameTypeReqDescription
citystringCity name (exact match)
classification_codestringInspection classification code
company_namestringCompany name (fuzzy match)
countrystringCountry code (e.g., US, DE)
date_fromstringStart date for inspection_end_date range (YYYY-MM-DD)
date_tostringEnd date for inspection_end_date range (YYYY-MM-DD)
fei_numberstringFDA Establishment Identifier (FEI number)
limitintegerMax results to return (1-500)
statestringState code (e.g., CA, NY)

No output schema declared.

No examples provided.

fda_ires_enforcement ~199

Search iRES enforcement recalls with cross-references to openFDA enforcement data. Filter by company name (fuzzy match), recall number, product type (e.g., Drugs, Devices), or date range. Returns detailed recall info including event classification, product codes, and quantities. Related: fda_search_enforcement (openFDA recall data), fda_recall_facility_trace (trace recall to manufacturing facility).

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
date_fromstringStart date for enforcement_report_date range (YYYY-MM-DD)
date_tostringEnd date for enforcement_report_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_typestringProduct type (e.g. Drugs, Devices)
recall_numberstringRecall number

No output schema declared.

No examples provided.

fda_link_subsidiaries ~103

Explicitly link existing company records under a parent company for family-level rollups. Use this when names like Actavis or Cephalon already belong to their own company_id and should roll up under a parent like Teva. This preserves alias collision safety while making manufacturing and facility summaries family-aware.

NameTypeReqDescription
parent_companystringyesParent company that should own the family rollup
subsidiariesarrayyesSubsidiary company records to link

No output schema declared.

No examples provided.

fda_lookup_company ~172

Quick company lookup: facilities (with addresses and operations) and enforcement actions (recalls) for a single company and its known aliases. Costs 1 credit. Excludes: 510(k) clearances, PMA approvals, drug applications, inspection history, and subsidiary data. Related: fda_company_full (adds clearances/approvals/drugs for 5 credits), fda_suggest_subsidiaries (discover related entities), fda_get_facility (per-facility products and operations by FEI).

NameTypeReqDescription
companystringyesCompany name to look up
enforcement_limitintegerEnforcement result limit
enforcement_offsetintegerEnforcement result offset
facilities_limitintegerFacilities result limit
facilities_offsetintegerFacilities result offset

No output schema declared.

No examples provided.

fda_manufacturing_risk_summary ~147

Build a manufacturing and compliance summary for one company using FDA facilities, inspections, warning letters, OII records, import-risk signals, debarments, and recalls. Use this when you want the company-level picture first, then follow the linked granular tools for deeper inspection.

NameTypeReqDescription
companystringyesCompany name to summarize
evidence_limitintegerMax recent records to return per evidence section
facility_limitintegerMax facilities to return
verbosebooleanWhen false (default), suppress the inline alias dump and collapse per-dataset data_freshness to a single top-level as_of. Set true for the full block.

No output schema declared.

No examples provided.

fda_product_code_lookup ~139

Cross-reference a device product code across classification details, 510(k) clearances, and PMA approvals. Returns classification info plus paginated lists of all clearances and approvals for that product code. Use to understand the regulatory landscape for a specific device type. Requires: product code.

NameTypeReqDescription
approvals_limitintegerPMA approvals result limit
approvals_offsetintegerPMA approvals result offset
clearances_limitinteger510(k) clearances result limit
clearances_offsetinteger510(k) clearances result offset
product_codestringyesDevice product code

No output schema declared.

No examples provided.

fda_recall_facility_trace ~204

Trace a recall to its candidate manufacturing facility with explicit confidence levels. Matches by firm name, NDC lookup, and facility registration data. Returns the recall details, matched facility candidates with FEI numbers and confidence scores, and match methodology. Provide either recall_number (from fda_search_enforcement or fda_ires_enforcement) OR firm (+ optional product) to resolve the best-matching recall automatically. Related: fda_get_facility (full detail for matched FEI), fda_inspections (inspection history for matched FEI), fda_compliance_actions (warning letters for matched FEI).

NameTypeReqDescription
firmstringRecalling firm name (fuzzy). Convenience path: resolves the best-matching recall when recall_number is omitted.
productstringOptional product keyword to narrow firm-based resolution (matches product_description).
recall_numberstringRecall number (preferred). If omitted, provide firm to auto-resolve.

No output schema declared.

No examples provided.

fda_resolve_company ~90

Resolve a company name to its canonical company_id and list all known aliases. Returns the canonical slug, match confidence, and alias names. Read-only lookup — does not discover new aliases. Related: fda_suggest_subsidiaries (discover potential subsidiaries not yet aliased), fda_company_full (full profile using the resolved name).

NameTypeReqDescription
companystringyesCompany name to resolve

No output schema declared.

No examples provided.

fda_save_aliases ~118

Save normalized alias names for a parent company, updating confidence and tracking collisions. Use this for true name variants of the same company record. If a collision says the alias already belongs to another company_id, use fda_link_subsidiaries instead of forcing the alias. Typical workflow: call fda_suggest_subsidiaries first, review results, then call this tool with confirmed same-entity alias names.

NameTypeReqDescription
aliasesarrayyesAlias entries to save
parent_companystringyesCanonical parent company name

No output schema declared.

No examples provided.

fda_search_510k ~252

Search FDA 510(k) clearances across all companies. Filter by company name (fuzzy match), product code, decision code (e.g., SESE=substantially equivalent), clearance type (Traditional, Special, Abbreviated), and date range. Returns clearance number (K-number), applicant, device name, decision date, and product code. Related: fda_device_class (product code details and classification), fda_product_code_lookup (cross-reference a product code across 510(k) and PMA), fda_search_pma (PMA approvals for higher-risk devices).

NameTypeReqDescription
clearance_typestringClearance type (e.g., Traditional, Special)
companystringCompany name (fuzzy search)
decision_codestringDecision code (e.g., SESE, SESD)
from_datestringStart date for decision_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_codestringDevice product code
to_datestringEnd date for decision_date range (YYYY-MM-DD)

No output schema declared.

No examples provided.

fda_search_aphis ~156

Search APHIS veterinary biologics establishments (animal health facilities) by company, state, or establishment type. Returns license number, company name, full address, establishment type (Licensee/Permittee), divisions, and subsidiaries. Covers vaccine manufacturers, diagnostic kit producers, and other veterinary biological product facilities. Related: fda_vet_events (veterinary adverse events by species/drug).

NameTypeReqDescription
companystringCompany name (fuzzy search)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
statestringState code (e.g., CA, NY)
typestringEstablishment type

No output schema declared.

No examples provided.

fda_search_by_product ~124

Search across FDA device and drug datasets by product name (device name, trade name, generic name, or brand name). Searches device classifications, 510(k) clearances, PMA approvals, and NDC records simultaneously. Use when you know a product name but not which dataset it's in. Returns matches from each dataset with product codes and company names.

NameTypeReqDescription
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_namestringyesProduct or brand name (fuzzy search)

No output schema declared.

No examples provided.

fda_search_debarments ~159

Search current FDA debarment lists across drug applications, drug imports, and food imports. These are rare but very high-severity compliance signals for people or firms barred from certain FDA-regulated activities.

NameTypeReqDescription
date_fromstringStart date for effective_date range (YYYY-MM-DD)
date_tostringEnd date for effective_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
list_typestringDebarment list type
namestringPerson or firm name (fuzzy match)
offsetintegerResult offset for pagination
subject_typestringWhether the record is a person or a firm

No output schema declared.

No examples provided.

fda_search_drugs ~204

Search Drugs@FDA applications across all companies. Filter by sponsor name (fuzzy match), application number, brand name, or submission status. Returns application details including products (brand names, dosage forms, active ingredients) and submissions (approval dates, status). Related: fda_search_ndc (NDC-level product details including labeler and packaging), fda_drug_labels (structured product labeling/package inserts), fda_clinical_result_letters (Complete Response Letters — FDA refusal-to-approve decisions), fda_drug_shortages (active drug shortage data).

NameTypeReqDescription
application_numberstringApplication number
brand_namestringBrand name (searches products JSONB)
companystringCompany name (fuzzy search)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
statusstringSubmission status (searches submissions JSONB)

No output schema declared.

No examples provided.

fda_search_enforcement ~221

Search FDA enforcement actions (recalls) for drugs, devices, and food across all companies. Filter by company name (fuzzy match), recall classification (Class I=most serious/Class II/Class III), date range, or status (Ongoing/Terminated). Returns recall details including product description, reason, and distribution pattern. Related: fda_recall_facility_trace (trace a recall to its manufacturing facility by recall_number), fda_ires_enforcement (iRES recall data with cross-references), fda_device_recalls (device-specific recall data).

NameTypeReqDescription
classificationstringRecall classification severity
companystringCompany or firm name (fuzzy search)
from_datestringStart date for report_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
statusstringRecall status
to_datestringEnd date for report_date range (YYYY-MM-DD)

No output schema declared.

No examples provided.

fda_search_facilities ~250

Search FDA-registered facilities by name, city, state, or country. Searches drug (DECRS) and device registration databases. Returns FEI number, name, address, and source. Use the operations parameter to filter by manufacturing type (e.g., 'Contract Manufacture', 'API', 'Repack'). Use country filter (ISO code: US, DE, IN, CN, IE) to map a company's global manufacturing footprint. Excludes: products at facility, inspection history, enforcement actions. Related: fda_get_facility (full facility detail by FEI including products and operations type), fda_inspections (inspection data by FEI), fda_citations (CFR violations by FEI).

NameTypeReqDescription
citystringCity name
companystringFacility or company name (fuzzy search)
countrystringISO country code (e.g. US, DE)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
operationsstringDECRS operations keyword
statestringState code (e.g. CA, NY)

No output schema declared.

No examples provided.

fda_search_family_facilities ~157

Search FDA-registered facilities across a parent company and any explicitly linked subsidiaries. Use this when you know the parent company but the FDA records may sit under child entities like Actavis, Watson, or Cephalon. Supports optional city, state, country, and operations filters.

NameTypeReqDescription
citystringCity name
companystringyesParent company name
countrystringISO country code (e.g. US, DE)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
operationsstringDECRS operations keyword
statestringState code (e.g. CA, NY)

No output schema declared.

No examples provided.

fda_search_import_alerts ~211

Search FDA Import Alerts by firm, alert number, red-list versus green-list status, country, keyword, or date. This is a stronger manufacturing and supplier-risk signal than one-off import refusals because it captures standing alert status and the specific firms currently listed under each alert.

NameTypeReqDescription
alert_numberstringImport alert number, for example 66-40
countrystringCountry name
date_fromstringStart date for publish-date range (YYYY-MM-DD)
date_tostringEnd date for publish-date range (YYYY-MM-DD)
firm_namestringFirm name (fuzzy match)
keywordstringKeyword to search in the alert title, reason, charge, or product notes
limitintegerMax results to return (1-500)
list_statusstringWhether the firm is on the red list or green list
offsetintegerResult offset for pagination

No output schema declared.

No examples provided.

fda_search_ndc ~196

Search the National Drug Code (NDC) directory by labeler company, brand name, product NDC, or application number. Returns labeler name, brand name, generic name, dosage form, route, active ingredients, DEA schedule, listing type, and packaging details. Drug products are not linked by FEI; use this tool with company name to find drugs at a company. Related: fda_search_drugs (application-level data with submissions), fda_drug_labels (full product labeling), fda_search_nsde (NSDE cross-reference).

NameTypeReqDescription
application_numberstringApplication number
brand_namestringBrand name
companystringLabeler company name (fuzzy search)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_ndcstringProduct NDC

No output schema declared.

No examples provided.

fda_search_nsde ~149

Search the National Standard Drug Element (NSDE) database by brand/proprietary name, application number, or package NDC. Returns proprietary name, active ingredients, dosage form, route, and marketing information. Related: fda_search_ndc (NDC directory), fda_search_drugs (Drugs@FDA application data).

NameTypeReqDescription
application_numberstringApplication number (exact match)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
package_ndcstringPackage NDC (exact match)
proprietary_namestringBrand/proprietary name (fuzzy match)

No output schema declared.

No examples provided.

fda_search_oii_records ~243

Search recent FDA Office of Inspections and Investigations reading-room records by company, FEI, record type, country, establishment type, or publish date. This is official FDA document-index metadata with direct links to the posted records, plus incremental extracted document text when available, useful for finding recent 483-style inspection evidence by account.

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
countrystringCountry name
date_fromstringStart date for publish_date range (YYYY-MM-DD)
date_tostringEnd date for publish_date range (YYYY-MM-DD)
establishment_typestringEstablishment type, for example Sterile Drug Manufacturer
fei_numberstringFDA Establishment Identifier (FEI number)
keywordstringKeyword to search in the FDA-provided excerpt and extracted document text
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
record_typestringRecord type, for example 483
statestringState name

No output schema declared.

No examples provided.

fda_search_opdp_untitled_letters ~186

Search official FDA OPDP untitled letters for pharmaceutical promotion and advertising issues. Filter by company, product, issue date, close-out availability, or keyword in the extracted untitled-letter text when available.

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
date_fromstringStart date for issued_date range (YYYY-MM-DD)
date_tostringEnd date for issued_date range (YYYY-MM-DD)
has_close_outbooleanWhether the record has a linked close-out letter
keywordstringKeyword to search in the extracted untitled-letter text
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_issuestringProduct or issue text from the OPDP table (partial match)

No output schema declared.

No examples provided.

fda_search_pma ~198

Search FDA Pre-Market Approval (PMA) records across all companies. PMA is required for high-risk (Class III) devices. Filter by company name (fuzzy match), product code, and date range. Returns PMA number, applicant, trade name, decision date, and product code. Related: fda_device_class (product code details), fda_search_510k (510(k) clearances for lower-risk devices), fda_product_code_lookup (cross-reference a product code).

NameTypeReqDescription
companystringCompany name (fuzzy search)
from_datestringStart date for decision_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_codestringDevice product code
to_datestringEnd date for decision_date range (YYYY-MM-DD)

No output schema declared.

No examples provided.

fda_search_recall_text ~240

Full-text search across recall reasons and product descriptions using PostgreSQL text search. Finds recalls mentioning specific terms (e.g. 'salmonella contamination', 'mislabeled', 'sterility'). Supports multi-word queries ranked by relevance. Filter by classification, product_type, or date range. Related: fda_search_enforcement (search by company name, classification, status), fda_recall_facility_trace (trace a recall to its manufacturing facility).

NameTypeReqDescription
classificationstringFilter by recall classification severity
date_fromstringStart date for report_date range (YYYY-MM-DD)
date_tostringEnd date for report_date range (YYYY-MM-DD)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_typestringFilter by product type
querystringyesSearch terms (e.g. 'salmonella contamination', 'mislabeled dosage')
search_fieldstringWhich field to search: reason_for_recall, product_description, or both (default: both)

No output schema declared.

No examples provided.

fda_search_warning_letters ~525

Search official FDA warning letters with full-text content from the FDA website. Use keyword search for the actual letter body, or filter by company name, issuing office, subject, MARCS-CMS number, product type, or letter issue date. Adds prospecting filters: status (open|responded|closed, derived from response/closeout dates), letter_category (CGMP-manufacturing | BIMO | listing | OPDP/promotion | 503B/compounding | import — heuristic, derived from issuing_office/subject/product_type), and violation_theme (cgmp_subsystem | data_integrity | validation | bimo | listing | promotion — keyword/FTS-derived over subject+body). Set dedupe=true to collapse near-identical letters sharing a MARCS-CMS case number to one canonical row. Each row exposes derived status and letter_category, plus fei_number for one-hop navigation to fda_citations and fda_inspections. This adds narrative context beyond fda_compliance_actions, which only contains dashboard metadata. NOTE: violation_theme and letter_category are best-effort heuristics over free-text fields; keyword cannot be scoped to a parsed cited-violations sub-section because the corpus only stores subject + full letter body.

NameTypeReqDescription
company_namestringCompany name (fuzzy match)
date_fromstringStart date for letter_issue_date range (YYYY-MM-DD)
date_tostringEnd date for letter_issue_date range (YYYY-MM-DD)
dedupebooleanCollapse letters sharing a MARCS-CMS case number to one canonical row (recommended for prospecting)
issuing_officestringIssuing office or center name (partial match)
keywordstringFull-text query for the warning letter body and subject
letter_categorystringHeuristic category derived from issuing_office/subject/product_type
limitintegerMax results to return (1-500)
marcs_cms_numberstringMARCS-CMS case number shown on the letter page
offsetintegerResult offset for pagination
product_typestringProduct type from the letter page (e.g. Drugs, Devices, Food)
statusstringDerived status: closed (has closeout date), responded (has response date), or open
subjectstringSubject line text (partial match)
violation_themestringHeuristic violation theme derived from subject and letter body text

No output schema declared.

No examples provided.

fda_substance_lookup ~110

Look up FDA substance data by UNII code (exact match) or substance name (fuzzy match). Returns substance name, UNII, substance class, molecular formula, and related details. Use to identify active pharmaceutical ingredients.

NameTypeReqDescription
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
substance_namestringSubstance name (fuzzy match)
uniistringUNII code (exact match)

No output schema declared.

No examples provided.

fda_suggest_subsidiaries ~295

Discover subsidiary and related company names using FDA datasets first, then supplement with external corporate hierarchy sources (SEC EDGAR Exhibit 21 and GLEIF) when available. Costs 2 credits. Returns FDA name candidates, evidence-backed company-record suggestions, EDGAR subsidiaries, GLEIF subsidiaries, existing aliases, and facility coverage stats. The coverage.unlinked_feis count indicates how many facilities may be missing from the current alias set. The workflow is conservative and explainable: it validates candidates against FDA company records instead of auto-linking them. Note: EDGAR and GLEIF may lag recent acquisitions or divestitures, so missing external results do not rule out FDA-visible subsidiaries. Recommended workflow: 1. fda_suggest_subsidiaries, 2. fda_link_subsidiaries for distinct child companies or fda_save_aliases for true same-company variants, 3. fda_manufacturing_risk_summary or fda_search_family_facilities. Related: fda_link_subsidiaries (persist explicit family links), fda_save_aliases (persist same-entity names), fda_manufacturing_risk_summary (family-aware company rollup), fda_search_family_facilities (family-aware FEI search).

NameTypeReqDescription
cikstringSEC CIK (optional, auto-resolved if omitted)
companystringyesCompany name to analyze

No output schema declared.

No examples provided.

fda_tobacco_problems ~132

Search tobacco problem reports by product type or health problem keyword. Date range in YYYYMMDD format. Returns reports including tobacco product details and reported health problems.

NameTypeReqDescription
date_fromstringStart date_submitted (YYYYMMDD)
date_tostringEnd date_submitted (YYYYMMDD)
health_problemstringReported health problem keyword
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
product_typestringTobacco product type (searches tobacco_products array)

No output schema declared.

No examples provided.

fda_vet_events ~172

Search veterinary adverse events (animal drug safety reports) by species, drug name, reaction, serious flag, or date range (YYYYMMDD format). Returns event reports including animal details, drug information, and adverse reactions. Related: fda_search_aphis (veterinary biologics facilities and establishments).

NameTypeReqDescription
date_fromstringStart receive_date (YYYYMMDD)
date_tostringEnd receive_date (YYYYMMDD)
drug_namestringDrug name (searches drug JSONB)
limitintegerMax results to return (1-500)
offsetintegerResult offset for pagination
seriousstringFilter by serious adverse event
speciesstringAnimal species (searches animal JSONB)

No output schema declared.

No examples provided.