clinicaltrialsgov-mcp-server
公開ホストサーバー: https://clinicaltrials.caseyjhand.com/mcp
概要
治験の検索、発見、分析、マッチングを行うための7つのツール:
ツール名 | 説明 |
| 全文検索、フィルター、ページネーション、ソート、フィールド選択を使用して研究を検索します。 |
| NCT IDで単一の研究を取得します。プロトコル、適格性、結果、アーム、介入、連絡先、場所を含む完全なレコードを返します。 |
| データを取得せずにクエリの合計研究数を取得します。高速な統計と内訳を提供します。 |
| APIフィールド(ステータス、フェーズ、研究タイプなど)の有効な値と、値ごとのカウントを確認します。 |
| 研究データモデルのフィールドツリー(項目名、型、ネスト)を閲覧します。サブツリーのナビゲーションとキーワード検索をサポートしています。 |
| 完了した研究から結果、有害事象、参加者の流れ、ベースラインを抽出します。オプションのサマリーモードにより、約200KBのペイロードを約5KBに削減可能です。 |
| 患者の人口統計と疾患を、適格な募集中の治験とマッチングします。年齢、性別、疾患、場所を提供することで、適格基準、連絡先、募集場所が一致する研究を見つけます。 |
リソース | 説明 |
| NCT IDで単一の臨床研究を取得します。完全なJSON形式。 |
プロンプト | 説明 |
| カウントツールと検索ツールを使用した、データ駆動型の治験ランドスケープ分析のための適応型ワークフロー。 |
Related MCP server: Healthcare MCP Server
ツール
clinicaltrials_search_studies
ClinicalTrials.govのクエリ機能を備えた主要な検索ツール。
全文検索およびフィールド指定クエリ(疾患、介入、スポンサー、場所、タイトル、結果)
型指定された列挙値によるステータスおよびフェーズフィルター
座標と距離による地理的近接フィルタリング
複雑なクエリのための高度なAREA[] Essie式サポート
ペイロードサイズを削減するためのフィールド選択(完全なレコードは各約70KB)
カーソルトークンによるページネーション、任意のフィールドによるソート
clinicaltrials_get_study_results
完了した研究の公開結果データを取得します。
統計、有害事象、参加者の流れ、ベースライン特性を含む結果指標
セクションレベルのフィルタリング(必要なデータのみをリクエスト)
オプションのサマリーモードにより、完全な結果(約200KB)を重要なメタデータ(研究あたり約5KB)に圧縮
部分的な成功報告を伴う、呼び出しごとの複数NCT IDのバッチ処理
結果のない研究と取得エラーの個別追跡
clinicaltrials_find_eligible
患者プロファイルを適格な募集中の治験とマッチングします。
患者の人口統計として年齢、性別、疾患、場所を受け取ります
人口統計フィルター(年齢範囲、性別、健康なボランティア)を備えた最適化されたAPIクエリを構築します
呼び出し元が評価できるように、適格性と場所のフィールドを含む研究を返します
一致する研究がない場合に、実行可能なヒント(疾患の拡大、フィルターの調整など)を提供します
特徴
@cyanheads/mcp-ts-core をベースに構築:
Zodスキーマとフォーマット関数を使用した宣言的なツール/リソース/プロンプト定義
統一されたエラーハンドリング — ハンドラーがスローし、フレームワークがキャッチして分類
デュアルトランスポート:同一コードベースからstdioとStreamable HTTPの両方に対応
HTTPトランスポート用のプラグイン可能な認証(
none,jwt,oauth)オプションのOpenTelemetryトレースを備えた構造化ロギング
ClinicalTrials.gov固有:
ClinicalTrials.gov REST API v2 用の型安全なクライアント
公開API — 認証やAPIキーは不要
指数バックオフ(3回試行)とレート制限(約1リクエスト/秒)による再試行
HTMLエラー検出と構造化エラーファクトリー
はじめに
公開ホストインスタンス
公開インスタンスが https://clinicaltrials.caseyjhand.com/mcp で利用可能です。インストールは不要です。Streamable HTTP経由で任意のMCPクライアントから接続してください:
{
"mcpServers": {
"clinicaltrialsgov-mcp-server": {
"type": "streamable-http",
"url": "https://clinicaltrials.caseyjhand.com/mcp"
}
}
}セルフホスト / ローカル
MCPクライアントの設定(例:claude_desktop_config.json)に追加してください:
{
"mcpServers": {
"clinicaltrialsgov-mcp-server": {
"type": "stdio",
"command": "bunx",
"args": ["clinicaltrialsgov-mcp-server@latest"],
"env": {
"MCP_TRANSPORT_TYPE": "stdio"
}
}
}
}またはStreamable HTTPの場合:
MCP_TRANSPORT_TYPE=http
MCP_HTTP_PORT=3010前提条件
Bun v1.2.0 以上(またはNode.js >= 22.0.0)
インストール
リポジトリをクローン:
git clone https://github.com/cyanheads/clinicaltrialsgov-mcp-server.gitディレクトリに移動:
cd clinicaltrialsgov-mcp-server依存関係をインストール:
bun install
設定
すべての設定はオプションです。サーバーはデフォルト設定で動作し、APIキーは不要です。
変数 | 説明 | デフォルト |
| ClinicalTrials.gov APIベースURL。 |
|
| リクエストごとのタイムアウト(ミリ秒)。 |
|
| 最大ページサイズの上限。 |
|
| トランスポート: |
|
| HTTPサーバーのポート。 |
|
| 認証モード: |
|
| ログレベル(RFC 5424)。 |
|
| ログファイルのディレクトリ(Node.jsのみ)。 |
|
| OpenTelemetryトレースを有効化。 |
|
サーバーの実行
ローカル開発
本番バージョンのビルドと実行:
bun run build bun run start:http # or start:stdio開発モードで実行(ウォッチ付き):
bun run dev:http # or dev:stdioチェックとテストの実行:
bun run devcheck # Lints, formats, type-checks bun run test # Runs test suite
Docker
docker build -t clinicaltrialsgov-mcp-server .
docker run -p 3010:3010 clinicaltrialsgov-mcp-serverプロジェクト構造
ディレクトリ | 目的 |
| ツール定義 ( |
| リソース定義 ( |
| プロンプト定義 ( |
| ClinicalTrials.gov APIクライアントおよび型。 |
| Zodを使用した環境変数の解析と検証。 |
| ユニットテストおよび統合テスト。 |
開発ガイド
開発ガイドラインとアーキテクチャルールについては CLAUDE.md を参照してください。要約:
ハンドラーがスローし、フレームワークがキャッチする — ツールロジック内に
try/catchを書かないリクエストスコープのロギングには
ctx.logを使用し、console呼び出しは行わない新しいツールやリソースは
index.tsバレルファイルに登録する
コントリビューション
Issueやプルリクエストを歓迎します。提出前にチェックを実行してください:
bun run devcheck
bun run testライセンス
Apache-2.0 — 詳細は LICENSE を参照してください。
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyanheads/clinicaltrialsgov-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server