# Medical Terminologies MCP

An MCP server for querying authoritative medical registries like ICD-11, LOINC, MeSH, and RxNorm. Ideal for health informatics projects and code cross-referencing.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 15
- Author: SidneyBissoli
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/SidneyBissoli/medical-terminologies-mcp
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/medical-terminologies-mcp

## What it does

This integration exposes thirty-three tools to query global health standards straight from your agent. It handles lookups for ICD-11 conditions, RxNorm drug identifiers, MeSH hierarchies, and LOINC laboratory observations. The Brazilian CID-10 dataset and the official WHO transition tables reside inside the package, resolving locally without outbound network requests.

All other vocabulary searches dispatch live requests to public endpoints run by the WHO and the US National Library of Medicine. Never pass raw patient records into prompts. Plaintext input travels over the network to external APIs. The tool supplies terminology lookups, not clinical recommendations.

A hosted streamable HTTP endpoint runs on Cloudflare Workers and works without credentials. If you run the package locally through `npx` over `stdio`, you must configure `WHO_CLIENT_ID` and `WHO_CLIENT_SECRET` for direct WHO API authorization. Every response attaches origin provenance with reference links and extraction timestamps.

## Requirements
- Needs: Node.js (commands run via npx)
- Remote server: `https://medical.sidneybissoli.com/mcp`
- Environment variables: `WHO_CLIENT_ID`, `WHO_CLIENT_SECRET`, `WHO_ICD11_RELEASE_ID`, `LOG_LEVEL` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

1. **Platform CLI: remote server**
```bash
claude mcp add --transport http medical-terminologies-mcp https://medical.sidneybissoli.com/mcp
```

2. **Platform CLI**
```bash
claude mcp add --env WHO_CLIENT_ID=<WHO_CLIENT_ID> --env WHO_CLIENT_SECRET=<WHO_CLIENT_SECRET> --env WHO_ICD11_RELEASE_ID=<WHO_ICD11_RELEASE_ID> --env LOG_LEVEL=<LOG_LEVEL> --transport stdio medical-terminologies-mcp -- npx -y medical-terminologies-mcp
```
Replace <…> with your own values

### Codex

1. **Platform CLI: remote server**
```bash
codex mcp add medical-terminologies-mcp --url https://medical.sidneybissoli.com/mcp
```

2. **Platform CLI**
```bash
codex mcp add medical-terminologies-mcp --env WHO_CLIENT_ID=<WHO_CLIENT_ID> --env WHO_CLIENT_SECRET=<WHO_CLIENT_SECRET> --env WHO_ICD11_RELEASE_ID=<WHO_ICD11_RELEASE_ID> --env LOG_LEVEL=<LOG_LEVEL> -- npx -y medical-terminologies-mcp
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "medical-terminologies-mcp": {
            "url": "https://medical.sidneybissoli.com/mcp"
        }
    }
}
```
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "medical-terminologies-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "medical-terminologies-mcp"
            ],
            "env": {
                "WHO_CLIENT_ID": "<WHO_CLIENT_ID>",
                "WHO_CLIENT_SECRET": "<WHO_CLIENT_SECRET>",
                "WHO_ICD11_RELEASE_ID": "<WHO_ICD11_RELEASE_ID>",
                "LOG_LEVEL": "<LOG_LEVEL>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "medical-terminologies-mcp": {
            "type": "http",
            "url": "https://medical.sidneybissoli.com/mcp"
        }
    }
}
```
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "medical-terminologies-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "medical-terminologies-mcp"
            ],
            "env": {
                "WHO_CLIENT_ID": "<WHO_CLIENT_ID>",
                "WHO_CLIENT_SECRET": "<WHO_CLIENT_SECRET>",
                "WHO_ICD11_RELEASE_ID": "<WHO_ICD11_RELEASE_ID>",
                "LOG_LEVEL": "<LOG_LEVEL>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

1. **Platform CLI: remote server**
```bash
gemini mcp add -t http medical-terminologies-mcp https://medical.sidneybissoli.com/mcp
```

2. **Platform CLI**
```bash
gemini mcp add -e WHO_CLIENT_ID=<WHO_CLIENT_ID> -e WHO_CLIENT_SECRET=<WHO_CLIENT_SECRET> -e WHO_ICD11_RELEASE_ID=<WHO_ICD11_RELEASE_ID> -e LOG_LEVEL=<LOG_LEVEL> medical-terminologies-mcp npx -y medical-terminologies-mcp
```
Replace <…> with your own values

## When to use it
- look up diagnostic entries in the ICD-11 classification
- map legacy ICD-10 identifiers to ICD-11 codes
- inspect laboratory observation metadata using LOINC numbers
- traverse drug categories and descriptors in MeSH or ATC

## Example prompts
- Find the ICD-11 code for type 2 diabetes
- Translate ICD-10 code E11 into ICD-11
- Show the test definition for LOINC code 2339-0

## Similar
- [Zotero MCP](https://affpapa.org/en/nevibecode/mcp/zotero-mcp.md) — MCP server · ★ 5585
- [arxiv-mcp-server](https://affpapa.org/en/nevibecode/mcp/arxiv-mcp-server.md) — MCP server · ★ 3235
- [PaperBanana](https://affpapa.org/en/nevibecode/mcp/paperbanana.md) — MCP server · ★ 2418
- [MATLAB MCP Server](https://affpapa.org/en/nevibecode/mcp/matlab-mcp-server.md) — MCP server · ★ 1723
- [Hex Research](https://affpapa.org/en/nevibecode/mcp/hex-research.md) — MCP server · ★ 584
- [DocsAgent — Zotero, Obsidian & Apple Notes MCP Server](https://affpapa.org/en/nevibecode/mcp/docsagent-zotero-obsidian-apple-notes-mcp-server.md) — MCP server · ★ 578

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
