mcpField
R
Rxnorm

Rxnorm

リモート
pipeworx.ioヘルスケア05 週間前に更新
リポジトリ公式サイト

Rxnorm について

Rxnormは、米国国立医学図書館のRxNav APIに基づく標準薬剤概念を、医療データ利用者やエージェントに提供します。薬剤名の解決や属性照会、安定したRxCUIによるデータ連携に対応し、薬物相互作用の検索は提供しません。

主な機能

  1. 01薬剤検索とRxCUIの解決
  2. 02成分、規格、剤形の取得
  3. 03ブランド名と一般名の関連付け
  4. 04RxCUIによるNDC検索

活用シーン

  1. 01薬剤名を標準概念に対応付け
  2. 02データソース間で薬剤レコードを連携
  3. 03薬剤属性とNDC識別子の確認

MCP 対応

MCPクライアントにRxNormの検索・薬剤概念照会ツールを提供し、Pipeworxゲートウェイ経由またはローカルstdioで利用できます。薬物相互作用ツールはありません。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://gateway.pipeworx.io/rxnorm/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

RxNorm — 標準化された医薬品概念

米国国立医学図書館による標準化された医薬品命名体系です。米国の医療制度で処方される医薬品、市販薬、成分にはすべて RxCUI(安定した概念 ID)が付与されています。RxNorm は混乱しがちな医薬品の名称を標準化します。「Tylenol」「acetaminophen」「APAP」は、いずれも同じ成分概念に解決されます。無料で、認証は不要です。

Pipeworx の一部です。AI エージェントを 1683 以上の稼働中のデータソースに接続する MCP ゲートウェイです。

AI エージェントにとって重要な理由

医薬品データは非常に複雑です。ブランド名、ジェネリック名、塩形、含量、剤形など、同じ分子でも多数の表記があります。RxNorm は、FDA データ、薬物相互作用データベース、EHR システム、臨床試験との相互参照に使える標準 ID を提供します。

主なフローは 3 つです。

1. 名称を解決する。 「Ozempic とは何ですか?」→ rxnorm_search({name: "ozempic"}) → RxCUI を含む、用語タイプ(SBD、BN、IN など)別の概念グループ。

2. 医薬品の特性を取得する。 「この RxCUI は何ですか?」→ rxnorm_get_properties({rxcui}) → 成分名、含量、剤形、ブランドかどうか。

3. 薬物相互作用 — 利用できません。 NLM は 2024 年 1 月に RxNav の相互作用 API を廃止し、代替 API は提供されていません。そのため、このパックには rxnorm_interactions ツールがなく、Pipeworx にも医薬品間相互作用のデータソースはありません。pharma_safety_report は FDA ラベルに記載された「Drug Interactions」セクションを返しますが、これは 1 つの医薬品について記述するもので、2 つの医薬品の組み合わせを確認するものではありません。そのテキストに記載のない医薬品について、安全性が確認されたわけではありません。

RxNorm、FDA、ClinicalTrials を組み合わせた医薬品安全性の総合分析には、[compare_entities({type: "drug", values})] または pharma_drug_profile 複合機能を使用してください。

用語タイプ(TTY)— 理解しておくべき重要事項

RxNorm では、医薬品ごとに異なる抽象度の概念が複数あります。

TTY意味例
IN成分(標準ジェネリック名)"semaglutide"
PIN精密成分"semaglutide sodium"
BNブランド名"Ozempic"
SBD意味的ブランド医薬品(市販製品)"Ozempic 0.5 mg/0.75 mL pen injector"
SCD意味的臨床医薬品(SBD のジェネリック相当品)"semaglutide 0.5 mg/0.75 mL pen injector"

複数のデータソースを連携する場合は、該当するものがあれば、必ず IN(成分)の RxCUI を優先してください。国が異なると、ブランド医薬品の SBD も異なります。IN は世界共通です。resolve_entity({type: "drug"}) は、IN > PIN > BN > SBD > 最初に利用可能なものの優先順位で標準 RxCUI を選択します。

引用可能な URI

pipeworx://rxnorm/concept/{rxcui}
pipeworx://rxnorm/concept/{rxcui}/interactions

RxCUI は安定しており、共有できます。

更新頻度

RxNorm は毎月更新されます。新薬は FDA 承認から 1 か月以内に掲載されます。販売中止となった製品にはフラグが付けられますが、過去の情報を検索できるようデータベースに保持されます。Pipeworx は 24 時間の TTL でキャッシュします。

よくある落とし穴

  • ブランド名で検索すると SBD のみが返ることがあります。 「Ozempic」を検索すると、成分ではなく意味的ブランド医薬品の概念が返されます。「semaglutide」を取得するには、ジェネリック名を直接検索するか、ブランドの RxCUI に対して rxnorm_related({rxcui, tty: "IN"}) を呼び出してください。後者には一部の設定で現在不具合があります。詳しくはエラーからの復旧をご覧ください。
  • スペルは想像以上に重要です。 「metformin hydrochloride」と「metformin HCl」では、返される概念セットが若干異なります。よく使われる略語には柔軟に対応しますが、あまり一般的でない略語では正確な表記が必要です。
  • NDC は別の ID です。 National Drug Code(NDC)は FDA が発行する包装単位の識別子であり、RxCUI ではありません。処方箋の調剤データに NDC が必要な場合は、rxnorm_ndc({rxcui}) を使って対応付けてください。
  • 配合剤に注意してください。 「Kombiglyze」のような医薬品には、メトホルミンとサキサグリプチンが含まれています。「metformin」を検索すると、配合剤が上位に表示される場合がありますが、成分レベルの分析には適していません。最初の結果をそのまま使うのではなく、SCD または IN に絞り込んでください。
  • 販売中止後も医薬品は残ります。 医薬品が販売中止になった後も、概念は保持されます。完全なレコードの obsolete フラグで、現在その医薬品が入手可能かどうかを確認できます。

クイックスタート

MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します:

{
  "mcpServers": {
    "rxnorm": {
      "url": "https://gateway.pipeworx.io/rxnorm/mcp"
    }
  }
}
このエンドポイントが実際に提供するもの

https://gateway.pipeworx.io/rxnorm/mcp の tools/list は、上の表に記載されたツールに加えて、共有の Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で使えるツール一式)を返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック専用のツールとともに、共有ツールが約 30 個表示されます。接続の initialize レスポンスには正確な範囲が記載されており、その日の状況を確認する際の正式な情報となります。

これは意図的な設計であり、偶然の多重化ではありません。メタツールを使うことで、このパックの対象外の質問にも、カタログ全体を横断してルーティングする ask_pipeworx を通じて回答できるため、2 つ目の MCP サーバーを追加する必要はありません。現時点では、メタツールなしでパックのエンドポイントを接続する方法はありません。追加のスキーマによるコンテキストのコストがルーティングの利点を上回る場合は、複数のパックエンドポイントではなく、フルゲートウェイに一度だけ接続してください。

このパックのツールだけでなく、すべてのパックのツールを直接一覧表示するには、Pipeworx のフルゲートウェイに接続してください:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

どちらの URL も同じゲートウェイと同じ 1683 以上のデータソースに接続します。唯一の違いは、どのパックのツールが直接一覧表示されるかです。どちらからでも、ask_pipeworx を使ってすべてのツールにアクセスできます。

MCP クライアントをお持ちでない場合:HTTP で呼び出す

curl -X POST https://gateway.pipeworx.io/v1/tools/rxnorm_search \
  -H 'Content-Type: application/json' \
  -d '{"name":"Ozempic"}'

最初の呼び出しにはアカウントは必要ありません。ツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/rxnorm_search を実行します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。

スタンドアロン(ゲートウェイアカウント不要)

このパッケージはローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も必要ありません:

{
  "mcpServers": {
    "rxnorm": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-rxnorm"]
    }
  }
}

または、直接実行して起動を確認できます:

npx -y @pipeworx/mcp-rxnorm

stdin/stdout を介して MCP で通信し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールは含まれません。同じソース、同じツールを使えますが、ask_pipeworx によるルーティングはありません。

ask_pipeworx の使用

ツールを直接呼び出す代わりに、平易な英語で質問できます。この方法は、上記のパックエンドポイントでもフルゲートウェイでも使えます:

ask_pipeworx({ question: "your question about Rxnorm data" })

ゲートウェイが適切なツールを選択し、引数を自動的に設定します。

詳細

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。