Puppeteer

Puppeteer

MCP Puppeteer 服务器 HomeAssistant 插件

rotexhawk

浏览器自动化
访问服务器

README

Puppeteer

一个模型上下文协议(Model Context Protocol)服务器,它使用 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 代码

资源

该服务器提供对两种类型资源的访问:

  1. 控制台日志 (console://logs)

    • 文本格式的浏览器控制台输出
    • 包括来自浏览器的所有控制台消息
  2. 屏幕截图 (screenshot://<name>)

    • 捕获的屏幕截图的 PNG 图像
    • 可通过捕获期间指定的屏幕截图名称访问

主要特性

  • 浏览器自动化
  • 控制台日志监控
  • 屏幕截图功能
  • JavaScript 执行
  • 基本的 Web 交互(导航、点击、表单填写)

使用 Puppeteer 服务器的配置

以下是使用 Puppeteer 服务器的 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 文件。

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Playwright MCP Server

Playwright MCP Server

提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。

精选
本地
TypeScript
@kazuph/mcp-fetch

@kazuph/mcp-fetch

用于获取网页内容和处理图像的模型上下文协议服务器。这使得 Claude Desktop(或任何 MCP 客户端)能够适当地获取网页内容和处理图像。

精选
本地
JavaScript
DuckDuckGo MCP Server

DuckDuckGo MCP Server

一个模型上下文协议 (MCP) 服务器,通过 DuckDuckGo 提供网页搜索功能,并具有内容获取和解析的附加功能。

精选
Python
YouTube Transcript MCP Server

YouTube Transcript MCP Server

这个服务器用于获取指定 YouTube 视频 URL 的字幕,从而可以与 Goose CLI 或 Goose Desktop 集成,进行字幕提取和处理。

精选
Python
serper-search-scrape-mcp-server

serper-search-scrape-mcp-server

这个 Serper MCP 服务器支持搜索和网页抓取,并且支持 Serper API 引入的所有最新参数,例如位置。

精选
TypeScript
The Verge News MCP Server

The Verge News MCP Server

提供从The Verge的RSS feed获取和搜索新闻的工具,允许用户获取今日新闻、检索过去一周的随机文章,以及在最近的Verge内容中搜索特定关键词。

精选
TypeScript
Tavily MCP Server

Tavily MCP Server

使用 Tavily 的搜索 API 提供 AI 驱动的网络搜索功能,使 LLM 能够执行复杂的网络搜索、获得问题的直接答案以及搜索最近的新闻文章。

精选
Python
mcp-pinterest

mcp-pinterest

用于图像搜索和信息检索的 Pinterest 模型上下文协议 (MCP) 服务器

精选
TypeScript
Crawlab MCP Server

Crawlab MCP Server

官方
Python