Token导航 LogoToken导航

MCP Server · 浏览器工具

uat (Op Zero Sh)

UAT Engine是一个AI原生的测试引擎,通过Model Context Protocol(MCP)提供浏览器自动化、API测试和MCP服务器验证功能,适用于自动化测试和部署验证场景。

stdio官方级别未说明来源级核验工具 41
浏览器自动化TypeScriptClaudeAPI测试Cursor

快速开始

作者 / 组织
OpZero-sh
提供方
OpZero-sh
运行时
Docker

工具数量

41

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

uat (Op Zero Sh) 属于浏览器工具类 MCP Server,公开资料标注 41 个工具,通过stdio 本地进程接入,适配 Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

浏览器工具

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

docker run --init -p 3200:3200 uat-engine

客户端配置示例

{
  "mcpServers": {
    "uat": {
      "command": "docker",
      "args": [
        "run",
        "--init",
        "-p",
        "3200:3200",
        "uat-engine"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 41 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

UAT发动机

基于模型上下文协议的人工智能原生测试

给你的AI代理一个浏览器、一个HTTP客户端和一个MCP探测器。让它测试任何东西。

46个用于浏览器自动化、API测试和MCP服务器验证的MCP工具-- 完全通过控制 模型上下文协议.

建造于 OpZero 的 --AI原生部署平台。

______________________________________________________________________

为什么选择UAT发动机?

人工智能代理正在发送代码,但谁来测试它呢?传统的测试框架需要人工编写和维护脚本。UAT Engine翻转模型:代理 描述要测试的内容,发动机手柄 怎么.

  • MCP本地 --插入任何MCP客户端(Claude、Cursor、自定义代理)。没有SDK,没有包装器,只有工具调用。
  • 浏览器+API+MCP --一个引擎包括UI验收测试、API集成测试和MCP服务器验证。
  • 声明性流程 --编写具有变量插值、条件、并行执行和跨步数据传递的YAML规范。零代码。
  • 幕后剧作家 --完全Chromium自动化,具有屏幕截图、跟踪、设备模拟和代理支持。
  • 生产硬化 --多级Docker镜像,非root执行,连接耗尽的优雅关机,就绪探测。
用于生产 OpZero.sh 验证Cloudflare、Netlify和Vercel之间的部署。

快速开始

# Install
bun install

# Start the MCP server
bun run start
# => Listening on http://localhost:3200/mcp

将任何MCP客户端指向 http://localhost:3200/mcp 并开始调用工具:

{
  "mcpServers": {
    "uat": {
      "type": "url",
      "url": "http://localhost:3200/mcp"
    }
  }
}

使用Docker

docker build -t uat-engine .
docker run --init -p 3200:3200 uat-engine

MCP工具

9个类别的46个工具。所有前缀均为 uat_.

会话管理

工具它做什么
uat_session_create启动浏览器会话(无头、视口、设备模拟、代理)
uat_session_list列出活动会话及其状态
uat_session_close关闭会话并释放资源

浏览器导航

工具它做什么
uat_navigate_goto导航到URL
uat_navigate_back回到历史
uat_navigate_forward在历史中前进
uat_navigate_reload重新加载页面
uat_navigate_wait等待条件(选择器、网络空闲、超时)

浏览器交互

工具它做什么
uat_interact_click按选择器单击元素
uat_interact_fill填写输入字段
uat_interact_select选择下拉选项
uat_interact_check切换复选框
uat_interact_press按键盘键
uat_interact_scroll滚动页面或至某个元素
uat_interact_upload将文件上传到输入

浏览器观察

工具它做什么
uat_observe_screenshot截图(整页或元素)
uat_observe_snapshot获取页面HTML快照
uat_observe_get_text从元素中提取文本内容
uat_observe_get_attribute读取元素属性
uat_observe_evaluate在页面上下文中执行JavaScript

断言

工具它做什么
uat_assert_visible断言元素可见
uat_assert_text断言元素文本匹配(精确、包含、正则表达式)
uat_assert_url断言当前URL与模式匹配
uat_assert_title断言页面标题
uat_assert_count断言元素计数(eq、gt、lt)
uat_assert_value断言输入字段值
uat_assert_status断言HTTP响应状态代码
uat_assert_body在响应体中声明值(支持虚线路径)

API测试

工具它做什么
uat_api_request发送带有标头、正文和身份验证的HTTP请求——返回带时间的结构化响应

MCP服务器测试

工具它做什么
uat_mcp_connect连接到远程MCP服务器
uat_mcp_list_tools发现连接上的可用工具
uat_mcp_call调用工具并测量响应时间
uat_mcp_disconnect断开与MCP服务器的连接

流程执行

工具它做什么
uat_flow_run执行YAML流规范
uat_flow_run_suite使用聚合的通过/失败运行多个流
uat_flow_list列出可用的流量规格
uat_flow_validate在不运行流规范的情况下对其进行验证
uat_flow_get_results从已完成的流运行中检索结果

录制

工具它做什么
uat_record_start开始录制剧作家的足迹
uat_record_stop停止录制并保存跟踪文件
uat_record_list列出已保存的录音

流量规格

流是声明性的YAML文件,将工具链接到完整的测试场景中。无需代码——代理编写YAML,引擎执行它。

示例:健康检查

name: health-check
description: Verify a page loads and has expected content
config:
  base_url: "${BASE_URL}"
steps:
  - action: goto
    url: "${BASE_URL}"
  - action: wait
    condition: networkidle
  - action: screenshot
    name: homepage-loaded
  - action: assert_title
    match: contains
    value: "${EXPECTED_TITLE}"
  - action: assert_visible
    selector: "nav"

示例:部署和验证(API+浏览器)

name: api-deploy-verify
description: Deploy via API, then verify the result in a browser
steps:
  - action: api_request
    method: POST
    url: "${BASE_URL}/api/deploy"
    headers:
      Authorization: "Bearer ${API_TOKEN}"
    body:
      files:
        index.html: "
smoke test
"
    assert_status: 200
    save_as: deploy

  - action: goto
    url: "${deploy.body.url}"

  - action: assert_text
    selector: "h1"
    value: "smoke test"

示例:MCP服务器验证

name: mcp-tools-check
description: Verify an MCP server responds with expected tools
steps:
  - action: mcp_connect
    url: "${MCP_URL}"
    auth: "Bearer ${MCP_TOKEN}"
  - action: mcp_list_tools
    save_as: tools
  - action: assert_body
    path: "tools.length"
    operator: gte
    value: 1
  - action: mcp_call
    tool: "repos_list"
    params: {}
    save_as: repos
  - action: mcp_disconnect

流量特征

  • 变量插值 -- ${VAR} 从会话上下文、流配置和环境变量解析。点状路径,如 ${deploy.body.url} 支持。
  • 跨步数据 -- save_as: name 存储步骤结果以供后续步骤使用
  • 条件 -- if: key / unless: key 用于条件步骤执行
  • 平行组 -- parallel: 块同时运行步骤
  • 行动路线 -- api_* 转到HTTP客户端, mcp_* 对于MCP探针, assert_* 对于断言,其他一切都归功于剧作家

码头工人

独立

docker build -t uat-engine .
docker run --init -p 3200:3200 uat-engine

Docker Compose(带网络)

docker network create devnet  # if not already created
docker compose up

compose配置包括:

  • init: true 用于正确的信号处理
  • read_only: true 带有显式tmpfs挂载的rootfs
  • 2GB内存/2 CPU限制(Chromium需要余量)
  • 健康检查 /health
  • 加入 devnet 服务发现网络

部署到铁路

railway up

看 railway.toml 对于部署配置。

建筑

mcp-server/src/
  index.ts              Entrypoint -- HTTP server, graceful shutdown, readiness probe
  types.ts              Shared TypeScript types
  engine/
    browser.ts          Playwright browser pool (singleton, isolated contexts per session)
    http-client.ts      HTTP client with structured responses
    mcp-probe.ts        MCP client for testing remote MCP servers
    trace-manager.ts    Playwright trace recording
    session-store.ts    In-memory session + context store
    flow-runner.ts      YAML flow execution engine
  tools/
    session.ts          Session lifecycle tools
    navigate.ts         Browser navigation tools
    interact.ts         Browser interaction tools
    observe.ts          Screenshot, snapshot, text extraction
    assert.ts           Assertion tools (browser + API)
    api.ts              HTTP request tool
    mcp-client.ts       MCP connect / list / call / disconnect
    flow.ts             Flow execution tools
    record.ts           Trace recording tools
flows/
  examples/             Starter flow specs

生产硬化

  • 多级Dockerfile --Builder安装deps,运行时仅复制生产工件
  • 非根执行 --运行为 pwuser (uid 1001)来自剧作家基础图像
  • 优雅关闭 --SIGTERM/SIGINT触发就绪探测失败、连接耗尽(10秒截止时间)、浏览器池关闭,然后干净退出
  • 就绪探针 -- /readiness 在排水过程中返回503,与 /health 活性
  • 请求超时 --每个MCP请求的截止时间为5分钟
  • 运输跟踪 --在停机时跟踪并排空活动连接

由OpZero制造

OpZero 的 是一个AI原生部署平台。从任何MCP客户端(Claude、Cursor或您自己的代理)将网站发送到Cloudflare、Netlify和Vercel。

UAT引擎是我们验证部署工作的方式 opzero.sh AI代理可以使用此引擎进行烟雾测试。

贡献

欢迎捐款。请先打开一个问题以进行非琐碎的更改。

bun install        # install deps
bun run dev        # start with watch mode
bun test           # run tests
bun run typecheck  # type check

许可证

麻省理工学院

工具与能力

工具数量

41

资源数量

0

提示词数量

0

能力标签

AI测试TypeScript本地部署浏览器自动化API测试MCP协议YAML测试流程

支持客户端

ClaudeCursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

自动操作网页

打开页面、点击、填表,把浏览器动作交给模型执行。

抓结构化数据

把页面内容整理成表格或 JSON,省掉手工复制粘贴。

走一遍关键流程

按步骤检查页面是否正常,回归时少漏环节。

选择建议

值得选的地方

  • 工具数量 41 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在浏览器工具场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
uat (Op Zero Sh)

MCP World · 本页

41stdio有1 个2026-05-17
Fetch 9a2682de

MCP.so

1SSE有3 个2026-05-17
Browser 738d52bc

MCP World

0stdio有1 个2026-05-17
Playwright MCP Server

MCP.so

21stdio有4 个2026-05-17
Skyvern MCP

MCP World

0stdio有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

uat (Op Zero Sh) 怎么安装?

公开资料给出的安装命令是 docker run --init -p 3200:3200 uat-engine,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

uat (Op Zero Sh) 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

uat (Op Zero Sh) 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

uat (Op Zero Sh) 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

uat (Op Zero Sh) 支持哪些客户端?

公开资料标注支持 Claude、Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP