ClinicalTrials MCP Server について
健康科学研究向けに、AIアシスタントとClinicalTrials.govをつなぐMCPサーバーです。試験の検索、NCT IDによる詳細取得、研究データのCSV保存に対応します。
主な機能
- 01式やキーワードによる試験検索
- 02NCT IDによる研究詳細の取得
- 03試験統計の照会
- 04CSVファイルの保存・読み込み・一覧表示
- 05リソース経由での研究データ取得
活用シーン
- 01特定の疾患に関する試験の検索
- 02個別研究の詳細確認
- 03検索結果を後続分析用に保存
MCP 対応
臨床試験の検索、詳細取得、統計ツールをMCPクライアントに公開し、研究データやCSVデータのリソースも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ClinicalTrials MCP Server
🔍 シンプルな MCP インターフェースを通じて、AI アシスタントが ClinicalTrials.gov のデータを検索、利用できるようにします。
ClinicalTrials MCP Server は、Model Context Protocol(MCP)を通じて、AI アシスタントと ClinicalTrials.gov の臨床試験リポジトリをつなぎます。AI モデルが臨床試験を検索し、その内容にプログラムからアクセスできるようにします。
🤝 コントリビュート • 📝 バグを報告
✨ 主な機能
- 🔎 臨床試験の検索:カスタム検索文字列または詳細な検索パラメーターを使って臨床試験を検索します ✅
- 🚀 効率的な取得:試験のメタデータに素早くアクセスできます ✅
- 📊 メタデータへのアクセス:NCT ID を使って、特定の試験の詳細なメタデータを取得します ✅
- 📊 研究支援:医療科学分野の研究や分析を支援します ✅
- 📋 CSV 管理:試験データを含む CSV ファイルを保存、読み込み、一覧表示します ✅
- 🗃️ ローカルストレージ:試験をローカルに保存し、すばやくアクセスできるようにします ✅
- 📊 統計:臨床試験に関する統計を取得します ✅
🚀 クイックスタート
Smithery 経由でインストール
Smithery 経由で Claude Desktop に ClinicalTrials Server を自動的にインストールするには:
Claude
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client claude --config "{}"
Cursor
以下を Settings → Cursor Settings → MCP → Add new server に貼り付けます:
- Mac/Linux
npx -y @smithery/cli@latest run ClinicalTrials-mcp-server --client cursor --config "{}"
Windsurf
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client windsurf --config "{}"
CLine
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client cline --config "{}"
手動でインストール
uv を使ってインストールします:
uv tool install ClinicalTrials-mcp-server
開発用:
# Clone and set up development environment
git clone https://github.com/JackKuo666/ClinicalTrials-MCP-Server.git
cd ClinicalTrials-MCP-Server
# Create and activate virtual environment
uv venv
source .venv/bin/activate
uv pip install -r requirements.txt
📊 使い方
MCP サーバーを起動します:
python clinical_trials_server.py
サーバーが起動したら、AI アシスタントまたはアプリケーションで提供されている MCP ツールを使用できます。ツールの使用例を以下に示します:
例 1:検索式を使って臨床試験を検索し、CSV に保存する
result = await mcp.use_tool("search_clinical_trials_and_save_studies_to_csv", {
"search_expr": "COVID-19 vaccine efficacy",
"max_studies": 5
})
print(result)
例 2:キーワードで試験を取得する
result = await mcp.use_tool("get_studies_by_keyword", {
"keyword": "diabetes",
"max_studies": 10
})
print(result)
例 3:特定の試験の詳細情報をすべて取得する
result = await mcp.use_tool("get_full_study_details", {
"nct_id": "NCT04280705"
})
print(result)
例 4:カスタムフィールドを指定して試験を検索、保存する
result = await mcp.use_tool("search_clinical_trials_and_save_studies_to_csv", {
"search_expr": "alzheimer",
"max_studies": 20,
"filename": "alzheimer_studies.csv",
"fields": ["NCT Number", "Study Title", "Brief Summary", "Conditions"]
})
print(result)
これらの例では、ClinicalTrials MCP Server が提供する主なツールの使用方法を説明しています。用途に応じてパラメーターを調整してください。
🛠 MCP ツール
ClinicalTrials MCP Server は、以下のツールを提供します:
search_clinical_trials_and_save_studies_to_csv
検索式を使って臨床試験を検索し、結果を CSV ファイルに保存します。
パラメーター:
search_expr(str):検索式(例:"Coronavirus+COVID")max_studies(int, optional):返す試験の最大数(デフォルト:10)save_csv(bool, optional):結果を CSV ファイルとして保存するかどうか(デフォルト:True)filename(str, optional):保存する CSV ファイルの名前(デフォルト:corona_fields.csv)fields(list, optional):含めるフィールドのリスト(デフォルト:NCT Number, Conditions, Study Title, Brief Summary)
戻り値: 検索結果の文字列表現
get_full_study_details
特定の臨床試験に関する詳細情報を取得します。
パラメーター:
nct_id(str):臨床試験の NCT ID
戻り値: 試験詳細の文字列表現
get_studies_by_keyword
特定のキーワードに関連する試験を取得します。
パラメーター:
keyword(str):検索するキーワードmax_studies(int, optional):返す試験の最大数(デフォルト:20)save_csv(bool, optional):結果を CSV ファイルとして保存するかどうか(デフォルト:True)filename(str, optional):保存する CSV ファイルの名前(デフォルト:keyword_results_{keyword}.csv)
戻り値: 試験の文字列表現
get_study_statistics
臨床試験に関する統計を取得します。
パラメーター:
condition(str, optional):絞り込みに使う任意の条件
戻り値: 統計情報の文字列表現
get_full_studies_and_save
研究の全データを取得し、CSV に保存します。
パラメーター:
search_expr(str):検索式(例:「Coronavirus+COVID」)max_studies(int, optional):返す研究の最大数(デフォルト:20)filename(str, optional):保存する CSV ファイル名(デフォルト:full_studies.csv)
戻り値: 結果が保存されたことを示すメッセージ
load_csv_data
CSV ファイルからデータを読み込み、表示します。
パラメーター:
filename(str):読み込む CSV ファイル名
戻り値: CSV データの文字列表現
list_saved_csv_files
現在のディレクトリにある、利用可能な CSV ファイルをすべて一覧表示します。
戻り値: 利用可能な CSV ファイルの文字列表現
🔍 MCP リソース
ClinicalTrials MCP Server は、以下のリソースも提供します。
clinicaltrials://corona_fields
コロナのフィールドデータをリソースとして取得します。
clinicaltrials://full_studies
研究の全データをリソースとして取得します。
clinicaltrials://csv/{filename}
指定した CSV ファイルのデータを取得します。
パラメーター:
filename(str):CSV ファイル名
clinicaltrials://available_files
利用可能な CSV ファイルをすべて一覧表示します。
clinicaltrials://study/{nct_id}
NCT ID で指定した研究を取得します。
パラメーター:
nct_id(str):臨床試験の NCT ID
clinicaltrials://condition/{condition}
指定した疾患に関連する研究を取得します。
パラメーター:
condition(str):検索する疾患
Claude Desktop での使用方法
次の設定を claude_desktop_config.json に追加してください。
(Mac OS)
{
"mcpServers": {
"ClinicalTrials": {
"command": "python",
"args": ["-m", "ClinicalTrials-mcp-server"]
}
}
}
(Windows 版):
{
"mcpServers": {
"ClinicalTrials": {
"command": "C:\\Users\\YOUR_USERNAME\\AppData\\Local\\Programs\\Python\\Python311\\python.exe",
"args": [
"-m",
"ClinicalTrials-mcp-server"
]
}
}
}
Cline での使用方法
{
"mcpServers": {
"ClinicalTrials": {
"command": "bash",
"args": [
"-c",
"source /home/YOUR/PATH/ClinicalTrials-MCP-Server/.venv/bin/activate && python /home/YOUR/PATH/ClinicalTrials-MCP-Server/clinical_trials_server.py"
],
"env": {},
"disabled": false,
"autoApprove": []
}
}
}
Claude Desktop を再起動すると、次の機能を利用できるようになります。
臨床試験の検索
次のようなクエリを使用して、Claude に臨床試験の検索を依頼できます。
Can you search for recent clinical trials about diabetes?
検索結果には、一致する試験の基本情報が含まれます。
• 試験のタイトル
• NCT 番号
• 疾患
• 概要
試験の詳細情報の取得
NCT ID がわかったら、詳細情報を尋ねることができます。
Can you show me the details for trial NCT04280705?
次の情報が返されます。
• 試験の正式なタイトル
• 疾患
• 概要
• その他の利用可能な詳細情報
📁 プロジェクト構成
clinical_trials_server.py:FastMCP を使用した MCP サーバーのメイン実装clinical_trials.py:ClinicalTrials.gov API と連携するためのヘルパー関数
🔧 依存関係
- Python 3.10+
- FastMCP
- pytrials
- pandas
次のコマンドで必要な依存関係をインストールできます。
pip install FastMCP pytrials pandas
🤝 貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
📄 ライセンス
このプロジェクトは MIT License の下でライセンスされています。
⚠️ 免責事項
このツールは研究目的でのみ使用してください。ClinicalTrials.gov の利用規約を遵守し、責任を持ってこのツールを使用してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。