← 返回目录
M

MCP Browser Agent

社区
基于 Playwright 的浏览器自动化 MCP 服务器
分类
浏览器自动化 第 24 / 32
Stars
★ 132 热门
传输方式
stdio(本地进程)
运行环境
Node.js 16+ · Docker
凭据
无需凭据
许可证
MPL-2.0
最近提交
工具数
13
45FMRS · D

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

最强项 · 文档质量 13/20 最弱项 · 安全与权限 3/20

可靠性
8/20
安全与权限
3/20
维护活跃度
9/20
文档质量
13/20
安装易用性
12/20
查看各项评分依据
可靠性 8/20
README 描述了四个核心模块(index.ts、tools.ts、handlers.ts、executor.ts)并声称有测试套件(npm test/coverage),但本次审查未提供实际源码文件、manifest(标注为“未缓存”)或 CI 工作流证据,无法核实工具声明与真实行为是否一致,也无法验证测试是否覆盖关键路径。根据静态校准规则,缺乏可验证的执行证据,reliability 不能超过 12。仅凭 README 描述的“happy path”尚属可信,但错误处理、依赖控制(Playwright/浏览器驱动安装是否可靠)均缺乏可复核证据,故评为 8 分。
安全与权限 3/20
该服务器暴露了 browser_evaluate(在浏览器上下文中执行任意 JavaScript)、browser_navigate(导航到任意 URL)以及 api_get/post/put/patch/delete(对任意主机发起任意 HTTP 请求,包括写操作),README 中未提及任何域名白名单、权限范围限制或危险操作前的确认机制,构成未缓解的“远程指令默认执行且无确认”风险,触及红线条款。此外,README 中的徽章、演示视频、Trust Score 与 Smithery 链接均指向仓库 “imprvhub/mcp-browser-agent”,而当前审查对象为 “MoisesR7/browser-mcp”,两者身份不一致,无法确认维护者身份的真实性与来源,进一步加剧安全评估的不确定性。综合判断评为 3 分(红线区间)。
维护活跃度 9/20
许可证为 MPL-2.0,且引用了 SECURITY.md 作为安全响应渠道,这是积极信号。但本次审查未提供提交历史、发布记录、依赖更新频率或 issue 响应速度的证据;star 数与 open issues=0 仅作为发现信号,不计入评分。仓库名称与 README 中反复出现的另一项目身份(imprvhub)不一致,也削弱了对当前维护主体持续性的信心。综合评为 9 分。
文档质量 13/20
README 结构完整,包含安装、构建、运行、Claude Desktop 配置示例、浏览器选择方式、工具参数表格、资源访问说明、示例用法及故障排查章节,文档层次较为丰富。但存在关键问题:文档中的徽章/链接/演示视频均指向不同的仓库归属(imprvhub/mcp-browser-agent),与当前审查对象(MoisesR7/browser-mcp)不符,说明文档未针对当前仓库妥善核实或改编,可信度打折扣;同时缺乏关于费用、速率限制(除可选 Redis 限流)、数据留存与安全边界的清晰披露(安全细节被推给未提供内容的 SECURITY.md)。评为 13 分。
安装易用性 12/20
安装步骤清晰(clone、npm install、npm run build、配置 claude_desktop_config.json 绝对路径、可选浏览器驱动安装),并给出多平台配置示例。但根据静态校准规则,若无可验证的 CI 工作流和覆盖关键路径的测试证据,setup 不得超过 15 分;本次审查未获得此类证据。此外该流程仍属多步骤手动配置(编辑 JSON、绝对路径、按需安装浏览器驱动),存在一定脆弱性。评为 12 分。

静态评测 · 未实际运行收录于 2026-08-26

查看 FMRS 评分方法 →

选型与风险

能访问什么访问网络控制浏览器

适合谁

  • 需要 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 浏览器进程有时无法正常退出,需手动终止

安装接入

准备工作

运行环境:Node.js 16+ · Docker

其他可选配置项(2 个)
MCP_BROWSER_TYPE 可选 可选,指定启动的浏览器类型(chrome/firefox/webkit/edge),默认 chrome,也可用 --browser 参数或配置文件设置。
REDIS_URL 可选 可选,Redis 连接地址;设置后为 api_get 启用 60 秒缓存并按主机限流 API 工具,可运行 docker compose up -d 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 Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

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

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add browserAgent -- node ABSOLUTE_PATH_TO_DIRECTORY/mcp-browser-agent/dist/index.js --browser chrome

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

在 Claude Desktop 的工具列表中应出现 browser_navigate、api_get、health_check 等工具;可让它导航到 https://example.com 并截图来确认浏览器连接正常。

常见排障

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

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 导航到 https://www.wikipedia.org 并搜索 Model Context Protocol
  • 截取当前页面的整页截图,命名为 google-homepage
  • 前往 https://the-internet.herokuapp.com/login,填写用户名和密码字段并点击登录按钮
  • 向 https://placeholder.typicode.com/posts 发送一个 POST 请求,数据为 {"title":"hello","body":"world","userId":1}

工具能力 13

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

使用场景

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

支持客户端

Claude Desktop

依据项目文档列出,未经本站实测。

详细介绍

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

同类可选方案

数据同步于 2026-08-07 查看 FMRS 评分方法