项目简介
MCP浏览器自动化服务是一个基于 Model Context Protocol (MCP) 的服务器实现,它扩展了 Playwright 的功能,允许 LLM 客户端通过 MCP 协议控制浏览器进行网页浏览和操作。该服务提供 JavaScript 代码注入工具,并支持 AIO 和 MCP 标准协议,可以通过 stdio 或 SSE 等多种模式与客户端通信。
主要功能点
- 浏览器自动化: 使用已安装的系统浏览器(Edge, Chrome 等)进行网页浏览和操作。
- MCP 协议支持: 完全兼容 MCP 标准协议,可以与任何 MCP 客户端进行交互。
- JavaScript 注入工具: 允许 LLM 客户端向网页注入 JavaScript 代码,实现更精细的页面控制和数据提取。
- 多种传输模式: 支持 stdio 和 SSE 两种传输模式,满足不同场景的需求。
- AIO 标准协议兼容: 除了 MCP 协议,还支持 AIO 标准协议,方便集成到已有的 AIO 框架中。
- 调试支持: SSE 模式下提供 '/debug' 端点,方便查看服务器上下文信息。
安装步骤
本仓库提供的是预编译的可执行文件,无需复杂的安装步骤。
- 下载可执行文件: 从仓库的 'dist' 目录下载 'mcp-use-browser.exe' 文件。
- 放置可执行文件: 将 'mcp-use-browser.exe' 放置到您希望运行 MCP 服务器的目录。
服务器配置
MCP 客户端需要配置以下信息以连接到 MCP 服务器。以下是基于 'mcpClient.js' 示例的配置信息:
{ "serverName": "use-browser-mcp", "transport": { "type": "stdio", "command": "dist/mcp-use-browser.exe", "args": ["--transport", "stdio"] }, "capabilities": { "prompts": {}, "resources": {}, "tools": {} } }
配置参数说明:
- 'serverName': 服务器名称,可以自定义。
- 'transport.type': 传输类型,这里配置为 'stdio',表示使用标准输入输出进行通信。
- 'transport.command': MCP 服务器启动命令,指向 'mcp-use-browser.exe' 可执行文件的路径。 请根据 'mcp-use-browser.exe' 实际存放路径进行修改。
- 'transport.args': MCP 服务器启动参数,'["--transport", "stdio"]' 表示以 stdio 模式启动服务器。
- 'capabilities': 声明客户端期望使用的服务器能力,这里为空对象,表示客户端接受服务器提供的所有默认能力。
注意: 如果您使用 SSE 模式,则无需配置 'command' 和 'args',只需运行 'mcp-use-browser.exe' 即可,服务器默认以 SSE 模式启动。SSE 模式的服务器地址默认为 'http://localhost:端口号',端口号会在服务器启动时输出。
基本使用方法
-
启动 MCP 服务器:
- stdio 模式: 在命令行中执行 'mcp-use-browser.exe --transport stdio' 启动服务器。
- SSE 模式: 双击运行 'mcp-use-browser.exe' 文件启动服务器。
-
运行 MCP 客户端: 参考仓库中的 'mcpClient.js' 示例,配置上述服务器连接信息,并使用 MCP 客户端 SDK 连接到服务器。'mcpClient.js' 演示了如何获取服务器信息、能力、以及调用 'browser_navigate' 工具进行网页导航。您可以根据需要扩展客户端代码,调用服务器提供的其他工具和功能。
-
使用 JavaScript 注入工具: 通过 MCP 客户端调用服务器提供的 JavaScript 注入工具 (具体工具名称和参数需要参考服务器的工具列表),可以实现更高级的网页操作,例如提取特定数据、模拟用户交互等。
信息
分类
网页与API