AI个人学习
和实操指南
豆包Marscode1

Playwright MCP:微软推出的浏览器自动化MCP服务

综合介绍

Playwright MCP 是微软开发的一款开源工具,托管在 GitHub 上。它通过 Model Context Protocol(MCP)协议,让人工智能模型能直接控制浏览器,完成打开网页、点击元素、输入文字等操作。这个工具基于 Playwright 框架,支持 Chromium、Firefox 和 WebKit 等浏览器。它的核心特点是快速、轻量,能生成结构化数据,不需要依赖截图或视觉模型。Playwright MCP 特别适合需要网页交互的 AI 应用,比如自动化测试或数据提取。官方文档更新至 2025 年 3 月,项目活跃,受到开发者欢迎。

同名项目:MCP Playwright:提供浏览器自动化操作的MCP服务


Playwright MCP:微软推出的浏览器自动化MCP服务-1

 

功能列表

  • 支持浏览器控制:能打开网页、导航页面、点击元素等。
  • 生成结构化数据:通过可访问性快照输出数据,无需截图。
  • 提供两种模式:默认的快照模式(Snapshot Mode)和视觉模式(Vision Mode)。
  • 截图与保存:能截取页面或保存为 PDF 文件。
  • 输入与操作:支持输入文字、按键、拖拽等功能。
  • 兼容无头模式:可在后台运行浏览器,不显示界面。

 

使用帮助

Playwright MCP 的安装和使用很简单。下面详细介绍如何安装和操作这个工具,包括两种模式的具体功能。

安装流程

  1. 准备环境
    先安装 Node.js(建议用最新 LTS 版,如 v22)。检查版本用:
node -v

如果没有,访问 Node.js 官网 下载安装。

  1. 安装 Playwright MCP
    在终端运行以下命令:
npm install -g @playwright/mcp

或者直接用最新版:

npx @playwright/mcp@latest
  1. 启动服务器
    输入命令启动:
npx @playwright/mcp@latest

默认是有头模式(显示浏览器窗口)。想用无头模式,加参数:

npx @playwright/mcp@latest --headless
  1. 配置 AI 客户端
    如果你的 AI 工具支持 MCP(比如某些大模型客户端),需要编辑配置文件。例如:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest", "--headless"]
}
}
}

保存后,AI 就能通过 MCP 调用浏览器。

  1. 无显示器环境配置
    在 Linux 无显示器环境下,可以用客户端-服务器模式。先在一台有显示器的机器上运行:
npx playwright run-server

输出会显示一个 WebSocket 地址,比如 ws://localhost:port/。然后在 MCP 配置中添加:

{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"],
"env": {
"PLAYWRIGHT_WS_ENDPOINT": "ws://localhost:port/"
}
}
}
}

如何使用主要功能

Playwright MCP 有两种模式:快照模式和视觉模式。下面分别介绍。

快照模式(默认)

这种模式用可访问性快照操作,速度快且稳定。常用工具如下:

  1. 打开网页
  • 指令:browser_navigate "https://example.com"
  • 操作:浏览器打开指定网址。
  • 输出:返回页面加载状态。
  1. 点击元素
  • 指令:browser_click "登录按钮" "ref123"
  • 操作:点击快照中标记为 ref123 的元素(需提供元素描述和引用)。
  • 注意:引用来自快照数据。
  1. 输入文字
  • 指令:browser_type "用户名输入框" "ref456" "myuser" true
  • 操作:在 ref456 的输入框中输入 "myuser",然后按 Enter(true 表示提交)。
  1. 保存为 PDF
  • 指令:browser_save_as_pdf
  • 操作:将当前页面保存为 PDF 文件。
  1. 等待时间
  • 指令:browser_wait 5
  • 操作:等待 5 秒(最多 10 秒)。

视觉模式

启动时加 --vision 参数:

npx @playwright/mcp@latest --vision

这种模式用截图和坐标操作,适合视觉模型。常用工具:

  1. 截取页面
    • 指令:browser_screenshot
    • 操作:生成当前页面截图。
  2. 点击坐标
    • 指令:browser_click 100 200
    • 操作:在坐标 (100, 200) 点击。
  3. 拖拽操作
    • 指令:browser_drag 50 50 150 150
    • 操作:从 (50, 50) 拖到 (150, 150)。
  4. 输入文字
    • 指令:browser_type "hello" true
    • 操作:输入 "hello" 并按 Enter。

操作流程示例

假设你要登录网站:

  1. 启动服务器:
npx @playwright/mcp@latest --headless
  1. 打开登录页面:
  • 指令:browser_navigate "https://example.com/login"
  1. 输入用户名和密码(快照模式):
  • 指令:browser_type "用户名" "ref1" "myuser" false
  • 指令:browser_type "密码" "ref2" "mypassword" true
  1. 点击登录(视觉模式):
  • 切换模式:重启服务器加 --vision
  • 指令:browser_click 300 400
  1. 检查结果:
  • 指令:browser_snapshot(快照模式)或 browser_screenshot(视觉模式)。

注意事项

  • 快照模式比视觉模式更可靠,但需要元素引用。
  • 视觉模式适合带坐标的 AI 模型。
  • 无头模式适合批量任务,有头模式便于调试。

 

应用场景

  1. 网页导航与表单填写
    AI 能自动打开网页,填表并提交,适合批量注册或登录测试。
  2. 数据提取
    从动态网页抓取结构化数据,比如价格或评论。
  3. 自动化测试
    检查网页功能是否正常,比如按钮点击或页面跳转。
  4. 智能代理交互
    让 AI 操作浏览器完成复杂任务,如在线购物。

 

QA

  1. 快照模式和视觉模式有什么区别?
    快照模式用结构化数据操作,速度快且稳定;视觉模式用截图和坐标,适合视觉 AI。
  2. 支持哪些浏览器?
    支持 Chromium、Firefox 和 WebKit。
  3. 需要写代码吗?
    不需要。只要发送简单指令,AI 就能操作。
未经允许不得转载:首席AI分享圈 » Playwright MCP:微软推出的浏览器自动化MCP服务
zh_CN简体中文