Walk hierarchies. Crosswalk between systems. Search by natural language. Extract from clinical notes. One engine, four surfaces.
medterm4ds handles the full terminology workflow: look up codes, walk hierarchies, crosswalk between systems, search by natural language, get patient-friendly names, and extract concepts from clinical text. No external API calls needed.
Look up any code and get its display name, properties, and metadata.
import medterm4ds as mt
terms = mt.connect("/path/to/umls.duckdb")
info = terms.lookup("SNOMEDCT_US", "44054006")
print(info.name)
# โ "Type 2 diabetes mellitus"
# Any code system, same API
info = terms.lookup("RXNORM", "860975")
print(info.name)
# โ "Metformin Oral Product"Python library, CLI, MCP server (38 tools), and FHIR R4 terminology server. Same API, same data โ use whichever surface fits your workflow.
Traverse SNOMED CT, ICD-10-CM, ATC, LOINC, and more. Find ancestors, descendants, test subsumption, navigate multi-level taxonomies.
Map SNOMED to ICD-10, RxNorm to ATC, LOINC to SNOMED โ any-to-any translation via shared UMLS concepts with equivalence values.
Find medical codes by natural language. Four modes: fast keyword, semantic understanding, combined, and canonical anchor resolution.
Extract coded concepts from clinical notes. Handles negation ("no evidence of..."), historical context, family history, and lab-vs-medication disambiguation.
1M+ clinical codes resolved to consumer-comprehensible display names. "E11.9" becomes "Diabetes Type 2" for patient-facing interfaces.