Medical Codes MCP Server logo

Medical Codes MCP Server

Offline MCP lookup for US ICD-10-CM, ICD-10-PCS, HCPCS Level II, RxNorm, NDC, and RxClass data.

Install Medical Codes MCP Server

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "medical-codes-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/medical-codes-mcp-server"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

medical-codes-mcp-server exposes an offline, read-only index of US medical and medication vocabularies through six MCP tools. It decodes, searches, validates, and crosswalks ICD-10-CM, ICD-10-PCS, HCPCS Level II, RxNorm, NDC, and selected RxClass data. The package bundles a SQLite database with FTS5 search, and can run over STDIO or Streamable HTTP without an API key. Use it for code discovery, hierarchy navigation, drug normalization, and preliminary validity checks before verifying results against official releases and payer rules.

Use cases

  • Decode mixed US diagnosis, procedure, and HCPCS codes
  • Search official descriptions to find candidate codes
  • Validate code currency and billability before review
  • Map NDCs and drug names to RxNorm concepts
  • Browse code and medication hierarchies offline

Key features

  • Offline SQLite and FTS5 index
  • ICD-10-CM, ICD-10-PCS, and HCPCS Level II lookup
  • RxNorm and NDC crosswalks
  • RxClass drug relationship mapping
  • Code validation with non-billability reasons
  • STDIO and Streamable HTTP transports

Tools6

What Medical Codes MCP Server lets your agent do. Expand a tool for its parameters.

Self-reported~230 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 47d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 12d ago via OSV.dev · @cyanheads/medical-codes-mcp-server (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars2Stargazers on the source repository.
npm downloads1.5kPackage downloads in the last 30 days.
Last commit5d agoMost recent push to the default branch.
Tools exposed6Callable tools this server registers over MCP.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Medical Codes MCP Server works

What medical-codes-mcp-server does

medical-codes-mcp-server gives MCP-compatible agents access to freely redistributable US code and drug data without making live lookup requests at runtime. Its bundled systems include ICD-10-CM for diagnoses, ICD-10-PCS for inpatient procedures, HCPCS Level II for supplies, drugs, and non-physician services, and RxNorm for normalized medication concepts and NDC relationships.

The package also includes an RxClass layer over RxNorm drugs. Its government-sourced class relationships cover areas such as pharmacologic classes, mechanisms of action, therapeutic categories, DEA schedules, vaccine codes, and diseases treated or prevented. RxClass is presented as a drug-class layer rather than another medical code system.

CPT, SNOMED CT, LOINC, WHO ICD-10, and ICD-11 are outside the bundled scope. ICD-10-CM and ICD-10-PCS specifically represent the US clinical modifications.

How it works

Data is assembled during package build time into a read-only SQLite database with FTS5 indexes. The server opens that database at startup, so normal lookups work offline and require no API key. RxNorm and RxClass source data is fetched during the build process from public NLM services, while the medical code sets come from public-domain federal releases.

The tools can auto-detect a code system from a value's form, while an explicit system can resolve genuinely ambiguous values. NDCs may be supplied in supported hyphenated segment layouts or as 10- or 11-digit values. Results preserve request order, and batch decoding accepts from one to 50 codes.

Setup and configuration

The server can be installed through the package's npx invocation, including the one-click configurations offered for Claude Desktop, Cursor, and VS Code. It supports both STDIO and Streamable HTTP transports. A hosted MCP endpoint is also available at https://medical-codes.caseyjhand.com/mcp.

The package is keyless. Its bundled data is fixed at build time; use medcode_list_systems to inspect the release identifiers, effective dates, counts, and source versions included in a particular build.

Tools and capabilities

  • medcode_get_code decodes up to 50 mixed-system codes, including direct NDC-to-RxNorm resolution. It returns successful and unresolved items separately, with per-code reasons for failures. Parent and immediate-child information can be included.
  • medcode_search_codes performs full-text searches over official descriptions, supporting discovery from a clinical phrase.
  • medcode_check_code reports whether a code exists, is current, and is billable. Non-billable or terminated results can include an explanation.
  • medcode_map_codes follows code parents and children, maps drug names, RXCUIs, and NDCs, and relates drugs to RxClass classes or classes to member drugs.
  • medcode_browse_hierarchy explores a code system without requiring a search term.
  • medcode_list_systems reports bundled systems, release metadata, effective dates, code counts, and RxClass provenance.

Large decode responses are split around a 24,000-byte limit. Items that would exceed the response budget are returned as deferred work for a subsequent call.

Limitations and notes

Results are informational lookup data, not medical advice, coding advice, or reimbursement decisions. A valid and billable result does not determine whether a code is appropriate for a claim. Verify codes against the relevant CMS, CDC/NCHS, or NLM release and the payer's rules before submission.

The available data depends on the release baked into the installed package. The RxNorm bundle uses the public-domain normalized layer rather than the UMLS-licensed release. RxClass includes selected US government sources and excludes sources whose licensing terms prevent redistribution.

A code that belongs to an excluded system, such as CPT or SNOMED CT, cannot be resolved from the offline index. The server also distinguishes unsupported formats and hierarchy section values from valid code matches.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Medical Codes MCP Server

medical-codes-mcp-server is an MCP server that connects agents to bundled offline indexes for US ICD-10-CM, ICD-10-PCS, HCPCS Level II, RxNorm, NDC, and selected RxClass data. Its main tools decode, search, validate, browse, list provenance, and crosswalk codes, drugs, and medication classes without requiring an API key.

Install it with the package's npx command or use the provided one-click installation for Claude Desktop, Cursor, or VS Code. It can run over STDIO or Streamable HTTP, and a hosted MCP endpoint is available.

No, the server is keyless for normal use. It opens a read-only database bundled into the package, so code lookups and searches run offline after installation.

Yes, it can decode supported NDC formats to RxNorm products and crosswalk drug names, RXCUIs, NDCs, ingredients, and brands. It can also relate RxNorm drugs to the bundled RxClass categories.

No, CPT and SNOMED CT are not included in the offline index. The bundled clinical and billing systems are ICD-10-CM, ICD-10-PCS, and HCPCS Level II, alongside RxNorm and selected RxClass data.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMedical Codes MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/medical-codes-mcp-server?style=directory)](https://allmcps.com/mcp/medical-codes-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/medical-codes-mcp-server"><img src="https://allmcps.com/api/badge/medical-codes-mcp-server?style=directory" alt="Medical Codes MCP Server on AllMCPs" /></a>