M

MCP木偶师Linux浏览器自动化工具

@PhialsBasement/MCP-Puppeteer-Linux
0 Stars 449 次浏览 PhialsBasement 更新于 2026-08-23

在Linux显示服务器上为大型语言模型启用浏览器自动化,支持在真实浏览器中进行网络交互、截图和JavaScript执行。

该服务暂未提供标准配置,请参考 README 手动接入

可用工具 (7 个)

该服务在 MCP 协议中暴露的工具,AI 可按需调用

puppeteer_navigate 1 个参数 需填 1 项

Navigate to a URL

必填参数:url

puppeteer_screenshot 4 个参数 需填 1 项

Take a screenshot of the current page or a specific element

必填参数:name

puppeteer_click 1 个参数 需填 1 项

Click an element on the page

必填参数:selector

puppeteer_fill 2 个参数 需填 2 项

Fill out an input field

必填参数:selector、value

puppeteer_select 2 个参数 需填 2 项

Select an element on the page with Select tag

必填参数:selector、value

puppeteer_hover 1 个参数 需填 1 项

Hover an element on the page

必填参数:selector

puppeteer_evaluate 1 个参数 需填 1 项

Execute JavaScript in the browser console

必填参数:script

服务介绍

MCP-Puppeteer-Linux

smithery badge
这是一个使用 Puppeteer 提供浏览器自动化功能的 Model Context Protocol 服务器,完全支持 Linux 显示服务器(X11 和 Wayland)。该服务器使 LLMs 能够与网页交互、截取屏幕截图并在真实的浏览器环境中执行 JavaScript。

显示服务器支持

此分支添加了对 Linux 显示服务器的自动检测和配置:

  • 自动 X11/Wayland 检测
  • 动态环境变量配置
  • 支持各种桌面环境(GNOME, KDE 等)
  • 回退机制和强大的错误处理
  • XWayland 兼容性

组件

工具

  • 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 图像
    • 可通过捕获时指定的屏幕截图名称访问

主要特性

  • 支持 Linux 显示服务器的浏览器自动化
  • 自动 X11/Wayland 检测和配置
  • 控制台日志监控
  • 屏幕截图功能
  • JavaScript 执行
  • 基本的网页交互(导航、点击、表单填写)

配置

Claude Desktop 配置

{
  "mcpServers": {
    "puppeteer": {
      "command": "npx",
      "args": ["ts-node", "/path/to/index.ts"]
    }
  }
}

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 Puppeteer Linux:

npx -y @smithery/cli install @PhialsBasement/mcp-puppeteer-linux --client claude

手动安装

  1. 克隆仓库:
git clone https://github.com/PhialsBasement/MCP-Puppeteer-Linux.git
  1. 安装依赖项:
npm install
  1. 启动服务器:
ts-node index.ts

显示服务器详情

服务器会自动检测并配置适当的显示环境:

Wayland 支持

  • 通过 WAYLAND_DISPLAY 检测 Wayland 会话
  • 配置必要的环境变量:
    • WAYLAND_DISPLAY
    • QT_QPA_PLATFORM
    • GDK_BACKEND
    • MOZ_ENABLE_WAYLAND
    • XDG_SESSION_TYPE

X11 支持

  • 为传统的 X11 会话提供回退
  • 处理 X11 特定的变量:
    • DISPLAY
    • XAUTHORITY
  • 支持各种桌面环境和窗口管理器

许可证

此 MCP 服务器采用 MIT 许可证。这意味着您可以在遵守 MIT 许可证条款和条件的前提下自由使用、修改和分发该软件。更多详细信息,请参见项目仓库中的 LICENSE 文件。

相关 MCP 服务