MedlinePlus Drug Info Skill

SkillSearch

Query MedlinePlus for consumer-oriented drug and health-topic information. Accepts drug names, RxCUI codes, NDC codes, or ICD-10-CM diagnosis codes. Uses two free, keyless NLM APIs: the Web Service (keyword search) and MedlinePlus Connect (code-based lookup).

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the MedlinePlus Drug Info Skill skill

What this skill tells your AI

The instructions your AI receives, as published by qsong-github/drugclaw in skills/drug_labeling/medlineplus/SKILL.md and read by ahel’s review.

Search MedlinePlus drug / health-topic pages. Auto-detects input type:

Input PatternDetected AsExampleEndpoint Used
0069-3060-30NDC codeNDC → drug pageConnect (NDC)
637188 (5-7 digits)RxCUIRxNorm conceptConnect (RxCUI)
E11.9, J45.20ICD-10-CMDiagnosis code → topicConnect (ICD-10)
anything elsefree textmetformin, aspirinConnect (name) + wsearch

Both APIs are free, require no API key, and are rate-limited to 85 req/min.

API

FunctionInputReturns
search(query, max_results=10)single entity stringdict with connect_results, wsearch_results
search_batch(queries, max_results=10)list of entity stringsdict[str, dict]
summarize(result)one search() result dictcompact text for LLM
to_json(result)one search() result dictlist[dict] flat records

Result dict structure

{
    "query": "metformin",
    "input_type": "text",          # ndc | rxcui | icd10 | text
    "connect_results": [           # from MedlinePlus Connect
        {"title": "...", "url": "...", "summary": "...", "source": "..."},
    ],
    "wsearch_results": [           # from keyword web service
        {"title": "...", "url": "...", "snippet": "...", "rank": "..."},
    ],
    "errors": [],
}

Usage

See if __name__ == "__main__" block in 57_MEDLINEPLUS_DRUG_INFO.py for runnable examples covering: drug name, RxCUI, NDC, ICD-10, batch search, summarize, and JSON output.

Key Fields

FieldSourceDescription
titleConnect / wsearchMedlinePlus page title
urlConnect / wsearchDirect link to MedlinePlus page
summaryConnectHTML-stripped page summary (≤400 chars)
snippetwsearchKeyword-in-context excerpt (≤300 chars)
sourceConnectContent attribution (e.g., AHFS, ASHP)
rankwsearchRelevance rank returned by NLM

Data Source

  • Provider: U.S. National Library of Medicine (NLM)
  • Web Service: https://wsearch.nlm.nih.gov/ws/query (XML, keyword search)
  • Connect API: https://connect.medlineplus.gov/service (JSON, code-based)
  • Rate limit: 85 requests / minute / IP
  • Update frequency: daily (Tue–Sat)
  • License: Public domain (U.S. Government work); attribution to MedlinePlus.gov requested

Signals

GitHub stars
116
Forks
3
Last commit
Aug 2026
Advanced
Item type
skill
Key
medlineplus-drug-info
Source
github.com/qsong-github/drugclaw