Playwriter Browser
БесплатноНе проверенAn MCP server that enables AI agents to control a real Chrome browser with full login state through 37 structured automation tools, connecting via the Playwrite
Описание
An MCP server that enables AI agents to control a real Chrome browser with full login state through 37 structured automation tools, connecting via the Playwriter extension without needing a remote debugging port.
README
一个独立的 MCP (Model Context Protocol) 服务,通过 Playwriter Chrome 扩展连接用户的真实浏览器,提供 37 个结构化浏览器自动化工具。
对于任意 Agent 来说,只需添加一个 MCP 配置,就能操控用户真实的 Chrome 浏览器(带完整登录态)—— 无需 --remote-debugging-port,不受 Chrome 136+ 安全限制。
为什么需要这个项目
| 方案 | 能用真实 Profile | 结构化工具 | 不需要调试端口 |
|---|---|---|---|
Playwright MCP (@playwright/mcp) |
❌ | ✅ 38 个工具 | ❌ |
| Playwriter | ✅ | ❌ 仅 1 个 execute |
✅ |
| Browser MCP (本项目) | ✅ | ✅ 37 个工具 | ✅ |
Browser MCP = Playwriter 的连接方式 + Playwright MCP 的工具生态。
架构
AI Agent (Claude Code / VisionClaw / ...)
│ MCP Protocol (HTTP / SSE)
▼
┌──────────────────────────────────┐
│ Browser MCP Server (port 3280) │
│ │
│ 37 个结构化工具: │
│ ├── browser_navigate │
│ ├── browser_snapshot │
│ ├── browser_click │
│ ├── browser_type │
│ ├── browser_take_screenshot │
│ ├── ... (共 37 个) │
│ │
│ 连接层: │
│ Playwriter API → connectOverCDP │
└──────────────┬───────────────────┘
│ WebSocket
▼
┌──────────────────────────────────┐
│ Playwriter Relay (port 19988) │
│ (已有的 relay 或自动启动) │
└──────────────┬───────────────────┘
│ chrome.debugger API
▼
┌──────────────────────────────────┐
│ Chrome 浏览器 (用户真实 Profile) │
│ ├── 已登录的网站 │
│ ├── Cookies / Sessions │
│ └── Playwriter 扩展 (已安装) │
└──────────────────────────────────┘
快速开始
前置条件
- Chrome 浏览器 — 安装 Playwriter 扩展
- Node.js >= 18
- Playwriter CLI —
npm install -g playwriter
启动
# 1. 安装依赖
npm install
# 2. 配置环境变量(可选)
cp .env.example .env
# 3. 启动
npm run dev
服务启动后,MCP 端点在 http://localhost:3280/mcp。
多 Profile 场景
如果 Chrome 登录了多个 Google 账号,需要指定连接哪个:
# 查看可用的 Profile
playwriter browser list
# 指定 Profile 启动
PLAYWRITER_EXTENSION_ID="profile:104623951740642372686" npm run dev
MCP 工具列表 (37 个)
导航
| 工具 | 说明 |
|---|---|
browser_navigate |
导航到 URL,返回页面快照 |
browser_navigate_back |
返回上一页 |
快照与截图
| 工具 | 说明 |
|---|---|
browser_snapshot |
获取页面 accessibility tree(带 [ref] 标记,用于后续交互) |
browser_take_screenshot |
截图(支持 png/jpeg、全页、指定元素) |
输入操作
| 工具 | 说明 |
|---|---|
browser_click |
点击元素(通过 ref 定位) |
browser_type |
向元素输入文本 |
browser_press_key |
按下键盘按键(Enter、Tab、Escape 等) |
browser_hover |
鼠标悬停在元素上 |
browser_drag |
拖拽元素到目标 |
browser_select_option |
在下拉框中选择选项 |
browser_fill_form |
批量填写表单(文本框、复选框、单选按钮) |
页面管理
| 工具 | 说明 |
|---|---|
browser_tabs |
标签页管理(list / new / close / select) |
browser_close |
关闭当前页面 |
browser_wait_for |
等待文本出现/消失或指定时间 |
browser_resize |
调整浏览器窗口大小 |
代码执行
| 工具 | 说明 |
|---|---|
browser_evaluate |
在页面中执行 JavaScript |
browser_run_code |
运行 Playwright 代码片段 |
观测
| 工具 | 说明 |
|---|---|
browser_console_messages |
获取控制台日志 |
browser_network_requests |
获取网络请求列表 |
文件与对话框
| 工具 | 说明 |
|---|---|
browser_file_upload |
上传文件到 file input |
browser_handle_dialog |
处理 alert/confirm/prompt 弹窗 |
Vision(坐标操作)
| 工具 | 说明 |
|---|---|
browser_mouse_move_xy |
移动鼠标到坐标 |
browser_mouse_click_xy |
在坐标处点击 |
browser_mouse_drag_xy |
从坐标 A 拖拽到坐标 B |
browser_mouse_down |
按下鼠标按键 |
browser_mouse_up |
释放鼠标按键 |
browser_mouse_wheel |
滚动鼠标滚轮 |
测试验证
| 工具 | 说明 |
|---|---|
browser_generate_locator |
生成 Playwright locator(用于编写测试) |
browser_verify_text_visible |
验证文本在页面上可见 |
browser_verify_element_visible |
验证元素可见 |
browser_verify_list_visible |
验证列表包含指定项 |
browser_verify_value |
验证元素的值 |
PDF 与追踪
| 工具 | 说明 |
|---|---|
browser_pdf_save |
将页面保存为 PDF |
browser_start_tracing |
开始录制 Playwright trace |
browser_stop_tracing |
停止录制并保存 trace 文件 |
其他
| 工具 | 说明 |
|---|---|
browser_install |
安装 Chromium 浏览器二进制文件 |
browser_session |
诊断工具:检查连接状态(无需主动调用,连接是自动的) |
接入方式
作为 HTTP MCP Server
{
"mcpServers": {
"browser": {
"type": "http",
"url": "http://localhost:3280/mcp"
}
}
}
接入 VisionClaw
在 VisionClaw 的 mcp-servers.json 中添加上述配置即可。Agent 无需任何额外操作,直接调用 browser_navigate 等工具,连接会自动建立。
工作流程示例
AI 使用这套工具的典型流程:
1. browser_navigate({ url: "https://x.com" })
→ 自动连接浏览器,导航到 X,返回页面快照
2. browser_snapshot()
→ 获取 accessibility tree,包含 [ref] 标记
3. browser_click({ ref: "compose-btn" })
→ 点击发帖按钮
4. browser_type({ ref: "tweet-input", text: "Hello World!" })
→ 输入帖子内容
5. browser_click({ ref: "post-btn" })
→ 发布
无需手动连接、创建 session、选择 tab —— 一切自动完成。
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
MCP_PORT |
3280 |
MCP HTTP 服务端口 |
PLAYWRITER_RELAY_PORT |
19988 |
Playwriter WebSocket relay 端口 |
PLAYWRITER_RELAY_HOST |
127.0.0.1 |
Relay 地址 |
PLAYWRITER_EXTENSION_ID |
(自动检测) | 多 Profile 时指定连接哪个扩展 |
OUTPUT_DIR |
./output |
截图、PDF、trace 文件输出目录 |
技术原理
传统方案需要 --remote-debugging-port 来让程序操控浏览器,但 Chrome 136+ 禁止在默认 Profile 上使用该参数。
本项目利用 Playwriter 的 Chrome 扩展,通过 chrome.debugger API 从浏览器内部获取 CDP 访问权限,再通过 WebSocket relay 转发给 Playwright。这样:
- ✅ 不需要
--remote-debugging-port - ✅ 可以使用用户的真实 Chrome Profile(带登录态)
- ✅ 暴露 37 个结构化 MCP 工具(与 Playwright MCP 对齐)
- ✅ 连接自动建立,无需手动操作
开发
npm install # 安装依赖
npm run dev # 开发模式启动
npm run build # 编译 TypeScript
npm run lint # 类型检查
npm test # 运行测试
Установка Playwriter Browser
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/babelcloud/playwriter-browser-mcpFAQ
Playwriter Browser MCP бесплатный?
Да, Playwriter Browser MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Playwriter Browser?
Нет, Playwriter Browser работает без API-ключей и переменных окружения.
Playwriter Browser — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Playwriter Browser в Claude Desktop, Claude Code или Cursor?
Открой Playwriter Browser на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Playwright
Browser automation, scraping, screenshots
автор: MicrosoftPuppeteer
Browser automation and web scraping.
автор: modelcontextprotocolopentabs-dev/opentabs
Plugin-based MCP server + Chrome extension that gives AI agents access to web applications through the user's authenticated browser session. 100+ plugins with a
автор: opentabs-devrobhunter/agentdeals
1,500+ developer infrastructure deals, free tiers, and startup programs across 54 categories. Search deals, compare vendors, plan stacks, and track pricing chan
автор: robhunterCompare Playwriter Browser with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории browse
