Ema Medicines について
Ema Medicinesは、欧州医薬品庁(EMA)の公開登録情報を調べるMCPサーバーです。EUの中央審査方式で承認された医薬品、ハーブ評価、関連レポートを扱い、調査や安全性の確認に利用できます。
主な機能
- 01名称や成分による医薬品検索
- 02医薬品の詳細記録の取得
- 03承認と委員会意見の追跡
- 04ハーブ評価とモノグラフの検索
- 05供給不足と安全性通知の検索
- 06関連する規制レポートの参照
活用シーン
- 01最近のEU販売承認の確認
- 02製品名や成分からEMA記録を検索
- 03ハーブのモノグラフや評価レポートの特定
- 04医薬品の供給不足や安全性通知の確認
MCP 対応
EMAの医薬品登録、ハーブ一覧、関連レポートを検索するツールをMCPクライアントに提供します。対象は中央審査方式の登録で、各国独自の承認品は含みません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/ema-medicines/mcpclaude mcp add --transport http pipeworx-io-ema-medicines https://gateway.pipeworx.io/ema-medicines/mcp{"mcpServers":{"pipeworx-io-ema-medicines":{"type":"http","url":"https://gateway.pipeworx.io/ema-medicines/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-ema-medicines":{"type":"http","url":"https://gateway.pipeworx.io/ema-medicines/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-ema-medicines":{"type":"http","url":"https://gateway.pipeworx.io/ema-medicines/mcp"}}}{"mcpServers":{"pipeworx-io-ema-medicines":{"serverUrl":"https://gateway.pipeworx.io/ema-medicines/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@pipeworx/ema-medicines
欧州医薬品庁(EMA)の医薬品登録簿 — EU市場で中央審査方式により承認されたすべての医薬品と、欧州委員会の決定を待つ委員会の見解に加え、EMAの生薬インベントリ(欧州医薬品庁生薬委員会(HMPC)が評価した植物・植物由来物質と、各生薬のEU生薬モノグラフおよび評価報告書PDFへのリンク)、さらに同じ医薬品データダウンロードページにある7種類の関連XLSXレポート(供給不足、医療従事者向け直接通知(DHPC)、照会手続き、定期的安全性最新報告の単一評価(PSUSA)、オーファン指定、小児用医薬品調査計画、承認後手続き)。
Pipeworx の一部です。AI エージェントを1878以上の稼働中データソースに接続するMCPゲートウェイです。これは独立した非公式の連携機能であり、上流プロバイダーとの提携、推奨、公開を受けたものではありません。
ツール
ema_recent_approvals(from?, to?, month?, category?, limit?)— 指定した期間にEUで新たに販売承認された医薬品。「EMAが2026年7月に承認した医薬品は何か」に回答します。ema_chmp_opinions(opinion_status?, since?, category?, include_decided?, limit?)— CHMP(ヒト用)またはCVMP(動物用)が承認を推奨または非推奨とし、欧州委員会がまだ決定していない医薬品。「今月CHMPが推奨した内容は何か」に回答します。ema_medicine_search(query, status?, category?, orphan_only?, limit?)— ブランド名、INN/有効成分、治療領域、適応症のテキスト、ATCコード、または販売承認取得者で検索します。ema_medicine(name)— ブランド名またはEMA製品番号で指定した医薬品の、公開されている全記録を取得します。ema_recent_updates(since?, status?, category?, limit?)— 直近で変更された登録情報を取得します。販売承認の取り消しや一時停止も含まれます。herb_search(name?, latin?, botanical?, therapeutic_area?, status?, limit?)— EMAの生薬インベントリ(植物・生薬の物質)を、一般名、ラテン名/植物名、治療領域、またはHMPCの評価状況で検索します。「EMAが睡眠障害について評価した生薬は何か」「カモミールのEU生薬モノグラフはあるか」に回答します。herb(latin_name?, common_name?)— 生薬1種類のインベントリ全記録に加え、その生薬のEMAページから抽出した(リンク抽出のみ)monograph_urlとassessment_report_urlを取得します。「バレリアンルートのEMAモノグラフへのリンクは何か」に回答します。herb_monograph_status(latin)— ラテン名で指定した生薬について、HMPCの評価状況、コード/ラベル、欧州評価の結果を取得します。また、「確立された使用」と「伝統的使用」の区別は登録簿の項目ではない理由も説明します(下記参照)。ema_shortages(query?, status?, since?, limit?)— EUの医薬品供給不足について、状況(継続中/解消/終了)、影響を受ける剤形・規格、代替品の入手可能性、供給不足の開始日を取得します。FDAの供給不足ツールに相当するEU版です。ema_dhpc(query?, dhpc_type?, since?, category?, limit?)— 医療従事者向け直接通知:処方者に向けた緊急のEU全域安全性アラート(有害事象、品質欠陥、供給不足、安全性シグナル)を取得します。ema_referrals(query?, status?, safety_only?, category?, since?, limit?)— EUの照会手続き(第31条/第20条/第107i条など)を取得します。医薬品または物質クラスの安全性・科学的評価が対象です。ema_psusa(query?, outcome?, since?, limit?)— 定期的安全性最新報告の単一評価:有効成分ごとにEU全域で共同実施されるファーマコビジランス評価を取得します。ema_orphan_designations(query?, status?, since?, limit?)— 希少疾病治療薬に対するEUのオーファン医薬品指定(指定/取り消し/期限切れ/非指定)を取得します。ema_pip(query?, decision_type?, since?, limit?)— 小児用医薬品調査計画:小児を対象とした医薬品の試験について、合意または免除された計画を取得します。ema_post_authorisation(query?, status?, category?, since?, limit?)— 中央審査方式で承認された医薬品の市販後の変更とラベル変更の状況を取得します。
認証
キーは不要です。
データソース
- https://www.ema.europa.eu/en/documents/report/medicines-output-medicines-report_en.xlsx — 登録情報全体を1つのXLSXにまとめたもので、毎日18:00 CET頃に再生成されます。https://www.ema.europa.eu/en/medicines/download-medicine-data に、関連する10件のレポート(オーファン指定、供給不足、照会、承認後、DHPC、ハーブ、PSUSA、小児用医薬品開発計画、MRL)とともに掲載されています。
- https://www.ema.europa.eu/en/documents/report/medicines-output-herbal_medicines-report_en.xlsx — ハーブ医薬品の一覧で、同じファイル群に属し、毎日再生成されます。データ行251件は、重複のないハーブ204種に集約されます(シート内で同一の行が2~4回繰り返されるケースが少数あります。
herb_search/herbは、ハーブごとのページURLで重複を除去します)。各行にはハーブごとのページURL(https://www.ema.europa.eu/en/medicines/herbal/<latin-name-slug>)があり、その「Documents」セクションには、herbが取得するモノグラフと評価報告書のPDFへのリンクがあります。 - 同じダウンロードページに掲載されている、同じファイル群に属し、毎日再生成される関連レポート7件:
medicines-output-shortages-report_en.xlsx(ema_shortages)medicines-output-dhpc-report_en.xlsx(ema_dhpc)medicines-output-referrals-report_en.xlsx(ema_referrals)medicines-output-periodic_safety_update_report_single_assessments-report_en.xlsx(ema_psusa) — ファイル名はmedicines-output-psusa-report_en.xlsxではありません。その名前では404になります。medicines-output-orphan_designations-report_en.xlsx(ema_orphan_designations)medicines-output-paediatric_investigation_plans-report_en.xlsx(ema_pip)medicines-output-post_authorisation-report_en.xlsx(ema_post_authorisation)- 意図的に構築していないもの:
medicines-output-maximum_residue_limits-report_en.xlsx(動物用医薬品の残留限度で、このパックの対象外)とmedicines-output-opinions_outside_eu-report_en.xlsx(EU域外製品に関する、ニッチな第58条の科学的意見)。
触れる前に知っておくべきこと
- シートのレイアウトでは、ヘッダーは1行目ではありません。 シート
Medicineでは、1行目は出典情報のバナー、2〜8行目は空白で、9行目がヘッダー(39列)、10行目以降がレコードです。ヘッダー行には共有文字列ではなくインライン文字列が使われているため、共有文字列しか解決しないパーサーではヘッダーが空白として読み込まれます。 - セルの自己終了タグには注意が必要です。
<c r="E10" s="1"/>は空のセルです。セルの正規表現で属性を貪欲にマッチさせると/まで取り込んでしまい、次のセルの</c>までマッチが続きます。その結果、行内のすべての値が気づかないうちに1列ずつずれます。まさにこの理由から、src/xlsx.tsでは遅延マッチを使っています。 - 「新規承認」には
European Commission decision dateではなくMarketing authorisation dateを使ってください。 欧州委員会の決定日は承認後の変更時にも更新され、月あたり80〜141件あります。一方、実際の初回承認は月あたり4〜12件です。誤った日付でフィルタリングすると、見た目では気づかないまま別の問いへの回答になります。 - 委員会は毎月開催されるため、「今月、CHMPが推奨したものは何か」という問いの対象期間が空になることがほとんどです。
sinceで絞り込んだ結果がすべて除外された場合、ema_chmp_opinionsは未決の意見を返し、指定期間内に採択された意見がないことをwindow_noteで示します。これはカレンダーではなく、審査中の案件についての問いだからです。 Opinion statusだけでは「審査中」を意味しません。 承認済み製品や取り下げられた製品にも、過去の意見フィールドが残っています。審査中とは、Medicine statusがOpinionで始まるものを指します。ema_chmp_opinionsはこれをデフォルトで適用し、対象を広げるためのinclude_decidedを提供しています。- EMAは短時間の連続リクエストをレート制限し、429エラーに対してJSONではなく約40 KBのHTMLを返します。これは5件連続でリクエストして再現されました。リクエストごとのダウンロードは現実的ではないため、このパックでは解析済みのコピーを1つ、6時間保持し、それに加えてCloudflareのエッジキャッシュが繰り返しのリクエストに対応します。更新に失敗しても、以前のコピーがあればエラーではなくそのコピーを返します。
- 元データの日付形式は
DD/MM/YYYYで、出力時にISO形式へ変換されます。 data.europa.euからこのデータを取得することはできません。 EMAのデータセットは現在も掲載されていますが、modified: 2019-01-09のまま更新が止まっており、各配布URLは、再設計前の/sites/default/files/Medicines_output_*.xlsxパスに対して404を返します。- この登録簿が対象とするのは、EUの中央審査方式のみです。各国で承認された製品は含まれていません。
7つの関連レポート — 知っておくと役立つこと
- PSUSA のファイル名は、ツール/レポート名と一致しません。
medicines-output-psusa-report_en.xlsxではなく、medicines-output-periodic_safety_update_report_single_assessments-report_en.xlsxです。後者を推測しても 404 になります。他のレポート名からパターンを推測するのではなく、en/medicines/download-medicine-dataを取得し、実際の<a href>リストを検索して確認しました。 post_authorisationの URL 列はAAで、ヘッダー行の残り(A, AA, B, C, ...Z)とアルファベット順が異なります。 汎用ローダーは、各ヘッダーセルでシート XML が実際に使っている列文字を読み取るため、問題はありません。ただし、フィールドマップを手作業で編集する場合に、A..Z の順だと想定して「修正」しないでください。orphan_designationsにはCategory列がありません(この登録簿はヒト用のみです)。一方、dhpc、referrals、post_authorisationはヒト用と動物用が混在しており、categoryフィルターを使用します。- これはまれな EMA のソースデータ由来の現象であり、パーサーのバグではありません。 PSUSA のエクスポートでは、カンマを含む有効成分の文字列が、埋め込まれた余分な
"とともに、隣接する2つの共有文字列セルに分割されることがあります(行の約0.2%。例:dienogestとethinylestradiol (prolonged-release tablet)"が別々のセルになる)。該当する行も解析されますが、category/substances_in_scopeの値が少し崩れます。わずかな行のために特別な処理を加える価値はありません。 - 各レポートには独自の
ReportSpec(URL、列ヘッダー → フィールドのマップ、日付フィールド)があり、共通のloadReport()/reportDataset()の組み合わせに渡されます。行9をヘッダーとして解析する方法も、メインの登録簿やハーブ製品一覧と同じく6時間ごとに1回ダウンロードするキャッシュも共通で、7回コピーする代わりにパラメーターで切り替えています。 - 7つすべてを 2026-09-13 にライブ環境で確認し、実際の最新行があることを確かめました(例:供給不足には2026年から継続中の Eskazole/Zentel、DHPC には2026-08-20付けの Jentadueto 品質欠陥に関する通知、オーファン指定には2026-06-22付けの satralizumab の肯定的な指定があります)。
ハーブのツール — 知っておくと役立つこと
- 同じシート構成で、列の内容は異なります。 1 行目はバナー、9 行目はヘッダー、10 行目以降はレコードです。列は、ラテン名、組み合わせ、英語の一般名、植物名、治療領域、ステータス、欧州評価の結果、追加情報、3 つの日付列、および
Herbal medicine URL(各ハーブのページ)です。 - シートには、同一内容の行が重複しているハーブがあります。 Fragariae folium はすべての列の値がバイト単位で同一の状態で 4 回掲載されています。
loadHerbal()は各ハーブのページ URL で重複を除去します(251 件のデータ行から 204 種の固有のハーブを確認。2026-09-07 に検証)。 - 各ハーブのページ URL のスラッグは一般名ではなくラテン名です(
valerian-rootではなくvalerianae-radix)。一部のハーブには-0の接尾辞が付いています(taraxaci-officinalis-radix-0)。その理由は EMA から説明されていません。 herbがスクレイピングするのは文章ではなくリンクです。 ハーブの EMA ページには、各改訂版の文書が/en/documents/<category>/<filename>_en.pdf配下の相対hrefとして記載されています。パスのカテゴリーは文書の種類を示します(herbal-monographはモノグラフ、herbal-reportは評価レポートです。herbが読み取るカテゴリーはこの 2 つのみです)。ファイル名の接頭辞は文書の新しさを示します(final-がdraft-より優先され、draft-はsupersededで始まるものより優先されます)。herbはカテゴリーごとに最も優先度の高いリンクを選びます。ページの文章セクションは読み取りません。FAQ 形式の「確立された使用」や「伝統的な使用」の説明は掲載されていますが、このパックではスクレイピングの対象外です。- 登録情報には、「確立された使用」か「伝統的な使用」かを示すフィールドは一切ありません。 2026-09-07 時点のシート全体から、
Outcome of European assessmentのすべての固有値を確認しましたが、European Union herbal monograph、European Union herbal monograph;European Union list entry、European Union list entry、Public statementの 4 種類のいずれにも、どの使用カテゴリーが該当するかは記載されていません。この分類はモノグラフ文書内で適応症ごとに設定されます(第 10a 条の「確立された使用」と第 16a 条の「伝統的な使用」)。1 つのハーブに、異なる適応症について両方が適用される場合もあります。たとえば、バレリアンの根のモノグラフでは、軽度の神経緊張と睡眠に対しては確立された使用、軽度の精神的ストレスに対しては伝統的な使用とされています。herb_monograph_statusは文章から推測するのではなく、この点を説明する注記とともにuse_classification: nullを返します。 - 評価が最終化されていないハーブでも、最終版のモノグラフがある場合があります。 評価の
status(F/P/C/D/R)は初回公開ではなく定期的なレビューサイクルを示します。Taraxaci officinalis radixはR: Rapporteur assigned(進行中のレビュー)ですが、ページには数年前のfinal-モノグラフと評価レポートがすでに掲載されています。ファイル名の接頭辞に基づいて優先順位を付け、登録情報のstatusフィールドは使わないでください。 - 初期段階のハーブには、まだ評価レポートがないことがあります。
Cannabis flos(D: Draft under discussion)にはherbal-monograph配下にdraft-public-statement-*.pdfのみがあり、herbal-report配下には何もありません。この場合、herbはエラーを返さず、assessment_report_url: nullを返します。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"ema-medicines": {
"url": "https://gateway.pipeworx.io/ema-medicines/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/ema-medicines/mcp の tools/list は、上記の表にあるツールに加えて、共有 Pipeworx メタツールである ask_pipeworx、
discover_tools、search_within、remember/recall など、ゲートウェイ全体で使えるツール一式を返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、パック独自のツールに加えて、共有ツールが約 30 個表示されます。接続の initialize 応答に正確な範囲が示されており、その日の状況を確認するための確実な情報源です。
これは意図的な設計であり、偶然の多重化ではありません。メタツールを使うと、このパックでは対応していない質問にも、カタログ全体を検索する ask_pipeworx を介して回答できるため、MCP サーバーを追加する必要がありません。現在、メタツールなしでパックのエンドポイントに接続する方法はありません。追加のスキーマによるコンテキストコストがルーティングの利点を上回る場合は、複数のパックエンドポイントではなく、フルゲートウェイに一度だけ接続してください。
または、フル Pipeworx ゲートウェイに接続すると、このパックだけでなく、すべてのパックのツールが直接一覧表示されます。
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらの URL も、同じゲートウェイと同じ 1878 以上のデータソースに接続します。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも、ask_pipeworx を使ってすべてのツールにアクセスできます。
MCP クライアントをお持ちでない場合は、HTTP 経由で呼び出せます
curl -X POST https://gateway.pipeworx.io/v1/tools/ema_recent_approvals \
-H 'Content-Type: application/json' \
-d '{"month":"2026-07"}'
最初の呼び出しにアカウントは不要です。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/ema_recent_approvals を実行します。ツールを検索するには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイとの往復通信も不要です。
{
"mcpServers": {
"ema-medicines": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-ema-medicines"]
}
}
}
または、起動することを確認するために、直接実行します。
npx -y @pipeworx/mcp-ema-medicines
stdin/stdout 経由で MCP を使用し、このパックのツールだけを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、自然な英語で質問できます。これは上記のパックエンドポイントでも、フルゲートウェイでも動作します。
ask_pipeworx({ question: "your question about Ema Medicines data" })
ゲートウェイが適切なツールを選び、引数を自動的に設定します。
詳細情報
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。