Openfda MCP Server logo

Openfda MCP Server

Query openFDA for drug, food, device, adverse-event, recall, approval, label, shortage, and NDC data over MCP.

Install Openfda MCP Server

Pick your client, then add it in one click or paste the config.

No confirmed install command yet

We only publish a config when the install details come from the project itself — its README, its docs, or a verified owner. We haven’t found those for openfda-mcp-server, and we’d rather show nothing than a guess you’d paste into your client.

Open setup steps on GitHub

Overview

The openfda-mcp-server MCP server connects AI clients to the openFDA public API for searching FDA records on drugs, food, devices, tobacco, veterinary products, and recalls. It exposes focused MCP tools for profiles, labels, approvals, clearances, shortages, adverse events, field discovery, and aggregations. The server supports stdio and Streamable HTTP, with an optional DataCanvas workflow for inspecting and querying staged results. Reach for it when an agent needs structured FDA lookups or searches rather than general web research.

Use cases

  • Search adverse-event reports for a drug or product category
  • Build a consolidated FDA profile from one drug name
  • Find current drug shortages and related product identifiers
  • Look up drug labels, NDC records, approvals, or device clearances
  • Aggregate and inspect fields across openFDA endpoints

Key features

  • Drug profiles combining labels, events, recalls, approvals, and shortages
  • Searches for adverse events, recalls, shortages, tobacco reports, and approvals
  • Drug label, NDC, and device clearance lookups
  • Field discovery and value aggregation across openFDA endpoints
  • Optional read-only SQL over DataCanvas result sets
  • Stdio and Streamable HTTP transport

Tools15

What Openfda MCP Server lets your agent do. Expand a tool for its parameters.

Self-reported~360 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

6/6 checks healthy over the last 41d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 16d ago via OSV.dev

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars4Stargazers on the source repository.
npm downloads2.1kPackage downloads in the last 30 days.
Last commit5d agoMost recent push to the default branch.
Tools exposed15Callable tools this server registers over MCP.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How Openfda MCP Server works

What openfda-mcp-server does

The openfda-mcp-server MCP server gives an MCP client access to FDA data through the openFDA public API. Its coverage includes human drugs, veterinary products, food, medical devices, tobacco products, adverse-event reports, enforcement records, recalls, drug shortages, labeling, approvals, clearances, and the National Drug Code Directory.

A consolidated drug profile accepts one brand or generic name and combines identity information with label, adverse-event, recall, approval, and shortage results. Separate search tools support more targeted work, such as finding device 510(k) clearances or PMA approvals, searching tobacco product problem reports, or locating veterinary adverse events. Results can also be aggregated by field, while field-description queries show searchable paths and verified expressions for counting.

This places openfda-mcp-server in the Search & Data Extraction category. It is suited to research assistants, medication-information workflows, FDA data exploration, and agents that need to chain identifiers such as NDC, RxCUI, or SPL set IDs into later lookups.

How it works

The server can run as a local stdio process or through Streamable HTTP. A public hosted endpoint is also listed at https://openfda.caseyjhand.com/mcp. Local installation examples use the npm package @cyanheads/openfda-mcp-server through npx.

Most search tools query live openFDA endpoints and return paginated records, with several tools allowing up to 1,000 records per page. Search inputs vary by endpoint. For example, adverse-event searches select drug, food, or device schemas; shortage searches can filter by status, therapeutic category, generic name, or company; and recall searches distinguish enforcement records from device recall records.

The field-description tool is useful before constructing a query. It groups field paths by category, provides types and descriptions, identifies whether a field has a valid aggregation expression, and includes query guidance for quoting, Boolean operators, exact matches, and date ranges. Count operations return ranked terms and indicate when results may be truncated.

Drug-label requests can return an outline when the response would exceed the inline text budget. A follow-up request can select specific sections. Structured output preserves raw SPL markup, while table sections are rendered as Markdown in text output.

Setup and configuration

Configure an MCP client with the package command and provide an OPENFDA_API_KEY value, as shown by the repository's installation links. The repository also provides a Docker package. The server can alternatively be reached through its hosted Streamable HTTP endpoint.

The DataCanvas tools are opt-in. They can list tables and schemas, run read-only SQL against a staged result set, and delete a staged table. The deletion tool is off by default. These tools are separate from the main live openFDA searches and should be enabled only when that staged-data workflow is needed.

Tools and capabilities

The openfda-mcp-server MCP server includes tools for:

  • Building a multi-section drug profile.
  • Searching human and veterinary adverse events.
  • Finding drug shortages, tobacco reports, recalls, approvals, and device clearances.
  • Looking up drug labels and NDC records.
  • Describing endpoint fields and counting unique field values.
  • Inspecting, querying, and optionally deleting DataCanvas tables.

Some tools expose endpoint-specific behavior. Veterinary records mask brand and manufacturer names as MSK, so active-ingredient searches are more appropriate. Device recall results use different status fields from enforcement records. A profile can return partial sections and identify upstream failures, while authentication, configuration, and cancellation failures stop the full profile request.

Limitations and notes

The service reflects the data and query behavior of openFDA. A missing profile section may mean no matching result or an upstream sub-query failure, so consumers should inspect the degradation metadata rather than treating every empty section as confirmed absence. Count completeness is not guaranteed when distinct terms exceed the requested limit, and openFDA may reject expressions that cannot be aggregated.

Endpoint schemas and sortable date fields differ by category. For example, adverse-event date fields vary across drug, food, and device records. Device recall searches support the recall endpoint, while non-device categories must use enforcement records. The DataCanvas query and deletion tools are optional and are not a replacement for the live API.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Openfda MCP Server

openfda-mcp-server is an MCP server that connects AI clients to the openFDA public API and provides tools for drug profiles, adverse events, recalls, shortages, labels, approvals, device clearances, NDC lookups, field descriptions, and value counts. It runs over stdio or Streamable HTTP and can optionally work with staged DataCanvas results.

Install it through an MCP client using the npm package @cyanheads/openfda-mcp-server with npx, or use the provided Docker package. Configure OPENFDA_API_KEY as shown in the repository's client setup links. A hosted Streamable HTTP endpoint is also available.

Yes, the repository provides a Cursor installation link for openfda-mcp-server. The example uses the npm package through npx and passes OPENFDA_API_KEY in the MCP configuration.

Yes, its drug-shortage tool searches records by status, availability-related data, therapeutic category, generic name, or manufacturer. Returned identifiers such as brand name, product NDC, and RxCUI can be used with label or NDC lookup tools.

Yes, the optional DataCanvas tools can list staged tables and schemas and run read-only SQL over a staged result set. The table-deletion tool is opt-in and disabled by default.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewOpenfda MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/openfda-mcp-server-2?style=directory)](https://allmcps.com/mcp/openfda-mcp-server-2)
HTML Embed
<a href="https://allmcps.com/mcp/openfda-mcp-server-2"><img src="https://allmcps.com/api/badge/openfda-mcp-server-2?style=directory" alt="Openfda MCP Server on AllMCPs" /></a>