跳转到内容

通过 MCP 驱动 Restorm

Restorm 暴露了一个 MCP 服务器Model Context Protocol)。因此, AI 智能体 —— Claude Code、Cursor,或任何 MCP 客户端 —— 都可以读取您的项目、 创建并运行请求,还能驱动界面。

正是这一点让您可以直接说“导入这份 Swagger,创建一个测试下单流程的场景并运行它”, 并在一个始终摆在您眼前的应用里得到可核查的结果。

服务器默认已启用。有两道管控:

  • 设置 ▸ MCP ▸ 启用 MCP 服务器这项设置;
  • 一条绝对规则:在没有显示设备的机器上,MCP 服务器永远不会启动, 无论设置是什么。这样 CI 服务器就不会意外暴露出一个入口。

状态栏中的 MCP 指示器会在每一次收到调用时闪烁。它的弹出面板可以为当前会话 暂停或恢复服务器,也可以打开 MCP 日志

状态栏中的 MCP 指示器及其弹出面板:服务器的监听端口、已连接会话的名称,以及“停止 MCP 服务器”和“查看日志”两个操作

启动时,Restorm 会挑选一个空闲端口,生成一个与该进程绑定的访问令牌, 并在系统临时目录中写入一个发现文件。JSON-RPC 服务器监听在 127.0.0.1:<port>/mcp 上 —— 仅限本地回环:任何来自外部的调用都会收到 403

方案 A —— 使用启动器(推荐)

Section titled “方案 A —— 使用启动器(推荐)”

一个小小的代理程序,负责在您的 MCP 客户端的标准输入与 Restorm 的 HTTP 服务器之间架桥:

{
"mcpServers": {
"restorm": {
"command": "node",
"args": ["scripts/mcp-launcher.mjs"]
}
}
}

它会发现当前正在运行的实例、注入令牌,并且绝不会静默地启动 Restorm: 如果您在某个实例里关掉了 MCP 服务器,它就保持关闭,并给出一条清晰的错误信息。

从发现文件中读出端口和令牌,然后带上 Authorization: Bearer <token> 请求头发送您的 JSON-RPC 请求。

多个 Restorm 可以并行运行。每次调用都可以携带一个保留键 __session 来指定目标实例。list-instancescreate_instanceterminate_instance 这三个工具把这套机制补全。

读取 · 导航 · 项目 · 写入 · 环境与密钥 · 导入 · 运行 · 场景 · 实例 · 界面自动化(截图、DOM 查询、输入、快捷键、主题、布局)。

同时还暴露了四个资源:restorm://projectrestorm://treerestorm://active-tabrestorm://request/{id}

完整清单:MCP 工具

MCP 服务器本身从不受限。每个工具都会在被调用的那一刻校验它自己的权益。

  • Community 版 —— 全部请求层面的驱动能力:运行、取消、读取响应与历史、 读取流、发送消息、从 URL 导入、打开和关闭标签页、管理项目、写入树结构、 管理环境与变量、快速设置、收藏,以及六个防火墙工具。
  • Pro 版 —— 场景领域(包括读取)、截图、全部界面自动化主题迷你浏览器workbench 布局多实例, 以及各个 git 工具

受限的工具仍然会被列出 —— 它的名称带有 (Restorm Pro) 后缀 —— 并会返回一条明确且机器可读的错误信息,而不是直接消失。

  • 本地回环加令牌:服务器只监听 127.0.0.1,而且令牌是以恒定时间比对的。
  • 密钥:智能体拿到的是密钥已解析的值,与应用的其余部分一样 —— 它是代表您、用您自己的密钥在驱动 Restorm。密钥 类型所保证的一切依然成立:该值不会流入项目文件、不会进入导出文件, 也不会流向未经授权的第三方服务。
  • 真实的网络效果run_request 会真的去调用目标。 真正起到护栏作用的是您的 MCP 客户端的审批流程 —— 请务必让它保持启用。
  • 防火墙同样生效:智能体发起的、指向未知来源的调用, 会触发与您自己发起时完全一样的授权提示。
  • 日志记录:每一次调用都会连同其请求与响应出现在 MCP 日志中。