article
README
🚀 uppeteer MCP 服务器
此 MCP 服务器借助 Puppeteer 实现浏览器自动化功能,支持与新浏览器实例以及现有 Chrome 窗口进行交互,为网页自动化操作提供便利。
✨ 主要特性
- 多样化网页操作:支持浏览网页、截取屏幕截图、点击元素、填充表单、选择选项、鼠标悬停在元素上以及执行 JavaScript 等操作。
- 智能 Chrome 标签管理:
- 可连接到活动的 Chrome 标签。
- 保留现有的 Chrome 实例。
- 具备智能连接处理能力。
📦 安装指南
文档未提及安装步骤,暂不提供相关内容。
💻 使用示例
标准模式
服务器默认启动一个新的浏览器实例。
活动标签模式
要连接到现有的 Chrome 窗口,可按以下步骤操作:
- 完全关闭任何现有 Chrome 实例。
- 启动 Chrome 并启用远程调试:
- Windows 或 Linux:
chrome.exe --remote-debugging-port=9222 - Mac:
open -a /Applications/Google\ Chrome.app --args --remote-debugging-port=9222
- Windows 或 Linux:
- 打开包含
devtoolsFrontendUrl的新标签页。
📚 详细文档
项目结构
/
├── src/
│ ├── config/ # 配置模块
│ ├── tools/ # 工具定义和处理程序
│ ├── browser/ # 浏览器连接管理
│ ├── types/ # TypeScript 类型定义
│ ├── resources/ # 资源处理程序
│ └── server.ts # 服务器初始化
├── index.ts # 入口点
└── README.md # 文档
工具列表
puppeteer_connect_active_tab:连接到活动的 Chrome 标签。puppeteer_create_new_tab:创建新的 Chrome 标签。puppeteer_navigate_to_url:导航到指定 URL。puppeteer_close_current_tab:关闭当前标签页。puppeteer_screenshot_page:截取页面截图。
安全注意事项
- 仅在受信任的环境中运行服务器。
- 禁止在生产环境中明文传输敏感信息。
- 定期更新依赖项以防范安全漏洞。
日志记录
概述
服务器提供详细的日志记录功能,包括操作时间戳、请求上下文信息、操作执行结果以及错误详细信息。所有日志默认存储在 ./logs/ 目录中,按日期分文件。
错误处理
支持的错误类型
- 连接失败
- 元素缺失
- 无效选择器
- JavaScript 执行错误
- 截取截图失败
每个工具调用返回成功/失败状态、失败时的详细错误信息以及成功操作的结果数据。所有错误都会记录到日志文件中,包括时间戳、错误消息、堆栈跟踪(如果有)以及上下文信息。
贡献指南
欢迎贡献!请查阅我们的 CONTRIBUTING.md 了解如何提交拉取请求、报告问题以及为项目做出贡献。
📄 许可证
本项目使用 MIT 许可证,具体内容见 LICENSE 文件。
微信扫一扫