Medical Codes (ICD-10/LOINC)

live HealthReference

Look up ICD-10-CM diagnosis codes, LOINC lab codes, and condition/procedure/drug terms via NLM Clinical Tables. Keyless. Psychiatric (DSM-5-aligned) diagnoses resolve as ICD-10 F-codes.

3 tools
0ms auth
free tier 50 calls/day

Tools

search_icd10

Search ICD-10-CM diagnosis/billing codes by keyword or code (keyless, offline source: NLM). E.g. "type 2 diabetes" -> [{code:"E11.9", description:"Type 2 diabetes mellitus without complications"}].

No parameters required.

Try it
search_loinc

Search LOINC codes (lab tests & clinical observations) by keyword (keyless). E.g. "hemoglobin a1c" -> LOINC number + long common name.

No parameters required.

Try it
search_medical_terms

Search clinical term lists by keyword (keyless): system = "conditions" (problem/diagnosis names), "procedures" (procedure names), or "drugs" (RxTerms drug display names).

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/medical-codes/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/medical-codes/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_icd10","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_icd10", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("look up icd-10-cm diagnosis codes, loinc lab codes, and condition/procedure/drug terms via nlm clinical tables");