mcpField
E
Eu Ctis

Eu Ctis

远程服务
pipeworx.io健康医疗03 天前更新

关于 Eu Ctis

用于搜索欧盟临床试验信息系统(CTIS)中登记的欧盟/欧洲经济区临床试验的 MCP 服务。帮助研究人员等用户检索试验记录,并可按药物、病症、申办方、状态、阶段和国家筛选。

主要功能

  1. 01使用多种条件筛选临床试验
  2. 02获取试验完整公开记录
  3. 03按药物查找相关试验
  4. 04查找近期获批的试验

适用场景

  1. 01查找某药物在指定国家的招募中试验
  2. 02查看试验的入选标准和终点
  3. 03按病症追踪近期获批试验

MCP 相关

将 CTIS 试验搜索、记录查询、按药物检索和近期授权查询作为 MCP 工具提供。可通过 stdio 本地运行,也可经由 Pipeworx 网关使用。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/eu-ctis/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/eu-ctis

来自欧盟临床试验信息系统(CTIS),根据《536/2014 号法规》在欧盟/欧洲经济区获批的临床试验——谁在开展什么试验、在哪些成员国、针对什么病症,以及当前状态。

隶属于 Pipeworx——一个将 AI Agent 连接到 1879+ 个实时数据源的 MCP 网关。这是一个独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。

工具

  • ctis_search_trials(query?, medicine?, condition?, sponsor?, title?, endpoint?, exclude?, status?, phase?, country?, age_group?, region?, gender?, has_results?, rare_disease?, orphan_designation?, low_intervention?, start_from?, start_to?, sort_by?, sort_direction?, page?, limit?) — 完整的搜索功能。可回答“哪些欧洲试验正在招募使用这种药物的参与者”。
  • ctis_trial(ct_number) — 某项试验完整的已发布记录:标题、申办方、产品及活性物质、病症、目标、入选标准、终点、计划招募人数、各成员国的状态和决定日期,以及报告的启动/招募事件。
  • ctis_trials_for_medicine(medicine, recruiting_only?, country?, limit?) — 涉及指定药物或活性物质的所有欧盟试验,并按状态统计数量。
  • ctis_recent_authorisations(since?, country?, condition?, sponsor?, phase?, limit?) — 最近在欧洲经济区获批的试验,按决定时间从新到旧排列。

身份验证

无需密钥。不需要 API 密钥、Cookie 或浏览器 User-Agent。

数据来源

  • POST https://euclinicaltrials.eu/ctis-public-api/search — 搜索端点,输入和输出均为 JSON 正文。
  • GET https://euclinicaltrials.eu/ctis-public-api/retrieve/{ctNumber} — 获取单项试验的完整记录。
  • 面向公众的门户网站:https://euclinicaltrials.eu/ctis-public/search。
使用前须知
  • 对 /ctis-public-api/search 发送 GET 请求会返回 403。 搜索使用 POST。403 表示请求方法不匹配,而非授权受限——从外部看来确实如此,这也是该数据源此前被放弃的原因。
  • 同级路径会返回状态码为 200 的 HTML。 /ctis-public-api/search/{ctNumber}、/trial/{ctNumber} 和 /ct/{ctNumber} 都会以 200 返回 Angular SPA 的索引页。只有 /retrieve/{ctNumber} 会返回 JSON。若解析器只信任状态码,就会把 HTML 外壳解析成数据。
  • 未知的试验编号会返回状态码为 200 的 {},而不是 404。响应正文中缺少 ctNumber 是唯一的“未找到”信号。
  • 筛选条件使用数字代码列表,而非文本。 status、trialPhaseCode、ageGroupCode、msc(成员国,使用 ISO 3166 数字国家代码)和 trialRegion 都接受整数。对应词汇表位于 src/index.ts,取自门户自身的选项列表;工具接受人类可读的标签并进行映射。
  • 总体状态代码和各国状态代码共用同一套词汇表(1 = 评估中……12 = 已取消,另有供成员国使用的 13–18)。搜索结果中的 trialCountries 格式为 "Spain:2"——国家名称、冒号、该国的状态代码。
  • ctStatus 有两种不同含义。 在搜索结果中,它是数字代码;在检索响应中,它是较粗略的标签字符串(“Authorised”),数字代码则保存在 ctPublicStatusCode 中。两者输出时都会统一转换为标签。
  • 不同端点的日期格式不同:搜索结果使用 DD/MM/YYYY,详情使用 ISO 时间戳。所有日期的输出格式均为 ISO 日期。
  • 完整记录体积很大——一项涉及 16 个国家的 III 期试验记录有 220 KB,因为每个自由文本字段都包含所有相关语言的译文。详情工具会展平数据并删除译文。
  • 试验记录包含其 ClinicalTrials.gov 编号,位于 secondaryIdentifyingNumbers.nctNumber,并以 nct_number 的形式提供。这是与同一研究的 clinicaltrials 套件关联的键。
  • CTIS 于 2022 年开始运行。 法规 536/2014 自 2022 年 1 月 31 日起适用;根据旧指令获批的试验存放在欧盟临床试验注册旧版系统中,不在此处。
  • 试验进行期间,trialGlobalEnd 是一个数组;试验结束后,它是一个对象。

快速开始

添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "eu-ctis": {
      "url": "https://gateway.pipeworx.io/eu-ctis/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/eu-ctis/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、 discover_tools、search_within、remember/recall,以及网关范围内的其他工具。因此,你看到的工具数量会多于表格中的数量:目前,单个套件端点除了套件自身的工具外,还会列出约 30 个共享工具。连接的 initialize 响应会说明其确切范围,是当天有效的权威说明。

这是有意为之,并非意外的多路复用。元工具可以让受限连接回答本套件范围之外的问题——通过 ask_pipeworx 在整个目录中进行路由——无需你再添加第二个 MCP 服务。目前无法挂载不包含这些元工具的套件端点;如果额外的架构定义占用的上下文超过了路由带来的价值,请只连接完整网关,而不是连接多个套件端点。

也可以连接完整的 Pipeworx 网关,直接列出所有套件的工具,而不只是当前套件的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

两个 URL 都连接到同一个网关和相同的 1879+ 个数据源。直接列出哪些套件的工具是唯一的区别;通过任一 URL,ask_pipeworx 都能访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/ctis_search_trials \
  -H 'Content-Type: application/json' \
  -d '{"medicine":"pembrolizumab","status":["Ongoing, recruiting"],"country":["Germany"],"limit":2}'

首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/ctis_search_trials。查找工具:POST https://gateway.pipeworx.io/v1/tools/search_packs,并传入 {"query":"..."}。

独立运行(无需网关账户)

此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需经过网关往返:

{
  "mcpServers": {
    "eu-ctis": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-eu-ctis"]
    }
  }
}

也可以直接运行,确认它能正常启动:

npx -y @pipeworx/mcp-eu-ctis

它通过 stdin/stdout 使用 MCP 通信,并针对仅限此软件包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接所添加的任何共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。

使用 ask_pipeworx

你也可以用通俗的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Eu Ctis data" })

网关会选择合适的工具并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。