article
README
🚀 MCP-Puppeteer-Linux
MCP-Puppeteer-Linux 是一个提供浏览器自动化功能的模型上下文协议(Model Context Protocol)服务器,它借助 Puppeteer 实现相关功能,并且完全支持 Linux 显示服务器(X11 和 Wayland)。该服务器让大语言模型(LLM)能够与网页进行交互、截取屏幕截图以及执行 JavaScript 代码,一切都在真实的浏览器环境中运行。
🚀 快速开始
MCP-Puppeteer-Linux 为大语言模型提供了在真实浏览器环境中与网页交互的能力。你可以通过配置相应的工具和资源,实现网页导航、截图、点击等操作。以下是一个适用于 Claude 桌面的配置示例:
{
"mcp": {
"servers": [
{
"name": "puppeteer_navigate",
"command": "cd /path/to/app && npm start"
},
{
"name": "puppeteer_screenshot",
"command": "cd /path/to/app && npm run screenshot"
}
]
}
}
✨ 主要特性
- 浏览器自动化功能:支持网页导航、截图、点击、鼠标悬停、表单填写等操作。
- 显示服务器支持:全面支持 X11 和 Wayland 显示服务器。
- 动态环境变量配置:自动检测并配置相应的环境变量。
- 回退机制和鲁棒错误处理:确保在各种情况下都能稳定运行。
- XWayland 兼容性:保证在 XWayland 环境下也能正常工作。
📦 安装指南
通过 Smithery 自动安装
# 使用以下命令自动安装:
smithery install @PhialsBasement/mcp-puppeteer-linux
手动安装
- 克隆此仓库:
git clone https://github.com/PhialsBasement/mcp-puppeteer_linux.git cd mcp-puppeteer_linux - 安装依赖项并运行:
npm install node index.js
📚 详细文档
显示服务器支持
此分支添加了对 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 选择器
- puppeteer_execute_javascript
- 在目标上下文中执行 JavaScript 表达式
- 输入:
expression(字符串):要执行的 JavaScript 表达式
资源
- Console Log:提供控制台日志输出,使用特定 URL 格式访问。
- Screenshot:提供截屏资源,使用特定 URL 格式访问。
显示服务器详细信息
Wayland 支持
- 自动检测和配置 Wayland 环境变量。
- 支持 XWayland 兼容性。
X11 支持
- 配置 X11 环境变量以支持传统 Linux 显示服务器。
📄 许可证
此项目采用 MIT License,具体信息请参考 LICENSE 文件。
微信扫一扫