Microsoft Playwright MCP 是一个基于模型上下文协议(Model Context Protocol, MCP)的服务器,它利用 Playwright 为大语言模型(LLM)提供强大的浏览器自动化能力。该项目的核心创新在于通过结构化的可访问性快照与网页进行交互,完全绕过了传统的截图或视觉调优模型的需求。
这个项目代表了AI代理与Web交互的一种全新范式,让LLM能够以更高效、更精确的方式操作浏览器,执行复杂的网页自动化任务。
网页导航和表单填写
结构化内容数据提取
LLM驱动的自动化测试
代理的通用浏览器交互
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest"
]
}
}
}
# VS Code
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
# VS Code Insiders
code-insiders --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'
标准的带界面浏览器模式,适合开发和调试:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest"]
}
}
}
适合后台或批处理操作:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--headless"
]
}
}
}
用于无显示系统或IDE工作进程:
npx @playwright/mcp@latest --port 8931
配置文件:
{
"mcpServers": {
"playwright": {
"url": "http://localhost:8931/sse"
}
}
}
启用视觉模式:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": [
"@playwright/mcp@latest",
"--vision"
]
}
}
}
browser_click
- 执行点击操作browser_hover
- 悬停元素browser_drag
- 拖拽操作browser_type
- 文本输入browser_select_option
- 下拉选择browser_navigate
- 导航到URLbrowser_navigate_back
- 后退browser_navigate_forward
- 前进browser_tab_list
- 列出所有标签页browser_tab_new
- 新建标签页browser_tab_select
- 选择标签页browser_tab_close
- 关闭标签页browser_snapshot
- 可访问性快照(推荐)browser_take_screenshot
- 页面截图browser_screen_capture
- 屏幕捕获browser_file_upload
- 文件上传browser_pdf_save
- 保存为PDFbrowser_press_key
- 按键操作browser_handle_dialog
- 处理浏览器对话框browser_resize
- 调整窗口大小browser_wait
- 等待指定时间browser_screen_move_mouse
- 鼠标移动browser_screen_click
- 坐标点击browser_screen_drag
- 屏幕拖拽browser_screen_type
- 屏幕输入browser_console_messages
- 获取控制台消息browser_install
- 安装浏览器Playwright MCP 会在以下位置创建浏览器配置文件:
%USERPROFILE%\AppData\Local\ms-playwright\mcp-chrome-profile
~/Library/Caches/ms-playwright/mcp-chrome-profile
~/.cache/ms-playwright/mcp-chrome-profile
所有登录信息都将存储在该配置文件中,您可以在会话之间删除它以清除离线状态。
对于需要编程集成的场景,可以使用以下方式:
import { createServer } from '@playwright/mcp';
const server = createServer({
launchOptions: { headless: true }
});
transport = new SSEServerTransport("/messages", res);
server.connect(transport);
Microsoft Playwright MCP 项目是AI代理浏览器自动化领域的重要创新,它通过以下几个关键优势重新定义了LLM与Web的交互方式:
结构化交互范式:摒弃传统的截图+视觉识别方式,采用可访问性树结构,提供更精确、更高效的交互体验
LLM原生设计:专为大语言模型优化,无需额外的视觉处理能力,降低了系统复杂度和资源消耗
Microsoft官方支持:作为Microsoft官方项目,提供了企业级的可靠性和持续维护保障
该项目代表了AI与Web交互的未来发展方向,随着MCP生态的不断完善,预计将在以下领域发挥重要作用:
Microsoft Playwright MCP 不仅是一个技术工具,更是AI代理能力边界拓展的重要里程碑,为构建更智能、更实用的AI应用提供了坚实的技术基础。