关于 Puppeteer
Puppeteer 是用于浏览器自动化的 MCP 服务,可让 LLM 客户端浏览网页、操作页面元素、运行 JavaScript 并截取屏幕。它还将浏览器控制台日志和截图作为资源提供。
主要功能
- 01访问网址并操作网页
- 02点击、悬停、填写和选择元素
- 03在浏览器中运行 JavaScript
- 04截取整页或元素截图
- 05读取控制台日志和截图
适用场景
- 01自动执行网页交互
- 02截取网页或元素的屏幕图像
- 03检查浏览器控制台输出
MCP 相关
它向 MCP 客户端提供浏览器自动化工具,以及控制台日志和截图资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Puppeteer
一个使用 Puppeteer 提供浏览器自动化功能的模型上下文协议服务。此服务可让大模型在真实浏览器环境中与网页交互、截取屏幕截图并执行 JavaScript。
组件
工具
-
puppeteer_navigate
- 在浏览器中导航到任意 URL
- 输入:
url(字符串)
-
puppeteer_screenshot
- 截取整个页面或特定元素的屏幕截图
- 输入:
name(字符串,必填):屏幕截图名称selector(字符串,可选):要截取屏幕截图的元素的 CSS 选择器width(数字,可选,默认值:800):屏幕截图宽度height(数字,可选,默认值:600):屏幕截图高度
-
puppeteer_click
- 点击页面上的元素
- 输入:
selector(字符串):要点击元素的 CSS 选择器
-
puppeteer_hover
- 将鼠标悬停在页面上的元素上
- 输入:
selector(字符串):要悬停元素的 CSS 选择器
-
puppeteer_fill
- 填写输入字段
- 输入:
selector(字符串):输入字段的 CSS 选择器value(字符串):要填入的值
-
puppeteer_select
- 选择带有 SELECT 标签的元素
- 输入:
selector(字符串):要选择元素的 CSS 选择器value(字符串):要选择的值
-
puppeteer_evaluate
- 在浏览器控制台中执行 JavaScript
- 输入:
script(字符串):要执行的 JavaScript 代码
资源
此服务提供两种类型的资源:
-
控制台日志(
console://logs)- 浏览器控制台输出的文本格式
- 包含浏览器的所有控制台消息
-
屏幕截图(
screenshot://<name>)- 已截取屏幕截图的 PNG 图片
- 可通过截取时指定的屏幕截图名称访问
主要功能
- 浏览器自动化
- 控制台日志监控
- 屏幕截图功能
- JavaScript 执行
- 基本网页交互(导航、点击、填写表单)
Puppeteer 服务的配置
以下是使用 Puppeter 服务的 Claude Desktop 配置:
Docker
注意 Docker 实现将使用无头 Chromium,而 NPX 版本会打开浏览器窗口。
{
"mcpServers": {
"puppeteer": {
"command": "docker",
"args": ["run", "-i", "--rm", "--init", "-e", "DOCKER_CONTAINER=true", "mcp/puppeteer"]
}
}
}
NPX
{
"mcpServers": {
"puppeteer": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]
}
}
}
构建
Docker 构建:
docker build -t mcp/puppeteer -f src/puppeteer/Dockerfile .
许可证
此 MCP 服务采用 MIT 许可证。这意味着你可以自由使用、修改和分发此软件,但须遵守 MIT 许可证的条款和条件。有关详情,请参阅项目代码库中的 LICENSE 文件。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。