
Puppeteer MCP Server

2025.02.17
0
TypeScript浏览器自动化网页测试数据抓取浏览器自动化
Puppeteer MCP Server 是一个基于 Puppeteer 的浏览器自动化服务,提供与浏览器实例交互的能力,支持新建浏览器实例或连接现有 Chrome 窗口。该服务适用于需要自动化网页操作、数据抓取、测试等场景。
View on GitHub
Overview
基本能力
产品定位
Puppeteer MCP Server 是一个浏览器自动化服务,通过 Puppeteer 提供网页操作能力。
核心功能
- 导航网页
- 截图
- 点击元素
- 填写表单
- 选择选项
- 悬停元素
- 执行 JavaScript
- 智能 Chrome 标签管理:
- 连接活动 Chrome 标签
- 保留现有 Chrome 实例
- 智能连接处理
适用场景
- 网页自动化测试
- 数据抓取
- 网页截图
- 表单填写自动化
- 网页交互模拟
工具列表
- puppeteer_connect_active_tab:连接现有 Chrome 实例(需启用远程调试)
- 可选参数:
targetUrl
(目标标签页 URL)、debugPort
(调试端口,默认 9222) - puppeteer_navigate:导航到指定 URL
- 必需参数:
url
- puppeteer_screenshot:截图当前页面或指定元素
- 必需参数:
name
- 可选参数:
selector
(CSS 选择器)、width
(宽度)、height
(高度) - puppeteer_click:点击页面元素
- 必需参数:
selector
- puppeteer_fill:填写输入框
- 必需参数:
selector
、value
- puppeteer_select:选择下拉菜单选项
- 必需参数:
selector
、value
- puppeteer_hover:悬停元素
- 必需参数:
selector
- puppeteer_evaluate:在浏览器控制台执行 JavaScript
- 必需参数:
script
常见问题解答
- 如何连接现有 Chrome 窗口?
- 关闭所有现有 Chrome 实例
- 启用远程调试启动 Chrome(见安装教程)
- 导航到目标网页
-
使用
puppeteer_connect_active_tab
工具连接 -
安全注意事项
- 仅在受信任网络启用远程调试
- 使用唯一调试端口
- 不使用时关闭调试端口
- 不要将调试端口暴露在公共网络
使用教程
使用依赖
- 需要安装 Node.js 和 npm
- 需要安装 Chrome 浏览器
安装教程
- 克隆项目仓库
- 安装依赖:
bash npm install
- 启动服务:
bash npm start
调试方式
- 启用 Chrome 远程调试: ```bash # Windows "C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222
# macOS /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
# Linux
google-chrome --remote-debugging-port=9222
``
2. 查看日志文件(位于
logs/` 目录)
3. 使用工具时检查返回的错误信息