Mcp Terminology

io.github.pcmedsinge由 GitHub 帳號 pcmedsinge 發布v1.0.0更新於 Oct 24, 2026

LOINC/SNOMED CT/RxNorm/ICD-10 lookup, search, translation and ValueSet expansion via FHIR.

已驗證STDIO僅桌面知識與記憶資料與分析

概覽

AI 產生的概覽

一個 MCP 伺服器,讓助理透過 FHIR 術語服務查詢、搜尋、轉譯與展開臨床術語代碼(LOINC、SNOMED CT、RxNorm、ICD-10 等)。

可以做什麼
查詢單一臨床術語代碼,傳回顯示名稱、定義與名稱變體,支援 LOINC、SNOMED CT、RxNorm、ICD-10-CM、ICD-10、CVX、CPT、NDC 與 UCUM 的別名。在 LOINC、SNOMED CT 或 RxNorm 中依自由文字搜尋代碼。在不同系統之間轉譯代碼,例如從 SNOMED 轉為 ICD-10-CM。依 URL 展開標準的 FHIR ValueSet。
適用情境
適合助理在健康資料工作中需要解讀、正規化或交叉對應醫學代碼的情境,例如解析檢驗代碼、依名稱尋找藥品代碼,或在系統之間轉換診斷代碼。較適合處理 FHIR 或臨床資料集的開發者與分析人員,而非一般用途任務。
執行需求
以 Python 套件形式在本機透過 stdio 執行(以 uv 或 pip 安裝)。需要連線至 FHIR R4 術語伺服器的網路存取;基礎位址由環境變數 TERMINOLOGY_BASE_URL 設定,預設使用免費的公用伺服器 tx.fhir.org。選用的 LangFuse 追蹤透過 LANGFUSE_PUBLIC_KEY、LANGFUSE_SECRET_KEY 與 LANGFUSE_HOST 啟用。
安裝前請注意
每次查詢都會透過 HTTPS 傳送至所設定的術語伺服器,預設為第三方公用服務,因此不要傳送可識別病患身分的資料。若設定了 LangFuse 金鑰,工具輸入與輸出會被追蹤至該服務。每次查詢結果上限為 100 筆,公用伺服器可能限流或無法使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mcp Terminology,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

mcp-terminology

Unified LOINC / SNOMED CT / RxNorm / ICD-10 MCP server — v1.0.0 Part of the fhir-mcp-suite monorepo.

[License] [Python]

Query four major clinical terminology systems through a single MCP server backed by the free public FHIR R4 terminology server (tx.fhir.org/r4).


Tools

ToolDescriptionBackend operation
lookup_codeLook up a single code — returns display, definition, designationsCodeSystem/$lookup
search_codesFree-text search within LOINC, SNOMED CT, or RxNormValueSet/$expand?filter=
translate_codeTranslate a code across systems (SNOMED ↔ ICD-10-CM, etc.)ConceptMap/$translate
expand_valuesetExpand any canonical FHIR ValueSet by URLValueSet/$expand

Supported systems for lookup_code

AliasURI
loinchttp://loinc.org
snomed / snomed-cthttp://snomed.info/sct
rxnormhttp://www.nlm.nih.gov/research/umls/rxnorm
icd-10-cmhttp://hl7.org/fhir/sid/icd-10-cm
icd-10http://hl7.org/fhir/sid/icd-10
cvxhttp://hl7.org/fhir/sid/cvx
cpthttp://www.ama-assn.org/go/cpt
ndchttp://hl7.org/fhir/sid/ndc
ucumhttp://unitsofmeasure.org

Quick start

bash
# Install into the monorepo workspaceuv sync --all-packages
# Run (stdio mode — for Claude Desktop)uv run mcp-terminology
# Run with SSE transport (port 8001)MCP_TRANSPORT=sse uv run mcp-terminology

Claude Desktop configuration

json
{  "mcpServers": {    "terminology": {      "command": "uv",      "args": [        "--directory",        "/path/to/fhir-mcp-suite",        "run",        "mcp-terminology"      ],      "env": {        "TERMINOLOGY_BASE_URL": "https://tx.fhir.org/r4",        "LOG_LEVEL": "WARNING"      }    }  }}

Example tool calls

Look up a LOINC code

json
{ "system": "loinc", "code": "8302-2" }
json
{  "system_url": "http://loinc.org",  "system_name": "LOINC",  "code": "8302-2",  "display": "Body height",  "definition": "...",  "designations": [...],  "version": "2.78"}

Translate SNOMED → ICD-10-CM

json
{  "code": "73211009",  "source_system": "snomed",  "target_system": "icd-10-cm"}

Expand a ValueSet

json
{ "url": "http://hl7.org/fhir/ValueSet/administrative-gender" }

Architecture

Claude Desktop / LangGraph agent         │  MCP stdio    mcp-terminology (this package)         │  HTTPS    tx.fhir.org/r4  (free public FHIR R4 terminology server)         └── CodeSystem/$lookup         └── ValueSet/$expand         └── ConceptMap/$translate

Observability: every tool call is traced in LangFuse (input, output, latency, response bytes). Set LANGFUSE_PUBLIC_KEY / LANGFUSE_SECRET_KEY / LANGFUSE_HOST to enable.


Eval results

mcp-terminology eval — 21 golden cases  Error/security cases: 6/6   100%  (network-independent)  Integration cases:    run with `--tags lookup search translate expand`  CI threshold:         85% pass rate

Run locally:

bash
# Error cases only (no network needed):uv run python evals/mcp-terminology/run_eval.py --tags error
# Full suite (requires tx.fhir.org):uv run python evals/mcp-terminology/run_eval.py
# CI gate:uv run python evals/mcp-terminology/run_eval.py --ci --threshold 0.85

Security

  • Input sanitization on all parameters (regex allowlist on codes, http/https-only URLs, control-char stripping on filters)
  • Hard cap of 100 results per query
  • No PHI — uses only synthetic/public code lookups
  • See validation.py for the full allowlist

License

Apache-2.0 — see LICENSE.

來源:packages/mcp-terminology/README.md,提交 07fc507

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.0最新Sep 16, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。