← Back to search

io.github.SidneyBissoli/medical-terminologies-mcp

SidneyBissoli streamable_http Scanned 30d ago

Unified MCP server for seven medical terminologies (ICD-11, SNOMED CT, LOINC, RxNorm, MeSH, ATC, CID-10) with authoritative WHO ICD-10→ICD-11 mapping. 37 tools, hosted endpoint available, MIT.

C
62.2 / 100

Versions

1.5.7latest
Jun 21, 2026
1.5.6
Jun 21, 2026
1.5.5
Jun 20, 2026
1.5.4
Jun 20, 2026
1.5.3
Jun 11, 2026
+ show 13 moreshow less
1.5.2
Jun 10, 2026
1.5.1
Jun 9, 2026
1.5.0
May 13, 2026
1.4.2
May 13, 2026
1.4.1
May 12, 2026
1.4.0
May 12, 2026
1.3.0
May 11, 2026
1.2.1
May 11, 2026
1.2.0
May 10, 2026
1.1.1
May 10, 2026
1.0.2
Jan 19, 2026
1.0.1
Jan 19, 2026
1.0.0
Jan 19, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 37

icd11_search
annotations: none low

Search for medical conditions, diseases, and health problems in ICD-11 (International Classification of Diseases, 11th Revision). Use this tool to: - Find ICD-11 codes for diagnoses - Search for diseases by name or keyword - Look up conditions in multiple languages Set \

cid10_search
annotations: none low

icd11_lookup
annotations: none low

Get detailed information about a specific ICD-11 entity by code or URI. Use this tool to: - Get the full definition of a disease - Retrieve coding notes and exclusions - Get the official title and synonyms Provide either an ICD-11 code (e.g., "BA00") or a full foundation URI. Set \

icd11_hierarchy
annotations: none low

Navigate the ICD-11 hierarchy to find parent or child entities. Use this tool to: - Find broader categories (parents) of a condition - Find specific subtypes (children) of a condition - Understand the classification structure Direction 'parents' returns ancestor categories, 'children' returns subcategories.

icd11_chapters
annotations: none low

List all ICD-11 chapters (top-level categories). Use this tool to: - Get an overview of ICD-11 structure - Find which chapter covers a body system or condition type - Navigate to specific disease categories ICD-11 has 28 chapters covering all areas of medicine.

icd11_postcoordination
annotations: none low

Get postcoordination information for an ICD-11 code. Use this tool to: - Find available axes for building composite codes - Check required vs optional postcoordination - Understand code extension possibilities Postcoordination allows adding severity, laterality, anatomy, etc.

rxnorm_search
annotations: none low

Search for drugs in RxNorm (Normalized names for clinical drugs). Use this tool to: - Find drug concepts by brand or generic name - Look up medications for prescribing - Search for drug formulations Returns matching drugs with RxCUI identifiers, names, and term types.

rxnorm_concept
annotations: none low

Get detailed information about a specific RxNorm concept by RxCUI. Use this tool to: - Get the full name and synonyms for a drug - Check the concept status (active, remapped, etc.) - View related concepts (ingredients, brands, forms) Provide an RxCUI (RxNorm Concept Unique Identifier) like "161".

rxnorm_ingredients
annotations: none low

Get active ingredients for a drug by RxCUI. Use this tool to: - Find the active ingredients in a medication - Check for single vs. multiple ingredient products - Identify the generic components of brand drugs Returns ingredient RxCUIs and names.

rxnorm_classes
annotations: none low

Get therapeutic and pharmacologic classes for a drug. Use this tool to: - Find the drug class (e.g., "Beta-blockers", "NSAIDs") - Identify therapeutic categories - Look up mechanism of action classifications Returns class IDs, names, and classification sources.

rxnorm_ndc
annotations: none low

Map between RxNorm concepts and National Drug Codes (NDC). Use this tool to: - Get all NDC codes for a drug (by RxCUI) - Find the RxCUI for an NDC code - Cross-reference between coding systems Provide either an RxCUI to get NDCs, or an NDC to get the RxCUI.

atc_classify
annotations: none low

Look up the WHO ATC (Anatomical Therapeutic Chemical) classification(s) for a drug by name. Use this tool to: - Find the ATC code for a medication (e.g., "metformin" → A10BA02) - Identify the therapeutic and pharmacological class hierarchy - Cross-reference drugs with their international ATC codes Returns one entry per ATC code the drug belongs to. A single-ingredient drug typically maps to one substance-level code; combination products map to multiple. ATC codes are international (WHO Collaborating Centre); this tool retrieves them via NLM RxClass.

atc_lookup
annotations: none low

Look up an ATC code at level 1-4 to get its name and hierarchy level. Use this tool to: - Resolve an ATC code (e.g., "A10BA") to its class name ("Biguanides") - Confirm a code exists in the current ATC index - Identify the level (anatomical / therapeutic / pharmacological / chemical) Accepts codes 1-5 characters long: "A" (anatomical), "A10" (therapeutic), "A10B" (pharmacological), "A10BA" (chemical). Substance-level codes (7 chars, e.g., "A10BA02") are not exposed by this endpoint — use atc_classify with the drug name to retrieve the substance code.

atc_members
annotations: none low

List the drugs (substances) that belong to an ATC class. Use this tool to: - Enumerate all members of a therapeutic class (e.g., "A10BA" → metformin, phenformin) - Build a list of drugs sharing a pharmacological mechanism - Explore an ATC subtree at any level Each member includes its substance-level (7-char) ATC code via source_atc_code, useful for disambiguation when the queried class is at level 1-4. RxNorm's catalog is US-centric; the ATC class names and codes themselves are international.

snomed_search
annotations: none low

Search for SNOMED CT concepts by term. Use this tool to: - Find clinical concepts (diseases, procedures, findings) - Look up terms for clinical documentation - Search for specific medical concepts Returns matching concepts with SCTID, Fully Specified Name (FSN), and Preferred Term (PT). Set \

snomed_concept
annotations: none low

Get detailed information about a SNOMED CT concept by SCTID. Use this tool to: - Get the Fully Specified Name and Preferred Term - Check if a concept is active - View the definition status (primitive vs. fully defined) Provide a SCTID like "73211009" (Diabetes mellitus). Set \

snomed_hierarchy
annotations: none low

Get the hierarchical relationships (IS-A) for a SNOMED CT concept. Use this tool to: - Find parent concepts (supertypes) - Find child concepts (subtypes) - Navigate the SNOMED CT hierarchy Returns parent and/or child concepts based on IS-A relationships. ⚠️ SNOMED CT content is for reference only. Production use requires IHTSDO license.

snomed_descriptions
annotations: none low

Get all descriptions (names) for a SNOMED CT concept. Use this tool to: - Get the Fully Specified Name (FSN) - Get the Preferred Term (PT) - View all synonyms for a concept Returns all active descriptions with their type and acceptability. ⚠️ SNOMED CT content is for reference only. Production use requires IHTSDO license.

snomed_ecl
annotations: none low

Execute an ECL (Expression Constraint Language) query. Use this tool to: - Find all descendants of a concept: "<< 73211009" - Find direct children: "< 73211009" - Find by attribute: "< 404684003 : 363698007 = 39057004" - Combine constraints: "<< 73211009 AND << 64572001" ECL is a powerful query language for navigating SNOMED CT. ⚠️ SNOMED CT content is for reference only. Production use requires IHTSDO license.

mesh_search
annotations: none low

Search for MeSH (Medical Subject Headings) descriptors. Use this tool to: - Find MeSH terms for indexing medical literature - Look up subject headings for PubMed searches - Find controlled vocabulary terms Set \

mesh_descriptor
annotations: none low

Get detailed information about a MeSH descriptor by ID. Use this tool to: - Get the full definition (scope note) of a MeSH term - View tree numbers showing hierarchy location - See related concepts and synonyms Provide a MeSH Descriptor ID like "D015242" (Ofloxacin). Set \

mesh_tree
annotations: none low

Get the tree hierarchy location(s) for a MeSH descriptor. Use this tool to: - See where a term fits in the MeSH hierarchy - Understand broader/narrower relationships - Find related terms in the same branch MeSH tree numbers show the hierarchical path (e.g., C14.280.647 for Myocardial Infarction).

mesh_qualifiers
annotations: none low

Get allowed qualifiers (subheadings) for a MeSH descriptor. Use this tool to: - Find which qualifiers can be combined with a descriptor - Build precise MeSH search queries - Understand aspects that can be specified Qualifiers refine descriptors (e.g., "Diabetes Mellitus/drug therapy").

map_icd10_to_icd11
annotations: none low

Authoritative ICD-10 → ICD-11 mapping using WHO transition tables (release 2025-01, bundled with the server). Returns the primary 1:1 ICD-11 category for the ICD-10 code plus any alternative ICD-11 candidates that WHO documents (some ICD-10 concepts split into multiple ICD-11 entities). For each mapping, includes the ICD-11 code, title, chapter, and the Foundation URI / Linearization URI for navigating to the full entity definition. Use this for clinical coding, billing migration, retrospective analysis, and any workflow that needs authoritative mapping rather than text-search candidates. Coverage: 11,243 ICD-10 categories (excludes chapters and blocks like "A00-A09" which aren't used in clinical coding). Provide a code like "E11" (Type 2 diabetes), "I21" (Acute MI), or "A07.8" (4 alternatives in WHO's table). Both dotted ("A07.8") and undotted ("A078") forms are accepted. Returns "no mapping" when the code isn't in the WHO category-level table — that's the honest answer rather than a fuzzy search fallback.

map_snomed_to_icd10
annotations: none low

Map a SNOMED CT concept to ICD-10. Use this tool to: - Find ICD-10 codes for a SNOMED CT concept - Support billing and reporting from clinical data - Cross-reference between clinical and classification systems Provide a SNOMED CT ID like "73211009" (Diabetes mellitus). ⚠️ SNOMED CT content requires IHTSDO license for production use.

map_loinc_to_snomed
annotations: none low

This tool looks up a LOINC code in NLM Clinical Tables and returns guidance on where to obtain a LOINC → SNOMED CT mapping. It does not perform the mapping. Direct LOINC → SNOMED CT mappings are not freely available via API. UMLS Metathesaurus contains the relationships but requires an individual UMLS Terminology Services license; the LOINC SNOMED CT Expression Association is published by Regenstrief Institute as part of the LOINC release and requires authenticated download from loinc.org under the LOINC license. For programmatic LOINC → SNOMED mapping, use UMLS or the LOINC Expression Association files. For interactive lookup, use the SNOMED CT browser available to your organization or the Regenstrief RELMA desktop tool. Provide a LOINC code like "2339-0" (Glucose) or "718-7" (Hemoglobin).

validate_codes
annotations: none low

Validate a mixed batch of medical codes against their source terminologies. Useful for retrospective analysis of legacy databases — flag codes that no longer exist, surface ICD-10 → ICD-11 replacements, and grade activity status where the terminology exposes it. For each input \

find_equivalent
annotations: none low

Ranked unified search for equivalent terms across multiple medical terminologies. Use this tool to: - Find the same concept in different coding systems - Compare how terminologies represent a concept - Support terminology mapping and data integration Searches across: ICD-11, SNOMED CT, LOINC, RxNorm, and MeSH. Set \

cid10_lookup
annotations: none low

Look up a specific CID-10 code and return its Portuguese name. Use this tool to: - Resolve a code to its Brazilian description ("I21" → "Infarto agudo do miocárdio") - Confirm a 3-char category or 4-char subcategory exists in CID-10 - Retrieve gender / cause-of-death restriction flags when applicable Accepts both dotted ("A00.1") and undotted ("A001") forms; returns the canonical display.

cid10_chapters
annotations: none low

List the 22 chapters of CID-10 with their code ranges and Portuguese titles. Use this tool to: - See the top-level structure of CID-10 (chapters I-XXII, e.g., "I. Algumas doenças infecciosas e parasitárias", "IX. Doenças do aparelho circulatório") - Map a code to its chapter by code range (e.g., I00-I99 → chapter IX) - Build a navigable table of contents for downstream tooling Returns 22 entries — CID-10 V2008 has not been updated since 2008.

cid10_chapter
annotations: none low

Get one CID-10 chapter and its constituent groups (e.g., "Chapter IX → I00-I02 Febre reumática aguda, I05-I09 Doenças reumáticas crônicas do coração, ..."). Use this tool to: - Drill from a chapter into its groups - Build hierarchical browsers - Find which group contains a code range Provide a chapter number (1-22).

loinc_search
annotations: none low

Search for laboratory tests, clinical observations, and measurements in LOINC (Logical Observation Identifiers Names and Codes). Use this tool to: - Find LOINC codes for lab tests (e.g., "glucose", "hemoglobin") - Search for clinical measurements and vital signs - Look up diagnostic observations Returns matching LOINC codes with names, components, and properties.

loinc_details
annotations: none low

Get detailed information about a specific LOINC code. Use this tool to: - Get the full name and description of a LOINC code - Find the component, property, timing, and system - Check the scale type and method Provide a LOINC number in format "XXXXX-X" (e.g., "2339-0" for Glucose).

loinc_answers
annotations: none low

Get the list of valid answers for a LOINC questionnaire item. Use this tool to: - Find valid response options for survey questions - Get answer codes for data entry validation - Look up standardized answer lists Only applicable to LOINC codes that represent questions with defined answer sets.

loinc_panels
annotations: none low

Get the structure of a LOINC panel or form. Use this tool to: - See all tests included in a panel (e.g., CBC, metabolic panel) - Get the structure of assessment forms - Find related observations grouped together Returns the list of LOINC codes that make up the panel.

terminology_versions
annotations: none low

List the current version, release date, publisher, source URL, and update cadence of every terminology this server queries against. Useful for pipeline maintainers who need to: - Confirm which release of ICD-11 / SNOMED / LOINC / RxNorm / MeSH / ATC the server is querying before a batch run. - Verify the bundled CID-10 (frozen at V2008) and ICD-10 → ICD-11 transition tables (currently 2025-01) match expectations. - Cite the data version in research artifacts. Pass \

terminology_diff
annotations: none low

Report what diff data is available between two versions of a terminology. For most terminologies this is **guidance only** — the server doesn't ship historical snapshots, so the tool points at the publisher's official changelog and explains the cadence. \

Permissions 3

network medium
Server uses network capabilities via: fetch()
shell high
Server uses shell capabilities via: child_process, spawn()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 90

low
Tool 'atc_members' has no annotations annotation_checker · 100%
low
Tool 'cid10_search' has no annotations annotation_checker · 100%
low
Tool 'icd11_search' has no annotations annotation_checker · 100%
low
Tool 'icd11_lookup' has no annotations annotation_checker · 100%
low
Tool 'icd11_hierarchy' has no annotations annotation_checker · 100%
low
Tool 'icd11_chapters' has no annotations annotation_checker · 100%
low
Tool 'icd11_postcoordination' has no annotations annotation_checker · 100%
low
Tool 'rxnorm_search' has no annotations annotation_checker · 100%
low
Tool 'rxnorm_concept' has no annotations annotation_checker · 100%
low
Tool 'rxnorm_ingredients' has no annotations annotation_checker · 100%
low
Tool 'rxnorm_classes' has no annotations annotation_checker · 100%
low
Tool 'rxnorm_ndc' has no annotations annotation_checker · 100%
low
Tool 'atc_classify' has no annotations annotation_checker · 100%
low
Tool 'atc_lookup' has no annotations annotation_checker · 100%
low
Tool 'snomed_search' has no annotations annotation_checker · 100%
low
Tool 'snomed_concept' has no annotations annotation_checker · 100%
low
Tool 'snomed_hierarchy' has no annotations annotation_checker · 100%
low
Tool 'snomed_descriptions' has no annotations annotation_checker · 100%
low
Tool 'snomed_ecl' has no annotations annotation_checker · 100%
low
Tool 'mesh_search' has no annotations annotation_checker · 100%
low
Tool 'mesh_descriptor' has no annotations annotation_checker · 100%
low
Tool 'mesh_tree' has no annotations annotation_checker · 100%
low
Tool 'mesh_qualifiers' has no annotations annotation_checker · 100%
low
Tool 'map_icd10_to_icd11' has no annotations annotation_checker · 100%
low
Tool 'map_snomed_to_icd10' has no annotations annotation_checker · 100%
low
Tool 'map_loinc_to_snomed' has no annotations annotation_checker · 100%
low
Tool 'validate_codes' has no annotations annotation_checker · 100%
low
Tool 'find_equivalent' has no annotations annotation_checker · 100%
low
Tool 'cid10_lookup' has no annotations annotation_checker · 100%
low
Tool 'cid10_chapters' has no annotations annotation_checker · 100%
low
Tool 'cid10_chapter' has no annotations annotation_checker · 100%
low
Tool 'loinc_search' has no annotations annotation_checker · 100%
low
Tool 'loinc_details' has no annotations annotation_checker · 100%
low
Tool 'loinc_answers' has no annotations annotation_checker · 100%
low
Tool 'loinc_panels' has no annotations annotation_checker · 100%
low
Tool 'terminology_versions' has no annotations annotation_checker · 100%
low
Tool 'terminology_diff' has no annotations annotation_checker · 100%
medium
OAuth implementation without PKCE auth_checker · 75%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: esbuild@0.28.0 (GHSA-g7r4-m6w7-qqqr) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
Tool: cid10_search manifest_parser · 75%
info
Tool: icd11_search manifest_parser · 90%
info
Tool: icd11_lookup manifest_parser · 90%
info
Tool: icd11_hierarchy manifest_parser · 90%
info
Tool: icd11_chapters manifest_parser · 90%
info
Tool: icd11_postcoordination manifest_parser · 90%
info
Tool: rxnorm_search manifest_parser · 90%
info
Tool: rxnorm_concept manifest_parser · 90%
info
Tool: rxnorm_ingredients manifest_parser · 90%
info
Tool: rxnorm_classes manifest_parser · 90%
info
Tool: rxnorm_ndc manifest_parser · 90%
info
Tool: atc_classify manifest_parser · 90%
info
Tool: atc_lookup manifest_parser · 90%
info
Tool: atc_members manifest_parser · 90%
info
Tool: snomed_search manifest_parser · 90%
info
Tool: snomed_concept manifest_parser · 90%
info
Tool: snomed_hierarchy manifest_parser · 90%
info
Tool: snomed_descriptions manifest_parser · 90%
info
Tool: snomed_ecl manifest_parser · 90%
info
Tool: mesh_search manifest_parser · 90%
info
Tool: mesh_descriptor manifest_parser · 90%
info
Tool: mesh_tree manifest_parser · 90%
info
Tool: mesh_qualifiers manifest_parser · 90%
info
Tool: map_icd10_to_icd11 manifest_parser · 90%
info
Tool: map_snomed_to_icd10 manifest_parser · 90%
info
Tool: map_loinc_to_snomed manifest_parser · 90%
info
Tool: validate_codes manifest_parser · 90%
info
Tool: find_equivalent manifest_parser · 90%
info
Tool: cid10_lookup manifest_parser · 90%
info
Tool: cid10_chapters manifest_parser · 90%
info
Tool: cid10_chapter manifest_parser · 90%
info
Tool: loinc_search manifest_parser · 90%
info
Tool: loinc_details manifest_parser · 90%
info
Tool: loinc_answers manifest_parser · 90%
info
Tool: loinc_panels manifest_parser · 90%
info
Tool: terminology_versions manifest_parser · 90%
info
Tool: terminology_diff manifest_parser · 90%
info
Transport: streamable-http manifest_parser · 80%
info
Required env vars (8) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
critical
Invisible Unicode characters in 'snomed_hierarchy' poisoning · 92%
critical
Invisible Unicode characters in 'snomed_descriptions' poisoning · 92%
critical
Invisible Unicode characters in 'snomed_ecl' poisoning · 92%
critical
Invisible Unicode characters in 'map_snomed_to_icd10' poisoning · 92%
info
SBOM generated: 299 components sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%