← 返回目录
M

MCP Browser Agent

社区
基于 Playwright 的浏览器自动化 MCP 服务器
GitHub 源仓库 ↗
★ 132 Stars 分类 · 浏览器自动化 热门
45FMRS · D
可靠性
8/20
安全与权限
3/20
维护活跃度
9/20
文档质量
13/20
安装易用性
12/20

一个基于 Playwright 的浏览器自动化 MCP 服务器分支,提供导航、截图、DOM 交互、JS 执行及 HTTP API 工具,附带可选 Redis 缓存/限流,但非官方维护且存在浏览器进程残留等已知问题。

查看 FMRS 评分方法 →

该服务器通过 Model Context Protocol 让 Claude 等客户端控制一个有界面(headful)的浏览器实例,支持导航、截图、DOM 交互和 JavaScript 执行,并附带一套 HTTP API 客户端工具。它维护跨多次调用的持久浏览器会话,并可将控制台日志和截图作为 MCP 资源暴露。仓库为 imprvhub/mcp-browser-agent 项目的一个分支(fork),并非官方或上游维护。

工具能力

browser_navigate
导航到指定 URL,可自定义超时和页面加载策略
browser_screenshot
捕获整页或指定元素的截图,支持遮罩和自定义保存路径
browser_click
点击页面上匹配选择器的元素
browser_fill
向表单输入框填写指定文本值
browser_select
在下拉菜单中选择指定选项
browser_hover
将鼠标悬停在匹配选择器的元素上
browser_evaluate
在浏览器上下文中执行任意 JavaScript 并捕获控制台输出
api_get
发送 GET 请求,支持自定义请求头,可选 Redis 缓存 60 秒
api_post
发送带请求体和请求头的 POST 请求
api_put
发送带请求体和请求头的 PUT 请求
api_patch
发送带请求体和请求头的 PATCH 请求
api_delete
发送带请求头的 DELETE 请求
health_check
报告可选 Redis 连接的健康状态

安装接入

1) 克隆仓库 git clone https://github.com/MoisesR7/browser-mcp 并进入目录;2) 运行 npm install 安装依赖(含 Playwright);3) 按需运行 npx playwright install <chrome|firefox|webkit|msedge> 安装浏览器驱动;4)(可选)运行 docker compose up -d redis 并复制 .env.example.env 以启用 Redis 缓存/限流;5) 运行 npm run build 构建项目;6) 手动执行 node dist/index.js 或在 Claude Desktop 的 claude_desktop_config.json 中添加配置以自动启动。

claude_desktop_config.json
{"mcpServers":{"browserAgent":{"command":"node","args":["ABSOLUTE_PATH_TO_DIRECTORY/mcp-browser-agent/dist/index.js","--browser","chrome"]}}}

选型与风险

适合谁

  • 需要 Claude 桌面端自动化浏览器任务的开发者
  • 需要截图、表单填写、下拉选择等 DOM 交互的测试场景
  • 希望在浏览器操作之外附带调用 REST API 的工作流

不适合谁

  • 需要无界面(headless)、大规模并发抓取的生产环境
  • 非 Node.js/Playwright 支持环境
  • 需要沙箱隔离或严格权限控制的敏感场景
  • 移动端或非浏览器自动化需求

所需权限

  • 启动并完全控制本地浏览器实例(Chrome/Firefox/Edge/WebKit)
  • 在浏览器上下文中执行任意 JavaScript
  • 发起任意 HTTP 请求(GET/POST/PUT/PATCH/DELETE)
  • 写入本地文件系统以保存截图
  • 可选连接 Redis 服务

风险与副作用

  • `browser_evaluate` 允许执行任意 JavaScript,若提示词不受信任可能被滥用
  • 持久化的浏览器会话可能暴露已登录账号的会话状态
  • API 工具可发起任意目标的 HTTP 请求,存在被用于探测内网地址的风险
  • 已知 Chrome/Chromium 浏览器进程有时无法正常退出,需手动终止

常见排障

  1. 若出现 “Server disconnected”,先手动运行 `node dist/index.js` 确认服务器能独立启动
  2. 检查 `claude_desktop_config.json` 中的绝对路径是否正确,Windows 路径需使用双反斜杠
  3. 确认所选浏览器类型已安装,必要时用 `npx playwright install <browser>` 安装驱动
  4. 若浏览器进程未正常关闭,在任务管理器/活动监视器/`ps aux | grep chrome` 中手动终止

使用场景

自动化网页表单填写与提交
为网页截图存档或调试
通过自然语言指令串联多步浏览器操作
结合浏览器操作与直接 HTTP API 调用完成任务

支持客户端

Claude Desktop完整支持