Query FDA drug labeling data via openFDA. Use whenever the user asks about drug prescribing information — indications, warnings, dosage, adverse reactions, contraindications, or administration routes. Supports single or batch lookup by brand/generic name or by indication/condition.
Scanned 9/4/2026
Install to Claude Code
npx -y skills add gabrielmoreira/agent-skills-mirror --skill openfda --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Openfda?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/gabrielmoreira-openfda)More formats (shields.io, HTML) on the badges page.
---
name: openfda-human-drug
description: >
Query FDA drug labeling data via openFDA. Use whenever the user asks about
drug prescribing information — indications, warnings, dosage, adverse reactions,
contraindications, or administration routes. Supports single or batch lookup
by brand/generic name or by indication/condition.
---
# openFDA Human Drug Skill
Query structured SPL (Structured Product Labeling) data from the FDA. No API key needed (≤1 000 req/day).
## Input → Detection
| Input Example | Routed To |
|---|---|
| `"ASPIRIN"` or `["METFORMIN","LISINOPRIL"]` | `search_drug` — brand/generic name lookup |
| `"hypertension"` or `["diabetes","migraine"]` | `search_by_indication` — indication text search |
| *(no input)* | `count_by_route` — top administration routes |
All search functions accept **a single string or a list of strings**.
## API
| Function | Input | Returns |
|---|---|---|
| `search_drug(query, limit)` | str \| list[str], int | `{term: [label_dicts]}` |
| `search_by_indication(query, limit)` | str \| list[str], int | `{condition: [label_dicts]}` |
| `count_by_route(top_n)` | int | `[{term, count}]` |
| `summarize(results)` | dict from above | compact multi-line text |
Each `label_dict` contains: `brand_name`, `generic_name`, `manufacturer`, `route`, `substance_name`, `product_type`, `indications`, `contraindications`, `warnings`, `dosage`, `adverse_reactions`.
## Usage
See `if __name__ == "__main__"` block in `05_openFDA_Human_Drug.py` for runnable examples covering: single drug, batch drugs, single indication, batch indications, route counts, and raw JSON output.
## Notes
- Long text fields (`indications`, `warnings`, etc.) are truncated to keep payloads concise.
- On HTTP/query errors the result dict contains an `error` key for that term.
- Endpoint: `https://api.fda.gov/drug/label.json`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!