用途:通过 ClinicalTrials.gov REST API v2 访问全球临床试验数据,用于按疾病、药物、地点、招募状态或试验阶段检索试验,按 NCT ID 获取试验详情,以及提取入组/排除标准用于患者匹配。
主要能力:提供命令行脚本 scripts/clinical_trials_api.py,封装常用筛选参数(阶段、年龄组、状态、干预、申办方等),无需手写原始查询。支持 search(多条件 AND 组合检索)、get-study(按 NCT ID 取详情)、get-eligibility(取入组标准、年龄范围、性别)、count(仅统计匹配数量)、raw-query(原始端点)以及基于 Essie 表达式的 --advanced 高级查询(如 AREA[LocationCountry]United States)。
使用方式:需先安装 uv 并确保其在 PATH 中。若工作区根目录不存在 .licenses/clinical_trials_database_LICENSE.txt,需先提示用户查看 https://clinicaltrials.gov/ 条款并创建记录通知文本与时间戳的文件。查询示例:uv run scripts/clinical_trials_api.py search --condition "cystic fibrosis" --status RECRUITING --phase PHASE3 --age-group CHILD --fields "NCTId,BriefTitle,OverallStatus,Phase" --limit 10 --output /tmp/cf_trials.json。按 ID 取详情:uv run scripts/clinical_trials_api.py get-study <nct_id> --output /tmp/study.json。取入组标准:uv run scripts/clinical_trials_api.py get-eligibility <nct_id> --output /tmp/eligibility.json。
限制与注意事项:必须使用提供的封装脚本而非直接访问数据库,脚本会自动遵守速率限制;始终使用 --fields 限制返回字段,试验 JSON 记录可能非常大;建议先用 --count-total 查看结果量;大结果集用 --limit 配合 --page-token 分页,page-token 必须从响应中逐字复制,不可自行构造;不要手动重复过滤结果,除非明确要求核验详细资格;使用本技能时需在输出中提及。字段路径与 --fields 配方见 references/studies_schema.md,API 参数、枚举值与 Essie 语法见 references/clinical_trials_api.md。