使用说明

项目简介

本项目是一个基于Model Context Protocol (MCP) 的服务器实现,它将 Puppeteer 强大的浏览器自动化能力封装成一系列工具,通过MCP协议提供给LLM客户端使用。这使得LLM可以通过调用这些工具,实现自动化的网页浏览、信息抓取、用户交互等任务。

主要功能点

  • 网页导航: 打开指定URL的网页。
  • 元素操作: 模拟用户点击网页元素、在输入框中输入文本。
  • 内容提取: 获取网页内容,支持提取纯文本、HTML或结构化DOM信息。
  • 页面控制: 网页滚动、等待元素加载、检测验证码。
  • 文件下载: 下载网页上的图片和文件到本地。

安装步骤

本项目是 Saiki 项目的一部分,作为Saiki的功能扩展而存在,无需单独安装。要使用 Puppeteer MCP 服务器,您需要先安装 Saiki 项目:

  1. 克隆仓库:
    git clone https://github.com/truffle-ai/saiki
    cd saiki
  2. 安装依赖并构建:
    npm install
    npm run build

服务器配置

要让MCP客户端(例如Saiki本身或其他兼容客户端)连接到 Puppeteer MCP 服务器,您需要在客户端的配置文件中添加服务器配置信息。以下是一个 'mcp.json' 配置示例,用于配置一个名为 "puppeteer" 的服务器连接:

{
  "mcpServers": {
    "puppeteer": {
      "type": "stdio",
      "command": "node",
      "args": ["./dist/src/servers/puppeteerServer.js"]
    }
  }
}

配置参数说明:

  • server name: 'puppeteer' (服务器名称,可以自定义)
  • type: 'stdio' (连接类型,表示使用标准输入输出流)
  • command: 'node' (启动服务器的命令,这里使用 Node.js 运行 JavaScript 文件)
  • args: '["./dist/src/servers/puppeteerServer.js"]' (传递给 'node' 命令的参数,指向编译后的 Puppeteer MCP 服务器 JavaScript 文件路径。请根据实际文件路径调整)

注意: 请确保 'puppeteerServer.js' 文件路径正确,该文件位于 Saiki 项目编译后的 'dist' 目录下。

基本使用方法

  1. 启动 Puppeteer MCP 服务器: 无需手动启动,当 Saiki 客户端尝试连接到 "puppeteer" 服务器时,会自动启动。
  2. 配置 MCP 客户端: 在 MCP 客户端(如 Saiki)的配置文件中,添加上述服务器配置信息。
  3. 使用 LLM 指令调用工具: 通过自然语言指令,指示 LLM 客户端调用 Puppeteer MCP 服务器提供的工具,例如:
    • "导航到 https://www.example.com" (对应 'puppeteer_navigate' 工具)
    • "点击页面上的 '搜索' 按钮" (对应 'puppeteer_click' 工具)
    • "获取当前页面的主要内容" (对应 'puppeteer_get_content' 工具)

LLM 将会解析指令,并根据工具描述和参数,调用 Puppeteer MCP 服务器执行相应的浏览器自动化操作。

信息

分类

网页与API