Puppeteer MCP Server

Puppeteer MCP Server

site icon
2025.03.14 18
TypeScript浏览器自动化网页测试数据抓取浏览器自动化
Puppeteer MCP Server 是一个基于 Puppeteer 的浏览器自动化服务,提供与浏览器实例交互的能力,支持导航网页、截图、点击元素、填写表单等多种操作。该服务可以连接到新的浏览器实例或现有的 Chrome 窗口,并具备智能的 Chrome 标签管理功能。
View on GitHub

Overview

基本能力

产品定位

Puppeteer MCP Server 是一个浏览器自动化服务,旨在通过 Puppeteer 提供高效的网页交互和操作能力。

核心功能

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

适用场景

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

工具列表

  1. puppeteer_connect_active_tab: 连接到现有的 Chrome 实例(远程调试启用)
  2. puppeteer_navigate: 导航到指定 URL
  3. puppeteer_screenshot: 截取当前页面或特定元素的截图
  4. puppeteer_click: 点击页面上的元素
  5. puppeteer_fill: 填写输入字段
  6. puppeteer_select: 使用下拉菜单
  7. puppeteer_hover: 悬停在元素上
  8. puppeteer_evaluate: 在浏览器控制台中执行 JavaScript

常见问题解答

  • 如何连接到现有的 Chrome 窗口? 关闭所有现有的 Chrome 实例,然后使用 --remote-debugging-port=9222 参数启动 Chrome,最后使用 puppeteer_connect_active_tab 工具连接。
  • 如何调试服务器? 服务器使用 Winston 进行日志记录,日志文件位于 logs/ 目录下,包含详细的调试信息。

使用教程

使用依赖

确保已安装 Node.js 和 npm。

安装教程

选项 1: 通过 npm 安装

npm install -g puppeteer-mcp-server

或直接使用 npx 运行:

npx puppeteer-mcp-server

选项 2: 从源代码安装

  1. 克隆仓库或下载源代码
  2. 安装依赖:
npm install
  1. 构建项目:
npm run build
  1. 运行服务器:
npm start

调试方式

  1. 启动服务器后,检查日志文件 logs/mcp-puppeteer-YYYY-MM-DD.log 以获取详细的操作和错误信息。
  2. 使用 puppeteer_evaluate 工具执行 JavaScript 代码进行调试。
  3. 确保 Chrome 远程调试端口(默认 9222)未被占用。

许可证

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