OpenClaw · Skill
Med Info
Medication answers you can cite.
Install
Start with the primary install command. Alternate entrypoints are included below for ClawHub and OpenClaw CLI users.
Primary command
clawhub install duncandobbins/med-infoClawHub installer
npx clawhub@latest install duncandobbins/med-infoOpenClaw CLI
openclaw skills install duncandobbins/med-infoDirect OpenClaw install
openclaw install duncandobbins/med-infoWhat this skill does
Medication answers you can cite.
Why it matters
Unlike general web search, every answer links back to official FDA label sections with stable identifiers you can reproduce and cite.
Typical use cases
- Looking up boxed warnings and contraindications for a specific drug
- Verifying drug identifiers (NDC, RxCUI) for internal documentation
- Checking FAERS adverse event signals during QA review
- Searching label text for specific keywords like enzyme inhibitors
- Building medication summaries for agent pipelines using JSON output
Source instructions
med-info
Medication answers you can cite.
med-info turns a drug name (or RxCUI, NDC, SPL set_id) into a label-backed summary with traceable identifiers and source links.
Use it when you want “show your work” medication information for notes, training, QA, internal docs, or agent workflows.
Not medical advice.
What you get
- Authoritative sources first: FDA labeling via openFDA + DailyMed, identifiers via RxNorm/RxClass.
- Citations + traceability: RxCUI, NDC (product/package), SPL set_id, effective dates, and URLs.
- The sections you actually need: boxed warning, indications, dosing, contraindications, warnings, interactions, adverse reactions.
- Optional safety context (opt-in flags): recalls, shortages, FAERS aggregates, interactions, drug class, hazardous drug flag, REMS linkouts, Orange Book, Purple Book.
- Automation friendly:
--jsonoutput for pipelines.
Privacy
Do not include PHI. Query by drug name or identifiers only.
Quickstart
cd {baseDir}
python3 scripts/med_info.py "Eliquis" --brief
Common workflows:
# Only the sections you care about
python3 scripts/med_info.py "Eliquis" --sections contraindications,drug_interactions --brief
# Find keyword hits in label text (fast way to answer "does the label mention X?")
python3 scripts/med_info.py "Eliquis" --find ritonavir --find CYP3A4 --find P-gp --find-max 8
# Deterministic lookups by identifier (best for reproducibility)
python3 scripts/med_info.py "70518-4370-0" # NDC (package)
python3 scripts/med_info.py "70518-4370" # NDC (product)
python3 scripts/med_info.py "05999192-ebc6-4198-bd1e-f46abbfb4f8a" # SPL set_id
Disambiguation (when there are multiple labels)
python3 scripts/med_info.py "metformin" --candidates
python3 scripts/med_info.py "metformin" --candidates --pick 2 --brief
python3 scripts/med_info.py "metformin" --set-id "05999192-ebc6-4198-bd1e-f46abbfb4f8a"
Optional add-ons
# Pharmacist-friendly output bundle
python3 scripts/med_info.py "Eliquis" --pharmacist --brief
# Safety signals and operational context (opt-in)
python3 scripts/med_info.py "metformin" --recalls --brief
python3 scripts/med_info.py "amphetamine" --shortages --brief
python3 scripts/med_info.py "Eliquis" --faers --faers-max 10
python3 scripts/med_info.py "Eliquis" --interactions --interactions-max 20
python3 scripts/med_info.py "Eliquis" --rxclass
python3 scripts/med_info.py "cyclophosphamide" --hazardous
python3 scripts/med_info.py "isotretinoin" --rems
# Reference datasets
python3 scripts/med_info.py "adalimumab" --purplebook
python3 scripts/med_info.py "metformin" --orangebook
# Chemistry (best-effort)
python3 scripts/med_info.py "ibuprofen" --chem
Output shaping
python3 scripts/med_info.py "ibuprofen" --json
python3 scripts/med_info.py "Eliquis" --brief --sections all
python3 scripts/med_info.py "Eliquis" --print-url --brief # prints queried URLs (api_key redacted)
Sources (high level)
- openFDA: drug labels, NDC directory, recalls/enforcement, shortages, FAERS
- RxNorm / RxClass (RxNav): normalization and drug classes
- DailyMed: SPL label history and media
- MedlinePlus Connect: patient-friendly summaries (links)
- Orange Book and Purple Book: best-effort context
Safety notes
- For clinical decisions, verify against the full official label.
- Input is treated as untrusted, openFDA
searchstrings are escaped to prevent query injection.
Keys and rate limits
Works without any keys. Optionally:
OPENFDA_API_KEY: increases openFDA rate limits for heavy usage.