Playwright MCP + Codex / Claude Code:让 AI 真正操作浏览器,而不是只会告诉你怎么点
· 8 min read
浏览器自动化最容易出现一种“看起来已经完成”的假象:AI 给你写了一段 Playwright 代码,命令也执行成功了,但它并没有真正看到页面、点击按钮、填写表单,更没有确认页面最后到底变成了什么样。
Playwright MCP 解决的正是这一步。它把浏览器变成 coding agent 可以调用的工具,让 Codex、Claude Code 等工具能够:
- 打开网页并读取真实页面结构;
- 点击、输入、选择、滚动和上传文件;
- 观察页面变化并根据结果继续执行;
- 截图、生成页面快照,辅助定位问题;
- 在浏览器中验证“功能真的能用”,而不是只验证代码能运行。
这篇文章记录一套比较稳妥的使用方式:先配置 Playwright MCP,再让 Codex 或 Claude Code 负责理解需求,最后由浏览器执行和验收。
一句话理解 Playwright MCP
Playwright MCP 是一个 MCP Server,负责把 Playwright 浏览器能力暴露给 AI 编程工具;Codex、Claude Code 负责决定下一步做什么。
可以把它理解为三层:
你的自然语言需求
↓
Codex / Claude Code:分析目标、选择工具、判断结果
↓
Playwright MCP:打开浏览器、查找元素、执行操作
↓
真实网页或本地 Web 应用
它和传统的“让大模型生成一段 Playwright 脚本”不完全一样:
- 传统脚本主要是一次性执行固定步骤;
- Playwright MCP 更像一个可交互的浏览器操作员;
- Agent 可以根据页面实际结果继续决策,而不是把所有步骤提前写死。
它适合解决什么问题?
1. 验证 AI 生成的 Web 应用
让 Agent 打开本地页面,完成登录、表单提交、列表筛选和页面跳转,确认前端功能真的能用。
2. 处理必须经过网页的工作
例如:
- 在内部平台创建配置;
- 上传文件并确认解析结果;
- 操作飞书、GitHub、工单系统等网页;
- 读取没有开放 API 的后台页面;
- 检查发布后的页面和交互状态。
3. 辅助排查前端问题
当用户说“按钮点了没反应”时,Agent 可以实际打开页面,查看控制台、网络请求、页面状态和错误提示,再回到代码中修改。
4. 做浏览器回归验证
在完成代码修改后,让 Agent 按真实用户路径走一遍:登录 → 创建数据 → 编辑 → 删除 → 刷新确认。
安装 Playwright MCP
最简单的启动方式是使用 npm:
npx @playwright/mcp@latest
如果希望固定版本,建议在团队项目中锁定版本,而不是每次都自动获取最新版本:
npx @playwright/mcp@0.0.69
版本号只是示例。实际使用时,以 Playwright MCP 官方仓库和团队验证过的版本为准。
常用启动参数
npx @playwright/mcp@latest \
--browser chrome \
--headless \
--output-dir .playwright-output \
--allowed-hosts localhost 127.0.0.1
Windows PowerShell 可以写成一行:
npx @playwright/mcp@latest --browser chrome --headless --output-dir .playwright-output --allowed-hosts localhost 127.0.0.1
