Isrctn について
Isrctnは、ISRCTN国際臨床試験レジストリを検索し、個別の試験記録を取得するMCPサーバーです。米国以外の研究を含む登録情報を必要とする研究者や臨床試験分析担当者向けです。
主な機能
- 01テキスト、疾患、介入による試験検索
- 02ISRCTN IDによる構造化記録の取得
- 03日付から導出した試験状態での絞り込み
- 04スポンサー、日付、国、結果報告状況の取得
- 05認証情報不要の公開API利用
活用シーン
- 01疾患と介入に該当する国際試験を探す
- 02試験のスポンサー、段階、日付を確認する
- 03試験結果報告の公開有無を確認する
MCP 対応
試験検索と個別記録の取得をMCPツールとして提供します。Pipeworxゲートウェイ経由で接続するほか、ローカルのstdio MCPサーバーとして実行できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/isrctn/mcpclaude mcp add --transport http pipeworx-io-isrctn https://gateway.pipeworx.io/isrctn/mcp{"mcpServers":{"pipeworx-io-isrctn":{"type":"http","url":"https://gateway.pipeworx.io/isrctn/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-isrctn":{"type":"http","url":"https://gateway.pipeworx.io/isrctn/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-isrctn":{"type":"http","url":"https://gateway.pipeworx.io/isrctn/mcp"}}}{"mcpServers":{"pipeworx-io-isrctn":{"serverUrl":"https://gateway.pipeworx.io/isrctn/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
ISRCTN — 英国を拠点とする国際臨床試験登録機関
ISRCTN(isrctn.com)は、WHO と ICMJE に認定された主要な臨床試験登録機関で、Springer Nature/BMC が運営しています。英国および国際的な臨床試験を対象としており、ClinicalTrials.gov には登録されない米国以外の研究も数多く含まれます。登録されたすべての研究に永続的な ISRCTN 番号を割り当てます。無料で利用でき、キー不要の公開 XML クエリ API を提供しています。
Pipeworx の一部です。AI エージェントを 1882 以上の稼働中のデータソースに接続する MCP ゲートウェイです。これは独立した非公式の統合であり、上流プロバイダーとの提携、同プロバイダーによる承認、または同プロバイダーによる公開はありません。
AI エージェントにとっての重要性
ClinicalTrials.gov は米国中心です。「脳卒中の回復に対するシロシビンの試験にはどのようなものがあるか」という質問は、ISRCTN を使わなければ半分しか回答できません。英国/EU がスポンサーとなる複数の研究は、ClinicalTrials.gov ではなく ISRCTN に登録されているか、両方に登録されているためです。国際的な情報を網羅するには、このパックを clinicaltrials と併用してください。置き換えとして使用するものではありません。
2 つのフローがあります。
1. 検索。 「X と Y に関する研究」→ isrctn_search({query: "psilocybin depression"})
または、登録済みの疾患と登録済みの介入の両方を必須にする場合は、
isrctn_search({condition: "stroke", intervention: "psilocybin"}) を使用します。condition と intervention の組み合わせは AND 条件であり、OR 条件ではありません。検索結果が 0 件であれば、その疾患と介入の組み合わせに該当する ISRCTN 試験が現在存在しないことを意味します。応答には query_used が含まれるため、呼び出し元は実際に検索された内容を正確に確認できます。
2. 単一レコード。 isrctn_trial({id: "ISRCTN37167117"}) → タイトル、疾患、介入/フェーズ、スポンサー、資金提供者、日付、国、および結果報告書が公開されているかどうかを含む、構造化された完全なレコードが返されます。
ステータスは登録機関のフィールドではなく、導出されます
ClinicalTrials.gov とは異なり、ISRCTN の XML フィードには「試験全体のステータス」を示す文字列がありません。返される各試験の status は、登録期間の日付(recruitment_start、recruitment_end、overall_end_date)と現在の日付を比較して算出されます。status_basis には、判定の根拠となった日付が正確に記載されます(例:"overall trial end date (2025-01-23T00:00:00.000Z) has passed")。isrctn_search の status フィルターは、この導出値に対して照合され、取得済みの一括データに対して クライアント側で適用されます(スキャンした試験数は status_filter_scanned で報告されます)。これは、上流にフィルター対象となるサーバー側のステータスフィールドがないためです。
検索構文
query は自由記述のテキストです(ISRCTN の検索では、タイトル、概要、適格基準など、レコード全体を対象とする Lucene インデックスが使われます)。複数の単語はデフォルトで AND 条件になります(「psilocybin depression」はどちらか一方ではなく、両方の語を含む試験に一致します)。ライブ API で確認したところ、psilocybin depression と psilocybin AND depression は同じ件数を返し、フレーズ検索の "psilocybin depression" は 0 件を返します。condition と intervention は、ISRCTN のインデックスにある condition:/intervention: フィールドに特化して照合されます。これらは同じ単語を自由記述で検索する場合より範囲が狭くなります(例:condition:stroke の検索結果は単独の stroke 検索の約 1/4 です。「stroke」が適格基準やその他の箇所にしか記載されていない試験が除外されるためです)。
query、condition、intervention のうち、少なくとも 1 つが必須です。
認証
キーは不要です。認証なしで利用できる公開 XML クエリ API です。
データソース
https://www.isrctn.com/api/query/format/default?q={lucene_query}&limit={n}— 検索(例:q=psilocybin+depression&limit=10)。単一レコードの 取得にも使用されます(isrctn_trialは正規形式のISRCTN37167117のような ID でlimit=1を指定して検索します)。
次の担当者へのメモ
- 別の場所で非公式に案内されている単一レコードの URL 形式
/api/query/ISRCTN37167117/format/defaultは、現在 404 になります(2026-10-09 に確認済み)。1 件のレコードを取得するには、同じ検索エンドポイントで ID を指定します。 - 存在しない ISRCTN ID を指定すると、空の
allTrials要素(totalCountはゼロ)を含むHTTP 200が返されます。これは正当な空の結果であり、エラーではなく{found: false}として返されます。 - 不正な Lucene クエリ(引用符の対応が取れていない場合など)も、HTTP エラーではなく
totalCount="0"を返します。query、condition、interventionに渡すユーザー入力は送信前に Lucene 用にエスケープされるため、呼び出し元のリテラルテキスト(括弧、コロン、引用符)が原因で、クエリ構文の破損による誤ったゼロ件になることはありません。 - HTTP 200 でも
allTrials/totalCountのルート要素がないレスポンスや、totalCount > 0と示されているのに解析可能な fullTrial ブロックがゼロのレスポンスは、明示的なupstream_parseエラーとしてスローされます。空の結果として黙って返されることはありません。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"isrctn": {
"url": "https://gateway.pipeworx.io/isrctn/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/isrctn/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 も、同じゲートウェイと同じ 1882 以上のデータソースに接続します。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも ask_pipeworx を使えば、すべてのツールにアクセスできます。
MCP クライアントがない場合:HTTP で呼び出す
curl -X POST https://gateway.pipeworx.io/v1/tools/isrctn_search \
-H 'Content-Type: application/json' \
-d '{"query":"psilocybin depression","limit":5}'
最初の呼び出しにアカウントは必要ありません。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/isrctn_search を使用します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を使用します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も必要ありません。
{
"mcpServers": {
"isrctn": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-isrctn"]
}
}
}
または、直接実行して起動を確認します。
npx -y @pipeworx/mcp-isrctn
stdin/stdout 経由で MCP を使用し、initialize/tools/list/tools/call に対して、このパックのツールのみを返します。上記のゲートウェイ接続で追加される共有メタツールは含まれません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、自然な英語で質問できます。この方法は、上記のパックエンドポイントとフルゲートウェイの両方で使えます。
ask_pipeworx({ question: "your question about Isrctn data" })
ゲートウェイが適切なツールを選び、引数を自動的に設定します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。