ClinicalTrials MCP服务器
](https://smithery.ai/server/@JackKuo666/clinicaltrials-mcp-server)
🔍 使AI助手能够通过简单的MCP界面搜索和访问ClinicalTrials.gov数据。
ClinicalTrials MCP服务器通过模型上下文协议(MCP)在人工智能助手和ClinicalTrials.gov的临床试验库之间架起了一座桥梁。它允许人工智能模型以程序化的方式搜索临床试验并访问其内容。
🤝 贡献•📝 报告Bug
✨ 核心功能
- 🔎 试验搜索:使用自定义搜索字符串或高级搜索参数查询临床试验✅
- 🚀 高效检索:快速访问试用元数据✅
- 📊 元数据访问:使用NCT ID检索特定试验的详细元数据✅
- 📊 研究支持:促进健康科学研究和分析✅
- 📋 CSV管理:保存、加载和列出包含试用数据的CSV文件✅
- 🗃️ 本地存储:试验保存在本地,以便更快地访问✅
- 📊 统计:获取临床试验的统计数据✅
🚀 快速开始
通过Smithery安装
通过以下方式自动安装克劳德桌面版ClinicalTrials服务器 史密瑟里:
克劳德
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client claude --config "{}"光标
将以下内容粘贴到设置中→ 光标设置→ MCP → 添加新服务器:
- Mac/Linux
npx -y @smithery/cli@latest run ClinicalTrials-mcp-server --client cursor --config "{}" 帆板运动
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client windsurf --config "{}"渐变群
npx -y @smithery/cli@latest install ClinicalTrials-mcp-server --client cline --config "{}"手动安装
使用紫外线进行安装:
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服务器提供的主要工具。根据具体用例的需要调整参数。
🛠 MCP工具
ClinicalTrials MCP服务器提供以下工具:
搜索临床试验和保存研究to.csv
使用搜索表达式搜索临床试验,并将结果保存到CSV文件中。
参数:
search_expr(str):搜索表达式(例如,“冠状病毒+新冠肺炎”)max_studies(int,可选):要返回的最大研究数(默认值:10)save_csv(bool,可选):是否将结果保存为CSV文件(默认值:True)filename(str,可选):要保存的CSV文件的名称(默认值:corona_fields.CSV)fields(列表,可选):要包含的字段列表(默认值:NCT编号、条件、研究标题、简要摘要)
退货: 搜索结果的字符串表示
get_full_study_details
获取特定临床试验的详细信息。
参数:
nct_id(str):临床试验的NCT ID
退货: 研究细节的字符串表示
get_studies_by-keyword
获取与特定关键字相关的研究。
参数:
keyword(str):要搜索的关键字max_studies(int,可选):要返回的最大研究数(默认值:20)save_csv(bool,可选):是否将结果保存为CSV文件(默认值:True)filename(str,可选):要保存的CSV文件的名称(默认值:keyword_results\_{keyword}.CSV)
退货: 研究的字符串表示
get_study_statistics
获取临床试验的统计数据。
参数:
condition(str,optional):筛选的可选条件
退货: 统计数据的字符串表示
获取完整研究并保存
获取完整的研究数据并保存到CSV。
参数:
search_expr(str):搜索表达式(例如,“冠状病毒+新冠肺炎”)max_studies(int,可选):要返回的最大研究数(默认值:20)filename(str,可选):要保存的CSV文件的名称(默认值:full_studies.CSV)
退货: 显示结果已保存的消息
load_csv_data
从CSV文件加载和显示数据。
参数:
filename(str):要加载的CSV文件的名称
退货: CSV数据的字符串表示
list_saved_csv文件
列出当前目录中所有可用的CSV文件。
退货: 可用CSV文件的字符串表示
🔍 MCP资源
ClinicalTrials MCP服务器还提供以下资源:
临床caltrials://corona_fields
获取电晕场数据作为资源。
临床caltrials://full_studies
获取完整的研究数据作为资源。
临床caltrials://csv/{文件名}
从特定的CSV文件获取数据。
参数:
filename(str):CSV文件的名称
临床caltrials://available_files
获取所有可用CSV文件的列表。
临床caltrials://study/{nct_id}
通过NCT ID获取具体研究。
参数:
nct_id(str):临床试验的NCT ID
临床caltrials://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
- 熊猫
您可以使用以下方式安装所需的依赖关系:
pip install FastMCP pytrials pandas🤝 贡献
欢迎投稿!请随时提交拉取请求。
📄 许可证
该项目根据MIT许可证获得许可。
⚠️ 免责声明
此工具仅用于研究目的。请尊重ClinicalTrials.gov的服务条款,并负责任地使用此工具。
