Skip to main content
Glama
pubspro

medterms-mcp

by pubspro

MedTerms MCP Server

MCPize

Medical terminology intelligence for AI agents.

Built on free public NIH APIs. Covers ICD-10-CM, MedDRA, RxNorm, CTCAE v5.0, and cross-terminology mapping — the coding systems used in every regulatory submission, clinical trial, and pharmacovigilance report.


Tools

Tool

What it does

lookup_icd10

Search ICD-10-CM codes by diagnosis name or code

lookup_meddra

MedDRA PT lookup with SOC, hierarchy, and synonyms

lookup_rxnorm

RxNorm drug concept, RxCUI, ATC class, brand/generic mapping

crossmap_icd_meddra

Cross-map between ICD-10 and MedDRA with regulatory context

search_medical_concept

Broad concept search across ICD-10, MedDRA, RxNorm

lookup_ctcae

CTCAE v5.0 grading criteria for oncology adverse events


Related MCP server: Medical Terminologies MCP

Who uses this

  • Medical information agents — classify AEs against MedDRA for FAERS submissions

  • Clinical trial agents — grade adverse events per CTCAE

  • Drug safety agents — map diagnoses between ICD-10 and MedDRA

  • Medical writing agents — look up correct PT for adverse reactions section

  • Regulatory submission agents — validate terminology before ICH E2B submission

  • EHR/EMR integration agents — translate between coding systems


Installation

npm install medterms-mcp

Or run directly:

npx medterms-mcp

Claude Desktop / MCP Config

{
  "mcpServers": {
    "medterms": {
      "command": "npx",
      "args": ["medterms-mcp"]
    }
  }
}

Data Sources

All free, public APIs — no API key required:

  • ICD-10-CM: NIH NLM Clinical Tables API

  • RxNorm: NIH NLM RxNav API

  • MedDRA SOC/hierarchy: MedDRA v26.0 public documentation

  • CTCAE v5.0: NCI Cancer Therapy Evaluation Program

⚠️ MedDRA full term browser requires subscription at meddra.org. This server provides hierarchy navigation and curated PT reference data based on public documentation.


Pricing (via MCPize)

Tier

Calls/month

Price

Free

25

$0

Pro

1,000

$39/mo ($374/yr)

Business

5,000

$89/mo ($854/yr)

Ultra

10,000

$129/mo ($1,238/yr)


Built by a CMPP-certified PhD in Neuroscience with 10+ years in pharma medical communications.

Free tier includes lookup_icd10 and lookup_rxnorm. Paid tiers unlock the Advanced Terminology Intelligence tools: lookup_meddra, lookup_ctcae, crossmap_icd_meddra, and search_medical_concept.

Available Tools

6 tools
crossmap_icd_meddraA

Cross-map between ICD-10 and MedDRA terminology. Provides conceptual mapping guidance for translating diagnoses between coding systems — critical for regulatory submissions, REMS, and pharmacovigilance.

ParametersJSON Schema
NameRequiredDescriptionDefault
termYesMedical concept to cross-map (e.g. 'depression', 'heart failure', 'neutropenia')
directionNoMapping directionboth

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behaviors. It only says 'provides conceptual mapping guidance', which is vague. It fails to clarify whether results are exact, probabilistic, or multiple options, nor does it mention output format or limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no redundant words. The purpose is stated first, followed by context. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose and context but lacks details about output behavior. Given the absence of an output schema, it should hint at the nature of results (e.g., list of mappings, confidence scores) to ensure completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema already describes both parameters thoroughly (term with examples, direction with enumerated values). The description adds no extra meaning beyond what the schema provides, resulting in baseline performance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Cross-map between ICD-10 and MedDRA terminology', specifying the verb and resources. It distinguishes from sibling tools (which are lookups of single terminologies) by emphasizing the mapping between two systems.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions critical use cases: 'regulatory submissions, REMS, and pharmacovigilance'. However, it doesn't explicitly advise when not to use or suggest alternatives, leaving some ambiguity about scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_ctcaeB

Look up NCI Common Terminology Criteria for Adverse Events (CTCAE) grading criteria for an adverse event. Essential for oncology clinical trial safety reporting.

ParametersJSON Schema
NameRequiredDescriptionDefault
adverse_eventYesAdverse event term (e.g. 'neutropenia', 'nausea', 'peripheral neuropathy', 'QTc prolongation')

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It does not mention read-only nature, error handling (e.g., term not found), or whether the output includes grade descriptions. This is a significant gap for a lookup tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with no wasted words. It front-loads the action ('Look up') and includes both the full name and acronym (CTCAE) for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description covers the basic purpose and domain. However, it omits any mention of output format (e.g., grade level descriptions) or behavior on invalid input, leaving some ambiguity about what the agent will receive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter 'adverse_event', with examples given. The tool description adds domain-specific context but does not provide additional semantic meaning beyond what the schema already offers. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it looks up CTCAE grading criteria for adverse events, specifying the resource (CTCAE) and action (look up grading). The phrase 'Essential for oncology clinical trial safety reporting' provides domain context. It distinguishes from sibling tools that focus on other terminologies (ICD, MedDRA, RxNorm) by focusing on CTCAE.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for oncology clinical trial safety reporting but does not explicitly state when to use this tool versus alternatives like lookup_meddra or search_medical_concept. No exclusions or when-not-to-use guidance is provided, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_icd10A

Search ICD-10-CM codes by diagnosis name or look up a specific code. Returns code, full description, and category. Essential for clinical documentation agents.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesDiagnosis name (e.g. 'major depressive disorder') or ICD-10 code (e.g. 'F33.1')
limitNoNumber of results to return

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It describes expected returns but does not explicitly declare read-only or non-destructive behavior. The actions 'search' and 'look up' imply safety, but explicit confirmation would improve clarity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences effectively convey purpose, expected output, and usage context with no redundancy. The core action is front-loaded in the first sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers input format, output fields, and high-level context (clinical documentation). While it lacks edge-case details (e.g., partial matching, empty results), it is sufficient for a simple lookup tool given no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the input schema already describes both parameters adequately. The tool description restates the query purpose but adds no new parameter-level detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool searches and looks up ICD-10-CM codes by diagnosis name or code, and returns code, description, and category. This clearly distinguishes it from sibling tools like lookup_meddra which cover other terminologies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It notes the tool is 'essential for clinical documentation agents,' implying its primary context. However, it does not explicitly state when not to use it (e.g., for other code systems), though sibling tool names provide some implicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_meddraA

Look up a MedDRA Preferred Term (PT), identify its System Organ Class (SOC), hierarchy level, and related terms. Critical for adverse event coding, pharmacovigilance, and regulatory submissions.

ParametersJSON Schema
NameRequiredDescriptionDefault
termYesMedDRA term to look up (e.g. 'nausea', 'qt prolongation', 'suicidal ideation')
include_synonymsNoInclude US/UK spelling variants and common synonyms

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It implies a read operation via 'look up' but does not explicitly state that it is read-only, nor does it disclose any behavioral traits like authentication needs, rate limits, or error handling. The description is acceptable but lacks extra context beyond basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, direct and front-loaded. The first sentence states the action and outputs, the second provides context. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only 2 parameters, no output schema, and no annotations, the description covers the purpose and usage context well. It mentions the key outputs (SOC, hierarchy, related terms) and domain. It could elaborate on edge cases like term not found, but overall is complete enough for a straightforward lookup tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (both term and include_synonyms are described in the input schema). The description does not add additional parameter semantics beyond what the schema provides, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (look up), resource (MedDRA Preferred Term), and what it returns (SOC, hierarchy, related terms). It also specifies the domain (adverse event coding, pharmacovigilance) which differentiates it from siblings like lookup_icd10 or lookup_ctcae.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on when to use this tool (critical for pharmacovigilance and regulatory submissions) but does not explicitly state when not to use it or suggest alternatives like lookup_icd10 for other coding systems. However, the context is clear enough for an experienced agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_rxnormA

Look up a drug's RxNorm concept, RxCUI identifier, ingredient relationships, and drug class. RxNorm is the standard for drug interoperability across EHR systems.

ParametersJSON Schema
NameRequiredDescriptionDefault
drug_nameYesDrug name (brand or generic, e.g. 'abilify', 'aripiprazole', 'ozempic')

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description does not disclose behavioral traits such as read-only nature, data sources, limitations (e.g., US only), or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states function and outputs, second provides context. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequately describes purpose and outputs for a simple lookup, but lacks detail on input format (case sensitivity) and output structure. Without output schema, more description would help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage with examples; description adds minimal value beyond reiterating the parameter context. Baseline score applied.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it looks up RxNorm concept, RxCUI, ingredient relationships, and drug class. Distinguishes from siblings which are for other coding systems (ICD-10, MedDRA).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Mentions RxNorm is for drug interoperability, implying use for drug terminology, but lacks explicit when-not or alternative recommendations among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_medical_conceptA

Search for a medical concept across terminology systems (SNOMED CT, MeSH, LOINC, NCI Thesaurus) using the NIH UMLS Metathesaurus. Returns concept definitions and cross-system identifiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
termYesMedical term to search (e.g. 'schizophrenia', 'EGFR mutation', 'HbA1c')
vocabularyNoTerminology system to search withinall

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry full weight for behavioral cues. It states the tool returns concept definitions and cross-system identifiers. However, it does not disclose potential behaviors like multiple matches, pagination, rate limits, or authentication requirements, leaving some ambiguity for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences without fluff. It front-loads the core action and lists key systems, then succinctly states return type. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (multi-system search) and full schema coverage, the description adequately explains that it returns definitions and identifiers. It does not mention result ordering or size limits, but for a search tool this is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters described (term and vocabulary with enum). The description adds context about supported systems (SNOMED CT, MeSH, LOINC, NCI Thesaurus) and the UMLS source, but does not cover all enum values (e.g., ICD10CM is missing). This adds marginal value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search for a medical concept across terminology systems' using specific sources (SNOMED CT, MeSH, LOINC, NCI Thesaurus) via NIH UMLS Metathesaurus. It explicitly distinguishes from sibling lookup tools that target single systems.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit when-to-use or when-not-to-use guidance relative to sibling tools. It implies cross-system search but lacks a clear directive like 'use for multi-terminology searches; use lookup_* for single system lookups.' Usage context is only inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.0.0
    • First observedcrossmap_icd_meddra
    • First observedlookup_ctcae
    • First observedlookup_icd10
    • First observedlookup_meddra
    • First observedlookup_rxnorm
    • First observedsearch_medical_concept

TDQS

A3.9/5.0
Disambiguation5/5

Each tool targets a distinct terminology or function: lookup tools for specific vocabularies (ICD-10, MedDRA, CTCAE, RxNorm), a cross-mapping tool, and a general concept search. No overlap in purpose.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case (lookup_*, crossmap_*, search_*). The naming is predictable and clear.

Tool Count5/5

6 tools is well-scoped for a medical terminology server, covering major coding systems and mappings without being excessive or insufficient.

Completeness4/5

Covers key terminologies (ICD-10, MedDRA, CTCAE, RxNorm) and provides a general search across multiple systems via UMLS. Minor gaps exist (e.g., direct LOINC lookups), but the set supports core pharmacovigilance and oncology workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pubspro/medterms-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server