Puppeteer

Puppeteer

浏览器自动化和网页抓取

简介

Puppeteer 是一个 Model Context Protocol 服务器,提供浏览器自动化功能,使大语言模型能够与网页交互、截屏并执行 JavaScript。

设置

使用 Docker(无头模式)

{
  "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"]
    }
  }
}

核心功能

网页导航

// 打开网页
puppeteer_navigate("https://example.com")

截图

// 整页截图
puppeteer_screenshot("homepage")

// 指定元素截图
puppeteer_screenshot({
  name: "logo",
  selector: ".logo",
  width: 1200,
  height: 800
})

页面交互

// 点击元素
puppeteer_click("#submit-button")

// 悬停元素
puppeteer_hover(".dropdown-menu")

// 填写表单
puppeteer_fill("#username", "user123")
puppeteer_fill("#password", "pass123")

// 下拉选择
puppeteer_select("#country", "China")

执行 JavaScript

// 在浏览器中执行脚本
puppeteer_evaluate("document.querySelector('h1').textContent")

资源访问

  • 控制台日志: console://logs
  • 截图访问: screenshot://<name>

构建 (可选)

docker build -t mcp/puppeteer -f src/puppeteer/Dockerfile .

许可证

MIT 许可证