/ 目录 / 演练场 / web-eval-agent
● 社区 refreshdotdev ⚡ 即开即用

web-eval-agent

作者 refreshdotdev · refreshdotdev/web-eval-agent

用自然语言编写 Web 应用端到端测试 —— 智能体驱动浏览器、捕获控制台/网络流量并生成报告。

web-eval-agent (refreshdotdev) 让你用英文描述用户任务;MCP 打开浏览器、执行流程并汇报屏幕截图、控制台日志和网络流量。适合在无需编写 Playwright 脚本的情况下进行探索性 UX 测试。注意:原项目已停止维护 —— 团队已转向 withrefresh.com —— 但 MCP 仍在现有许可证下可用。

为什么要用

核心特性

实时演示

实际使用效果

web-eval-agent.replay ▶ 就绪
0/0

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "web-eval-agent": {
      "command": "uvx",
      "args": [
        "web-eval-agent"
      ],
      "_inferred": true
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "web-eval-agent": {
      "command": "uvx",
      "args": [
        "web-eval-agent"
      ],
      "_inferred": true
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "web-eval-agent": {
      "command": "uvx",
      "args": [
        "web-eval-agent"
      ],
      "_inferred": true
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "web-eval-agent": {
      "command": "uvx",
      "args": [
        "web-eval-agent"
      ],
      "_inferred": true
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "web-eval-agent",
      "command": "uvx",
      "args": [
        "web-eval-agent"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "web-eval-agent": {
      "command": {
        "path": "uvx",
        "args": [
          "web-eval-agent"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add web-eval-agent -- uvx web-eval-agent

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: web-eval-agent

使用 web-eval-agent 对 Web 部署进行冒烟测试

👤 独立开发者、没有 Playwright 测试套件的小团队 ⏱ ~10 min beginner

何时使用: 你部署后需要快速检查'有没有破坏什么明显的东西'。

前置条件
  • operative.sh/mcp 的免费 API 密钥 — 注册,复制密钥
  • Playwright 依赖 — npx playwright install(如果缺失,MCP 会提示)
步骤
  1. 描述测试
    在 staging.example.com 上验证我能否:用新邮箱注册、创建项目、登出。报告哪些失败了。✓ 已复制
    → 通过/失败并附带屏幕截图
  2. 深入排查失败
    对于失败的步骤,展示控制台错误和返回 500 的网络请求。✓ 已复制
    → 堆栈级别的证据

结果: 2 分钟内获得部署后的信心。

注意事项
  • 测试账户会污染你的生产数据库 — 始终针对测试环境运行;如果是生产环境,使用专用 QA 账户并清理
搭配使用: sentry

新流程的探索性 UX 评估

👤 设计师、产品经理 ⏱ ~20 min intermediate

何时使用: 你想对一个流程获得外部视角而无需安排用户测试。

步骤
  1. 描述用户意图,而不是步骤
    作为首次用户,尝试与同事分享项目。记录每个摩擦点。✓ 已复制
    → 自由形式的 UX 批评,附带每处困惑的屏幕截图
  2. 与快乐路径对比
    现在用熟悉 UI 的高级用户身份执行相同流程。快多少?什么让新手困惑但不困扰专家?✓ 已复制
    → 对比摩擦力图

结果: 在真实用户接触之前获得廉价的 UX 启发式方法。

使用保持的浏览器状态测试登录后的功能

👤 任何测试身份验证流程的人 ⏱ ~15 min intermediate

何时使用: 你的功能需要登录;你不想让智能体处理你的密码。

步骤
  1. 初始化会话
    调用 setup_browser_state 打开 https://app.example.com/login —— 我会自己登录。✓ 已复制
    → 交互式浏览器打开;你登录;会话保存
  2. 使用保存的状态运行测试
    测试账单设置页面:加载它、验证当前计划显示、尝试降级。✓ 已复制
    → 测试使用你的身份验证会话运行

结果: 无需与智能体共享凭据的身份验证测试。

组合

与其他 MCP 搭配,撬动十倍杠杆

web-eval-agent + sentry

运行评估,任何新错误都转到 Sentry 进行事后审查

运行注册评估,然后检查 Sentry 中在该窗口期间捕获的新错误事件。✓ 已复制
web-eval-agent + playwright

使用 web-eval-agent 原型化,硬化为 Playwright 用于 CI

将有效的 web-eval-agent 测试转换为我可以在 CI 中运行的 Playwright 规范。✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
web_eval_agent url: str, task: str, headless_browser?: bool 任何自然语言 Web 测试 LLM calls + browser time
setup_browser_state url?: str 每个服务一次,用于保持登录状态 0

成本与限制

运行它的成本

API 配额
operative.sh 的免费层
每次调用 Token 数
完整评估可能需要 5-20k 个 token(屏幕截图已描述)
费用
低频使用免费
提示
对于重复性测试,升级到 Playwright;将 web-eval-agent 用于探索

安全

权限、密钥、影响范围

凭据存储: operative.sh API 密钥在环境变量中;浏览器状态保存在本地
数据出站: 目标网站 + operative.sh 用于评估协调

故障排查

常见错误与修复

浏览器启动失败

安装 Playwright 依赖:npx playwright install-deps

会话不断过期

某些网站轮换 cookie;重新运行 setup_browser_state。或使用 Playwright 的 storageState 获得更细粒度的控制

智能体误解任务

要具体:URL、选择器或要查找的文本、预期结果

替代方案

web-eval-agent 对比其他方案

替代方案何时用它替代权衡
Playwright MCP你想要可脚本化、可重复的测试你需要编写代码
Browserbase MCP你需要为 CI 提供云托管浏览器按分钟付费

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills