MCP

Puppeteer MCP:在本机浏览器打开页面并查看控制台

适合要在本机真实浏览器里导航页面、读控制台或留截图的人;该服务能访问本地文件和内网地址,且证据完整点名的工具只有导航。

官方来源 · modelcontextprotocol/server-puppeteer

安装

npx -y @modelcontextprotocol/server-puppeteer

适合谁

适合需要让模型在本机真实浏览器里打开网页、看控制台或留下截图的人。证据写明:这是用 Puppeteer 做浏览器自动化的 MCP 服务器,模型可以与页面交互、截图,并在真实浏览器环境里执行 JavaScript。

它跑在你的机器上,因此也能碰到本地文件和本地/内网 IP。只有在你接受这条隐私边界、并且能看住敏感数据时,才应接入。证据没有列出客户端名单,只覆盖到:你已有可配置 MCP 的客户端,并能运行 npx。

官方页面位于 servers-archived 目录树。证据没有另写维护状态或替代实现,因此不要把它当成一定仍在更新的现行产品。

3 分钟完成第一次尝试

走证据给出的 NPX 路径,在客户端 MCP 配置里使用:

"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]

不要同时把 Docker 当主路径。证据只补充:Docker 会用无头 Chromium,NPX 会弹出浏览器窗口。

前置条件:本机装有 Node/npx;第一次只打开你有权访问、且不会提交表单或登录的公开页。启动后会在本机跑浏览器,可能访问本地文件与内网地址。

配置位置:客户端的 MCP 服务器配置(stdio 命令与参数)。保存后重启或重载客户端。

低风险第一次调用:只调用证据完整写出的 puppeteer_navigate,导航到上一句所说的 URL。证据没有给出该工具的参数字段;collect 摘要还提到 screenshot、click、hover、fill、select、evaluate,但对应 locator 没有展开,第一次不要调用它们。

成功信号:NPX 路径下应看到本机浏览器窗口打开,并停留在你给出的地址。随后可读取资源 console://logs(文本控制台输出)或 screenshot://<name>(PNG)。若窗口没出现,先确认你走的是 NPX 而不是 Docker。

使用案例

案例 1:让模型打开一个指定公开页。调用 puppeteer_navigate。证据只保证「在浏览器中导航到任意 URL」,没有写超时、重定向或是否带上本机 cookie。因此能确认的是:导航发生在本机真实浏览器里;不要假设这是隔离的云会话。

案例 2:打开页面后核对控制台或留下截图。第一条证据写明可以截图并执行 JavaScript;资源证据给出 console://logs(包含浏览器全部控制台消息)和 screenshot://<name>(已捕获截图的 PNG)。证据没有写截图工具名、<name> 如何生成,也没有写出 evaluate 的参数。因此第二次只读这些资源,或停在「证据只保证能截图/执行 JS」这一层,不要编造选择器或脚本。

使用边界

本机浏览器可以访问本地文件和本地/内网 IP,可能带出敏感数据。NPX 会打开可见窗口,Docker 则是无头 Chromium,两者行为不同,不要混用后再用窗口当成功信号。证据完整点名的工具只有 puppeteer_navigate;交互类能力(点击、填写)没有带参数的 locator,执行它们有页面副作用。资源仅列出控制台与截图,没有撤销、清理 cookie 或关闭浏览器的步骤。证据没有写客户端名单、权限模型或归档后的替代包。