usefulapi

RxNorm MCP server. Look up drug names, RxCUIs, ingredients and interactions in RxNorm.

Claude

  1. Open Settings → Connectors → Add custom connector
  2. Paste this URL:
    https://rxnorm.usefulapi.io/mcp
  3. Authenticate with RxNorm when prompted

Cursor · VS Code · Windsurf · Cline

Add to your MCP config, then reload & authorize:

{
  "mcpServers": {
    "rxnorm": {
      "url": "https://rxnorm.usefulapi.io/mcp"
    }
  }
}
live13 toolsFree 100 tool calls / monthPro $9/mo · $90/yr

Tools 13

ToolTypeWhat it does
rxnorm_find_rxcui_by_nameread
Find RxCUI by name
Find RxNorm concept IDs (RxCUIs) matching a drug name string. RxNav REST: GET /rxcui.
rxnorm_get_drugsread
Search drugs by name
Search drug products (all term types) matching a name, grouped by concept type. RxNav REST: GET /drugs.
rxnorm_get_concept_propertiesread
Get concept properties
Get the RxNorm properties (name, synonym, tty, language, suppress, umlscui) of a concept. RxNav REST: GET /rxcui/{rxcui}/properties.
rxnorm_get_related_by_typeread
Get related concepts by type
Get concepts related to a concept, restricted to the specified term types. RxNav REST: GET /rxcui/{rxcui}/related.
rxnorm_get_all_relatedread
Get all related concepts
Get every concept directly or indirectly related to a concept (all term types). RxNav REST: GET /rxcui/{rxcui}/allrelated.
rxnorm_get_ndcsread
Get NDCs for a concept
Get the NDCs (National Drug Codes) associated with a concept. RxNav REST: GET /rxcui/{rxcui}/ndcs.
rxnorm_get_history_statusread
Get concept history / status
Get the status, history and attributes of a concept (active, remapped, quantified, etc). RxNav REST: GET /rxcui/{rxcui}/historystatus.
rxnorm_get_propertyread
Get concept property
Get a named property (category, name, value) of a concept, e.g. ATC code or a synonym. RxNav REST: GET /rxcui/{rxcui}/property.
rxnorm_get_spelling_suggestionsread
Get spelling suggestions
Get spelling suggestions for a possibly-misspelled drug name. RxNav REST: GET /spellingsuggestions.
rxnorm_get_approximate_matchread
Approximate term match
Fuzzy match a term against RxNorm names — tolerant of abbreviations, misspellings, and extra words. RxNav REST: GET /approximateTerm.
rxnorm_get_term_typesread
List term types
List all RxNorm term types (metadata), e.g. SCD, SBD, IN, BN. RxNav REST: GET /termtypes.
rxnorm_get_drug_classesread
Get drug classes for a drug
Get the drug classes that contain a drug, by drug name (RxClass API). RxNav REST: GET /rxclass/class/byDrugName.
rxnorm_get_class_membersread
Get drug class members
Get the drugs belonging to a drug class (RxClass API). RxNav REST: GET /rxclass/classMembers.

Pricing

PlanPriceLimit
Free$0100 tool calls / month
Pro$9/mo · $90/yrUnlimited

This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.