临床试验MCP服务器
英语| 简体中文
MCP服务器,用于从ClinicalTrials.gov API v2查询临床试验。提供智能搜索,默认值经过优化,可查找相关的、当前正在招募的试验。
功能特性 Features
- 🔍 智能搜索:关键词、疾病类型、基于位置的搜索
- 📍 地理的:按国家、城市或坐标搜索
- ⏰ 时间过滤器:默认为过去3个月(招聘试验)
- 📊 详细信息:完整的试验详细信息,包括PI、联系人、资格
- 🌐 双语:支持中英文查询
npx快速入门
无需安装!直接运行:
npx xiaoyibao-clinical-trialsMCP客户端配置
添加到MCP客户端设置中:
使用npx(推荐)
{
"mcpServers": {
"clinical-trials": {
"command": "npx",
"args": ["-y", "xiaoyibao-clinical-trials"]
}
}
}使用本地安装
npm install -g xiaoyibao-clinical-trials{
"mcpServers": {
"clinical-trials": {
"command": "xiaoyibao-clinical-trials"
}
}
}可用工具
1. search_clinical_trials
搜索具有智能默认值的临床试验。
默认行为:
- 状态:
RECRUITING(目前正在招聘) - 时间:过去3个月(试验更有可能开放)
- 结果:30个最相关的试验,按最新更新排序
参数:
keywords(字符串):关键字如“KRAS G12D”、“PD-1”、“Pembrolizumab”condition(字符串):疾病/病症,如“胰腺癌症”,“肠癌”country(string):国家名称,如“中国”、“美国”、“中国”city(string):城市名称,如“北京”、“上海”、“纽约”months(数字):时间范围(以月为单位)(默认值:3)status(string):招聘状态(默认:“招聘”)pageSize(数字):每页结果数(默认值:30,最大值:100)pageToken(string):分页标记
例子:
{
"keywords": "KRAS G12D",
"condition": "Pancreatic Cancer",
"country": "China"
}2. get_trial_details
获取全面的试用详细信息,包括:
- 主要研究者(PI)信息
- 医院所在城市
- 联系方式(电话、电子邮件)
- 详细研究说明
- 资格标准(纳入/排除)
- 主要/次要结果
参数:
nctId(字符串,必填):NCT编号,如“NCT04852770”
例子:
{
"nctId": "NCT04852770"
}3. search_by_location
按地理坐标搜索试验。
参数:
latitude(数字,必填):纬度longitude(数字,必填):经度radius(数字):搜索半径(以英里为单位)(默认值:50)condition(string):疾病/状况(可选)keywords(string):关键字(可选)status(string):招聘状态(默认:“招聘”)months(数字):时间范围(默认值:3)pageSize(数字):每页结果数(默认值:30)
例子:
{
"latitude": 39.9042,
"longitude": 116.4074,
"radius": 50,
"condition": "Lung Cancer"
}输出格式
所有响应均为JSON格式,针对LLM处理进行了优化。
搜索结果
{
"totalCount": 13,
"count": 13,
"studies": [
{
"nctId": "NCT06218914",
"title": "Phase 1 Study to Investigate TCRTs KRAS Mutation...",
"status": "RECRUITING",
"conditions": ["Pancreatic Cancer", "KRAS G12D"],
"interventions": [{"type": "Drug", "name": "NT-112"}],
"sponsor": "AstraZeneca",
"studyType": "INTERVENTIONAL",
"phase": ["PHASE1"],
"lastUpdate": "2024-10-15"
}
]
}试用详情
包括所有搜索字段以及:
investigators[]-PI和研究团队overallOfficials[]-研究官员centralContacts[]-全球联系方式(电话、电子邮件)locations[]-所有与当地有联系的医院locationsSummary-统计数据(国家、城市、总站点)eligibility-详细的纳入/排除标准primaryOutcomes[],secondaryOutcomes[]-研究终点briefSummary,detailedDescription-完整的研究描述
工具链提示指导
确保 稳定性、准确性和用户体验 调用此MCP服务时,我们提供专用的工具链提示文档。这些提示不仅仅是可选的引用—— 基本基础 为了有效地使用这项服务。
为什么工具链提示很重要
- 稳定性:提示标准化工具调用顺序(搜索→ 详情→ 结构化输出),防止LLM进行导致低效或混乱结果的任意调用。
- 准确度:明确的参数选择规则和位置过滤逻辑确保搜索结果与患者问题精确匹配(例如,药品名称+省,如GFH276+浙江医院)。
- 用户体验:统一的四部分输出结构(结论优先→ 证据与解释→ 键提示→ 风险和渠道提醒)帮助患者/家属快速了解、避免风险并找到下一步支持。
提示文件和使用方法
1.紧凑型(推荐用于生产)
- 文件:
CLINICAL_TRIALS_PROMPT_REFERENCE_COMPACT.md - 目的:直接用作 系统提示/开发者提示 用于MCP客户端(例如Claude Desktop)。
- 好处:简洁有力;包含所有核心规则和场景;最大限度地减少代币浪费。
- 如何使用:
1. 将文件内容复制或引用到LLM的系统提示符中。 1. LLM将自动调用 search_clinical_trials 和 get_trial_details 遵循工具链规则。 1. 输出将自动组织成四部分结构,针对患者/家属阅读进行了优化。
2.完整版本(参考和文档)
- 文件:
CLINICAL_TRIALS_PROMPT_REFERENCE.md - 目的:详细的解释和其他场景,供开发人员理解或定制。
- 何时使用:
- 需要了解完整的工具链设计理念。 - 添加新的临床查询场景。 - 团队培训或文件参考。
典型使用场景
场景1:查询GFH276+浙江医院
Patient question → Search GFH276 (keyword) + China (country)
→ Get NCT number (e.g., NCT07198321)
→ Query trial details & hospital locations
→ Filter hospitals in Zhejiang cities (Hangzhou/Ningbo/Wenzhou, etc.)
→ Output in four-part structure场景2:查找患者附近的试验
Patient question (with city or coordinates) → Use search_by_location or search_clinical_trials (city param)
→ List trials in patient's city/nearby
→ Call get_trial_details for key trials
→ Output in four-part structure集成建议
- Claude桌面用户:粘贴
CLINICAL_TRIALS_PROMPT_REFERENCE_COMPACT.md您可以将内容添加到Claude Desktop自定义系统提示中,或在对话开始时引用该文件。 - 其他MCP客户端:根据客户的系统提示/指令配置,相应地整合提示内容。
- API调用方:如果通过API使用此MCP,请在系统提示参数中包含紧凑提示版本,以确保每次调用都符合标准。
对稳定的承诺
我们承诺 刀具链提示的长期稳定性更新时:
- 保持了核心规则的向后兼容性。
- 在git提交中明确标记了突破性更改(如果有的话)。
- 提供迁移指南和版本交叉参考文档。
欢迎反馈或改进建议!通过GitHub issue或“小易宝助手”微信公众号联系我们。
api参考
发展
# Clone repository
git clone https://github.com/PancrePal-xiaoyibao/xiaoyibao-clinical-trials-mcp-server.git
cd xiaoyibao-clinical-trials-mcp-server
# Install dependencies
npm install
# Run tests
npm test
# Start server
npm start发布到npm
# Login to npm
npm login
# Publish package
npm publish许可证
麻省理工学院
贡献
欢迎投稿!请打开问题或提交拉取请求。
