Puppeteer浏览器自动化工具
一个模型上下文协议服务器,使用 Puppeteer 提供浏览器自动化功能,使大型语言模型能够与网页交互、截屏以及在真实的浏览器环境中执行 JavaScript。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"puppeteer": {
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
],
"command": "npx"
}
}
}
该服务需要配置环境变量:DOCKER_CONTAINER
服务介绍
Puppeteer
一个使用Puppeteer提供浏览器自动化功能的模型上下文协议服务器。此服务器使LLM能够与网页交互、截取屏幕截图并在真实浏览器环境中执行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文件。