FDA Drug Adverse Event Reports (FAERS, Searchable and Countable)
openfda/drug-adverse-events
Searches the FDA Adverse Event Reporting System (FAERS) and returns drug safety reports, or counts them by a field. A report gives the patient's sex and age, every drug the reporter listed with its role (suspect, concomitant or interacting), dose, route and indication, each reaction in MedDRA terms with its outcome, whether the case was serious, fatal, life threatening or hospitalising, the reporter's country and qualification, and the report date. Set count to get the most frequent values of a field instead, such as the top reactions reported for a drug, with how many reports carry each. The reply also carries the FDA's own notice that the data is unvalidated and not for medical decisions. Taken directly from the FDA's openFDA drug event API.
Price
$0.00546 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.
Data source
U.S. Food and Drug Administration (openFDA)
Data provided by the U.S. Food and Drug Administration (https://open.fda.gov); public domain under CC0 per open.fda.gov/terms.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "openfda/drug-adverse-events" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "openfda/drug-adverse-events" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "openfda/drug-adverse-events", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "openfda/drug-adverse-events", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.00546 |
- Updated
- Oct 18, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"limit"
],
"properties": {
"skip": {
"type": "integer",
"maximum": 25000,
"minimum": 0,
"description": "How many matching reports to skip, for paging; the FDA allows up to 25000. Not allowed with count."
},
"sort": {
"enum": [
"receivedate:desc",
"receivedate:asc"
],
"type": "string",
"description": "Order of the reports by the date the FDA received them. Leave out for the FDA's own order, which is not by date. Has no effect with count."
},
"count": {
"enum": [
"patient.reaction.reactionmeddrapt.exact",
"patient.drug.openfda.generic_name.exact",
"patient.drug.openfda.brand_name.exact",
"patient.drug.openfda.manufacturer_name.exact",
"patient.drug.openfda.pharm_class_epc.exact",
"patient.drug.drugindication.exact",
"occurcountry.exact",
"patient.patientsex",
"serious"
],
"type": "string",
"description": "Return the most frequent values of this field among the matching reports, each with its report count, instead of the reports themselves. Leave out to get reports. Cannot be combined with skip."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1,
"description": "How many reports to return, 1 to 25; with count, how many of the most frequent values."
},
"search": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "An openFDA search expression, field:value, with AND / OR between terms. Fields include patient.drug.openfda.generic_name, patient.drug.openfda.brand_name, patient.drug.medicinalproduct (the name as the reporter typed it), patient.reaction.reactionmeddrapt (MedDRA reaction term), serious (1 serious, 2 not), seriousnessdeath (1 fatal), seriousnesshospitalization, patient.patientsex (1 male, 2 female), occurcountry, primarysourcecountry, receivedate (YYYYMMDD, ranges as [20260101 TO 20261231]) and safetyreportid. Examples: patient.drug.openfda.generic_name:\"warfarin\", patient.drug.openfda.brand_name:\"LIPITOR\" AND serious:1, patient.reaction.reactionmeddrapt:\"pancreatitis\" AND seriousnessdeath:1. Leave out to match every report. A search that matches nothing returns a validation error."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"meta",
"results"
],
"properties": {
"meta": {
"type": "object",
"required": [
"disclaimer"
],
"properties": {
"terms": {
"type": "string",
"description": "Link to the openFDA terms of service."
},
"license": {
"type": "string",
"description": "Link to the openFDA data licence."
},
"results": {
"type": "object",
"required": [
"total"
],
"properties": {
"skip": {
"type": "integer",
"description": "Reports skipped."
},
"limit": {
"type": "integer",
"description": "Reports requested."
},
"total": {
"type": "integer",
"description": "Total reports matching the search."
}
},
"description": "Paging totals; absent when count was set.",
"additionalProperties": true
},
"disclaimer": {
"type": "string",
"description": "The FDA's disclaimer, passed through verbatim."
},
"last_updated": {
"type": "string",
"description": "When the FDA last refreshed this dataset, YYYY-MM-DD."
}
},
"description": "The FDA's own notice and, for a report search, paging totals. The disclaimer says to treat all results as unvalidated and not to use them for medical decisions.",
"additionalProperties": true
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"term": {
"description": "With count: the field value. A string, or a number for coded fields such as serious (1 or 2) and patient.patientsex (0, 1 or 2)."
},
"count": {
"type": "integer",
"description": "With count: how many matching reports carry the value."
},
"patient": {
"type": "object",
"description": "The patient, the reactions suffered (patient.reaction, MedDRA terms with an outcome code) and the drugs taken (patient.drug, each with its role, dose, indication and linked openfda identifiers).",
"additionalProperties": true
},
"serious": {
"type": "string",
"description": "1 if the case was serious, 2 if not."
},
"companynumb": {
"type": "string",
"description": "The reporting company's own case id."
},
"receivedate": {
"type": "string",
"description": "When the FDA first received the report, YYYYMMDD."
},
"occurcountry": {
"type": "string",
"description": "Country where the event happened."
},
"safetyreportid": {
"type": "string",
"description": "The FDA's id for the report."
},
"seriousnessdeath": {
"type": "string",
"description": "1 if the patient died."
},
"primarysourcecountry": {
"type": "string",
"description": "Country of the reporter."
},
"seriousnesshospitalization": {
"type": "string",
"description": "1 if the case led to hospitalisation."
}
},
"additionalProperties": true
},
"description": "One entry per safety report, or, when count was set, one { term, count } entry per value."
}
},
"description": "The FDA's response: a meta block and either the matching reports or, when count was set, the counted values.",
"additionalProperties": true
}