Puppeteer MCP Server

Puppeteer MCP Server

site icon
2025.02.17 0
TypeScript浏览器自动化网页测试数据抓取浏览器自动化
Puppeteer MCP Server 是一个基于 Puppeteer 的浏览器自动化服务,提供与浏览器实例交互的能力,支持新建浏览器实例或连接现有 Chrome 窗口。该服务适用于需要自动化网页操作、数据抓取、测试等场景。
View on GitHub

Overview

基本能力

产品定位

Puppeteer MCP Server 是一个浏览器自动化服务,通过 Puppeteer 提供网页操作能力。

核心功能

  • 导航网页
  • 截图
  • 点击元素
  • 填写表单
  • 选择选项
  • 悬停元素
  • 执行 JavaScript
  • 智能 Chrome 标签管理:
  • 连接活动 Chrome 标签
  • 保留现有 Chrome 实例
  • 智能连接处理

适用场景

  • 网页自动化测试
  • 数据抓取
  • 网页截图
  • 表单填写自动化
  • 网页交互模拟

工具列表

  1. puppeteer_connect_active_tab:连接现有 Chrome 实例(需启用远程调试)
  2. 可选参数:targetUrl(目标标签页 URL)、debugPort(调试端口,默认 9222)
  3. puppeteer_navigate:导航到指定 URL
  4. 必需参数:url
  5. puppeteer_screenshot:截图当前页面或指定元素
  6. 必需参数:name
  7. 可选参数:selector(CSS 选择器)、width(宽度)、height(高度)
  8. puppeteer_click:点击页面元素
  9. 必需参数:selector
  10. puppeteer_fill:填写输入框
  11. 必需参数:selectorvalue
  12. puppeteer_select:选择下拉菜单选项
  13. 必需参数:selectorvalue
  14. puppeteer_hover:悬停元素
  15. 必需参数:selector
  16. puppeteer_evaluate:在浏览器控制台执行 JavaScript
  17. 必需参数:script

常见问题解答

  • 如何连接现有 Chrome 窗口?
  • 关闭所有现有 Chrome 实例
  • 启用远程调试启动 Chrome(见安装教程)
  • 导航到目标网页
  • 使用 puppeteer_connect_active_tab 工具连接

  • 安全注意事项

  • 仅在受信任网络启用远程调试
  • 使用唯一调试端口
  • 不使用时关闭调试端口
  • 不要将调试端口暴露在公共网络

使用教程

使用依赖

  • 需要安装 Node.js 和 npm
  • 需要安装 Chrome 浏览器

安装教程

  1. 克隆项目仓库
  2. 安装依赖: bash npm install
  3. 启动服务: bash npm start

调试方式

  1. 启用 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. 使用工具时检查返回的错误信息

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。