使用说明
项目简介
Chrome MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它允许 LLM 客户端通过标准化的 MCP 协议,控制一个 Chrome 浏览器实例。此服务器通过 Chrome DevTools Protocol (CDP) 提供了一系列工具,使得 LLM 能够进行网页浏览、信息提取和用户界面交互等操作。
主要功能点
- 浏览器控制工具: 提供导航到指定 URL、模拟鼠标点击、键盘输入、获取页面信息等工具,使 LLM 能够与网页进行交互。
- 页面信息获取: 可以获取页面的语义信息,包括可交互元素及其索引,以及页面上的文本内容,为 LLM 理解页面上下文提供支持。
- 灵活的交互方式: 支持通过元素索引进行点击和聚焦操作,方便 LLM 精确控制页面元素。
- SSE 传输协议: 使用 SSE (Server-Sent Events) 作为 MCP 通信的传输协议,实现服务器向客户端推送数据。
安装步骤
- 安装 Bun 或 Node.js: 推荐使用 Bun,或者使用 Node.js (v14 或更高版本)。
- 启动 Chrome 浏览器并启用远程调试: 根据操作系统,在终端中执行命令启动 Chrome 浏览器,并开启远程调试端口 (9222)。例如 macOS 系统:
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 - 安装项目依赖: 在仓库根目录下,使用 Bun 或 npm 安装依赖。
或者bun installnpm install - 启动 MCP 服务器: 使用 Bun 或 npm 启动服务器。
或者bun start
服务器默认运行在 3000 端口。npm start
服务器配置
MCP 客户端需要配置以下信息以连接 Chrome MCP Server。以下是 JSON 格式的配置示例,通常在 MCP 客户端的设置文件中配置(例如 Roo Code):
{ "serverName": "chrome-control", // MCP 服务器名称,可以自定义 "command": "bun", // 启动服务器的命令,这里使用 bun "args": ["start"] // 启动命令的参数,这里使用 "start" 启动脚本 }
参数注释:
- 'serverName': 为该 MCP 服务器配置一个名称,在客户端中用于标识和选择服务器。
- 'command': 指定启动 MCP 服务器的命令。根据项目 'package.json' 中的 'scripts' 配置,这里使用 'bun start' 或 'npm start' 启动服务器。
- 'args': 'command' 命令的参数,根据启动脚本的需求配置。本例中 'bun start' 或 'npm start' 命令不需要额外参数,所以配置为空数组或 '["start"]' 启动脚本名称。
基本使用方法
- 确保 Chrome 浏览器已启动并开启远程调试,Chrome MCP Server 也已成功启动。
- 在 MCP 客户端中配置上述服务器信息,并连接到 'http://localhost:3000/sse' (或根据实际运行地址修改)。
- 客户端可以通过 MCP 协议调用服务器提供的工具,例如 'navigate' 工具用于导航到指定网址,'click' 工具用于模拟鼠标点击等,从而控制 Chrome 浏览器执行相应的操作。
- 'getPageInfo' 工具可以获取当前页面的信息,返回可交互元素列表和页面文本内容,为后续的交互操作提供上下文信息。
信息
分类
开发者工具