Skip to main content
Glama

OpenFDA MCP-Server

Ein Model Context Protocol (MCP) Server zum Abfragen von Arzneimittelinformationen über die OpenFDA-API.

Funktionen

  • Abrufen von Informationen zu Arzneimitteletiketten nach Markennamen

  • Abrufen von Arzneimittelinformationen nach generischem Namen (Wirkstoff)

  • Abrufen aller Markenversionen eines generischen Arzneimittels

  • Abrufen von Berichten zu unerwünschten Ereignissen (Nebenwirkungen) für ein Arzneimittel (nach Marken- oder generischem Namen)

  • Abrufen aller von einem bestimmten Unternehmen hergestellten Arzneimittel

  • Abrufen umfassender Arzneimittelsicherheitsinformationen (Warnhinweise, Kontraindikationen, Wechselwirkungen, Vorsichtsmaßnahmen usw.)

  • Normalisierung und Validierung von NDC-Formaten (National Drug Code)

  • Hilfreiche Fehlermeldungen und Vorschläge bei fehlgeschlagenen Abfragen

  1. Einrichten Ihres OpenFDA-API-Schlüssels

    Der MCP-Server benötigt einen OpenFDA-API-Schlüssel, um auf die OpenFDA-API zugreifen zu können.
    Erstellen Sie eine .env-Datei im Stammverzeichnis Ihres Projekts und fügen Sie die folgende Zeile hinzu:

    OPENFDA_API_KEY=your_openfda_api_key_here

    Hinweis: Übertragen Sie niemals Ihren echten API-Schlüssel in die Versionskontrolle.
    Sie können einen API-Schlüssel unter OpenFDA API Key Registration erhalten.

  2. Beispiel für eine MCP-Server-Konfiguration

    Wenn Sie diesen Server in ein größeres MCP-System integrieren, könnte Ihre Konfiguration wie folgt aussehen:

     {
       "mcpServers": {
           "openfda": {
               "command": "npx",
               "args": [
                   "@ythalorossy/openfda"
               ],
               "env": {
                   "OPENFDA_API_KEY": "*****************************************"
               },
               "timeout": 60000,
               "autoApprove": [
                   "get-drug-by-name",
                   "get-drug-by-generic-name",
                   "get-drug-adverse-events",
                   "get-drugs-by-manufacturer",
                   "get-drug-safety-info",
                   "get-drug-by-ndc",
                   "get-drug-by-product-ndc"
               ]
           }
       }
     }

    Ersetzen Sie die Sternchen durch Ihren tatsächlichen API-Schlüssel oder stellen Sie sicher, dass er aus Ihrer .env-Datei geladen wird.

Related MCP server: drugbank-mcp-server

Möchten Sie es lokal ausführen?

git clone https://github.com/ythalorossy/openfda.git
cd openfda
npm install
npm run build

Starten Sie dann den Server:

node bin/index.js

Oder verwenden Sie ihn direkt mit npx:

npx @ythalorossy/openfda

Konfiguration

Erstellen Sie eine .env-Datei für alle erforderlichen Umgebungsvariablen.

Lizenz

MIT

Kaufen Sie mir einen Kaffee

coff.ee/ythalorossy

Available Tools

7 tools
get-drug-adverse-eventsB

Get adverse event reports for a drug. This provides safety information about reported side effects and reactions. Use brand name or generic name.

Inputs: drugName (required), limit, seriousness.

get-drug-by-generic-nameA

Get drug information by generic (active ingredient) name. Useful when you know the generic name but not the brand name. Returns all brand versions of the generic drug.

Inputs: genericName (required), limit.

get-drug-by-nameA

Get drug by name. Use this tool to get the drug information by name. The drug name should be the brand name. It returns the brand name, generic name, manufacturer name, product NDC, product type, route, substance name, indications and usage, warnings, do not use, ask doctor, ask doctor or pharmacist, stop use, pregnancy or breast feeding.

Inputs: drugName (required).

get-drug-by-ndcB

Get drug information by National Drug Code (NDC). Accepts both product NDC (XXXXX-XXXX) and package NDC (XXXXX-XXXX-XX) formats. Also accepts NDC codes without dashes.

Inputs: ndcCode (required).

get-drug-by-product-ndcA

Get drug information by product NDC only (XXXXX-XXXX format). This ignores package variations and finds all packages for a product.

Inputs: productNDC (required).

get-drug-safety-infoB

Get comprehensive safety information for a drug including warnings, contraindications, drug interactions, and precautions. Use brand name.

Inputs: drugName (required).

get-drugs-by-manufacturerA

Get all drugs manufactured by a specific company. Useful for finding alternatives or checking manufacturer portfolios.

Inputs: manufacturerName (required), limit.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 7 tools

    Disambiguation3/5

    The tools have overlapping purposes that could cause confusion, particularly between get-drug-by-name, get-drug-by-generic-name, and get-drug-by-ndc, which all retrieve drug information but with different input parameters. Descriptions help clarify the distinctions, but an agent might misselect when the query is ambiguous about whether to use brand name, generic name, or NDC. The safety-focused tools (get-drug-adverse-events and get-drug-safety-info) are more distinct, but overall there is moderate overlap in the information retrieval tools.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern with hyphens, specifically 'get-drug-by-X' or 'get-drug-X', where X is a specific attribute like name, ndc, or safety-info. This predictability makes it easy for an agent to understand the naming convention and infer tool purposes. There are no deviations in style, such as mixing camelCase or snake_case, ensuring high readability and consistency throughout the set.

    Tool Count5/5

    With 7 tools, the server is well-scoped for its domain of drug information retrieval from OpenFDA. Each tool serves a distinct purpose, such as looking up drugs by different identifiers or accessing safety data, and none appear redundant or unnecessary. This count is typical for a focused API server, providing enough functionality without being overwhelming or too sparse, making it appropriate for the server's purpose.

    Completeness4/5

    The tool set covers the core domain of drug information retrieval comprehensively, including lookups by brand name, generic name, NDC, manufacturer, and safety data. Minor gaps exist, such as the lack of update or delete operations, but this is reasonable since OpenFDA is a read-only public database. Agents can work around these gaps, and the surface supports common queries without dead ends, though advanced features like filtering or pagination might be missing but are not essential for basic coverage.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      B
      quality
      D
      maintenance
      A comprehensive MCP server that provides access to U.S. FDA public datasets via the openFDA API, enabling querying of drug adverse events, labeling, recalls, approvals, shortages, NDC directory, and medical device regulatory data.
      10
      26
      -
    • F
      license
      Not graded
      quality
      C
      maintenance
      A Model Context Protocol (MCP) server exposing the FDA Purple Book — the database of licensed biological products (reference biologics, biosimilars, and interchangeables), with BLA numbers, applicants, approval dates, and exclusivity expiry.
      -
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that enables AI assistants to query U.S. FDA public datasets, including drug adverse events, labeling, recalls, approvals, shortages, NDC directory, and medical device regulatory information.
      10
      MIT