Expect MCP服务器配置指南:8大浏览器测试工具接入Claude Code、Cursor和Codex
【免费下载链接】expectExpect tests your agent's code in a real browser项目地址: https://gitcode.com/gh_mirrors/expect6/expect
Expect是一款让 AI 编程助手在真实浏览器中测试代码的开源工具,其MCP 服务器内置 8 大浏览器测试工具,可一键接入Claude Code、Cursor和Codex等主流 AI 客户端。只需一条配置命令,你的 AI Agent 就能打开网页、点击表单、抓取控制台日志、审计无障碍性并测量性能指标,自动发现代码中的 Bug 并协助修复。
一、什么是Expect MCP服务器?
MCP(Model Context Protocol)是 AI 助手与外部工具之间的标准协议。Expect 的 MCP 服务器以stdio 传输方式运行,通过 npm 包expect-cli启动,基于 Playwright 驱动真实浏览器(Chromium、WebKit、Firefox 三种引擎均可),而不是靠截图和鼠标坐标模拟操作。
它和传统自动化工具的核心区别在于:
- 🎯无需写测试脚本:Agent 直接调用工具完成"打开→操作→观察→断言"的完整闭环
- 🍪可复用本地 Cookie:
open工具支持cookies=true,以真实登录用户身份测试 - 📹全程留痕:会话结束后自动导出录屏视频和截图到
/tmp/expect-artifacts
MCP 服务器的完整客户端配置示例见官方文档:docs/mcp.md,工具注册源码在 packages/browser/src/mcp/server.ts。
二、8大浏览器测试工具一览
| 工具 | 用途 |
|---|---|
| open | 打开 URL,支持有头模式、Cookie 同步、CDP 连接、跨浏览器引擎 |
| playwright | 在 Node.js 上下文执行 Playwright 代码,return收集数据 |
| screenshot | 三种模式:PNG 截图 / ARIA 无障碍树(带元素 ref)/ 带编号标注的截图 |
| console_logs | 读取控制台日志,可按error、warning等类型过滤 |
| network_requests | 抓取网络请求,自动标记 4xx/5xx 失败、重复请求、混合内容 |
| performance_metrics | 采集核心 Web 指标(FCP、LCP、CLS、INP)、TTFB 和长动画帧 |
| accessibility_audit | 用 axe-core + IBM Equal Access 双引擎跑 WCAG 无障碍审计 |
| close | 关闭浏览器,冲刷会话视频与截图到磁盘 |
推荐工作流:open打开页面 →screenshot(snapshot 模式)获取带 ref 的无障碍树 →playwright用ref('eN')定位元素并操作 →console_logs/network_requests观察异常 →accessibility_audit和performance_metrics做质量审计 → 最后close收尾。
三、一键安装步骤(自动配置)
如果你已经通过expect-cli的 init 流程初始化过项目,MCP 配置会自动写入各客户端。安装器 apps/cli/src/mcp/install-expect-mcp.ts 会为每个客户端写入正确的配置路径:
| 客户端 | 全局配置位置 | 项目级配置位置 |
|---|---|---|
| Claude Code | ~/.claude.json | .mcp.json |
| Codex | ~/.codex/config.toml | .codex/config.toml |
| Cursor | ~/.cursor/mcp.json | .cursor/mcp.json |
| Copilot | ~/.copilot/mcp-config.json | .vscode/mcp.json |
| Gemini CLI | ~/.gemini/settings.json | .gemini/settings.json |
| OpenCode | ~/.config/opencode/opencode.json | opencode.json |
支持全局(所有项目生效)和项目级两种作用域,可多选客户端批量写入。
四、手动配置方法(各客户端最快写法)
1. Claude Code 一键命令
claude mcp add --scope user expect -- npx -y expect-cli@latest mcp2. Cursor / Windsurf / Roo Code(JSON 配置)
将以下内容粘贴到~/.cursor/mcp.json(或项目下.cursor/mcp.json):
{ "mcpServers": { "expect": { "command": "npx", "args": ["-y", "expect-cli@latest", "mcp"] } } }Cursor 用户也可以走图形界面:Settings→Cursor Settings→MCP→Add new global MCP server。
3. OpenAI Codex(TOML 配置)
[mcp_servers.expect] command = "npx" args = ["-y", "expect-cli@latest", "mcp"] startup_timeout_sec = 204. 其他客户端
VS Code、Claude Desktop、Opencode、Gemini CLI、JetBrains AI Assistant、Copilot CLI 等 20+ 客户端的配置写法全部收录在 docs/mcp.md,格式大同小异,核心都是npx -y expect-cli@latest mcp这一条启动命令。
五、验证配置与进阶技巧
✅ 快速验证:在 Agent 中让它"用 expect 打开本地开发页面,截图并报告控制台错误"。若浏览器窗口弹出且返回 ARIA 快照,说明 MCP 已生效。
🔧 常用进阶参数(open工具支持):
headed=true— 显示浏览器窗口,方便观察cookies=true— 同步本地浏览器登录态browser="webkit"/"firefox"— 跨引擎测试cdp="ws://localhost:9222/..."— 连接已运行的 Chrome 实例
⚠️ 常见问题
- 启动慢/超时:首次运行会下载
expect-cli依赖,Codex 中建议保留startup_timeout_sec = 20 - 多个浏览器会话:同一时间只维护一个会话,跨浏览器测试需先
close再以其他引擎open - 结果文件:
playwright工具return的值会写入/tmp/expect-artifacts/playwright-results/,可供后续步骤读取
配置完成后,你的 AI Agent 就具备了"动手验证代码"的能力——写完功能先跑一遍真实浏览器测试,Bug 在提交前就被发现。🚀
【免费下载链接】expectExpect tests your agent's code in a real browser项目地址: https://gitcode.com/gh_mirrors/expect6/expect
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考