Browser Use Server 使用说明
项目简介
Browser Use Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 提供网页浏览器自动化能力。通过此服务器,LLM 可以调用预定义的工具来控制浏览器执行各种操作,从而扩展 LLM 在网络信息获取和处理方面的能力。
主要功能点
- 网页截图 (screenshot): 捕获指定URL网页的屏幕截图,支持全页或视口截图,并可执行截图前的交互步骤。
- 获取网页HTML (get_html): 获取指定URL网页的HTML源代码,支持在获取HTML前执行用户指定的交互步骤。
- 执行JavaScript (execute_js): 在指定URL网页上执行用户提供的JavaScript代码,并返回执行结果。
- 获取控制台日志 (get_console_logs): 获取指定URL网页在加载和交互过程中产生的控制台日志信息。
- 多步骤操作: 所有工具都支持在打开网页后执行一系列预定义的操作步骤,例如点击元素、滚动页面、填写表单等,以模拟更复杂的用户交互场景。
- 多LLM支持: 支持多种LLM服务提供商,包括 OpenAI, Google Gemini, DeepSeek, Ollama, Groq, GLHF, OpenRouter, Github等,用户只需配置相应的API密钥即可。
- Headless 浏览器: 默认使用 Headless 模式运行浏览器,支持 Xvfb 以提升在 Headless 环境下的稳定性和隐蔽性。
安装步骤
-
安装 Xvfb (可选但推荐): 用于在无图形界面的服务器上运行浏览器,提高稳定性和避免被识别为机器人。
# Ubuntu/Debian sudo apt-get install xvfb(其他Linux发行版的安装命令请参考仓库 README)
-
安装 Miniconda 或 Anaconda: 用于创建和管理Python环境。
-
创建 Conda 环境并安装依赖:
conda create -n browser-use python=3.11 conda activate browser-use # 注意:仓库README中此处为 'pip install browser-use',但根据仓库内容, # 此命令可能无法安装当前仓库的代码,建议改为从源码安装,或者此步骤可能为误导, # 实际运行可能不需要额外pip安装,conda环境仅用于运行python脚本依赖。 # 如果后续运行报错缺少 browser-use 库,再尝试 pip install browser-use -
克隆 GitHub 仓库:
git clone https://github.com/ztobs/cline-browser-use-mcp cd cline-browser-use-mcp -
安装 Node.js 依赖并构建项目:
npm install npm run build -
配置 LLM API 密钥: 设置环境变量,至少需要配置一个LLM API密钥,支持以下密钥:'GLHF_API_KEY', 'GROQ_API_KEY', 'OPENAI_API_KEY', 'OPENROUTER_API_KEY', 'GITHUB_API_KEY', 'DEEPSEEK_API_KEY', 'GEMINI_API_KEY', 'OLLAMA_API_KEY'。 例如:
export OPENAI_API_KEY=YOUR_OPENAI_API_KEY(可选) 可以设置 'MODEL' 和 'BASE_URL' 环境变量来覆盖默认的LLM模型和API Endpoint。
服务器配置
以下 JSON 配置信息用于 MCP 客户端 (如 Cline) 连接 Browser Use Server。请根据实际安装路径修改 'args' 中的路径。
{ "browser-use": { "command": "node", "args": [ "/path/to/cline-browser-use-mcp/build/index.js" // 修改为实际的index.js文件路径 ], "env": { // 必须设置至少一个 LLM API 密钥 "GLHF_API_KEY": "YOUR_GLHF_API_KEY", // (可选,根据你使用的LLM服务配置) "GROQ_API_KEY": "YOUR_GROQ_API_KEY", // (可选,根据你使用的LLM服务配置) "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY", // (可选,根据你使用的LLM服务配置) "OPENROUTER_API_KEY": "YOUR_OPENROUTER_API_KEY", // (可选,根据你使用的LLM服务配置) "GITHUB_API_KEY": "YOUR_GITHUB_API_KEY", // (可选,根据你使用的LLM服务配置) "DEEPSEEK_API_KEY": "YOUR_DEEPSEEK_API_KEY", // (可选,根据你使用的LLM服务配置) "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY", // (可选,根据你使用的LLM服务配置) "OLLAMA_API_KEY": "YOUR_OLLAMA_API_KEY" // (可选,根据你使用的LLM服务配置) // 可选配置,用于覆盖默认模型或 API Endpoint // "MODEL": "your_preferred_model", // "BASE_URL": "your_custom_url", // "USE_VISION": "false" // 启用 vision 能力,默认为 false }, "disabled": false, "autoApprove": [] } }
注意:
- 将 '/path/to/cline-browser-use-mcp' 替换为实际的 'cline-browser-use-mcp' 仓库在您系统中的绝对路径。
- 根据您希望使用的 LLM 服务,填写至少一个对应的 API 密钥到 'env' 的配置中。
基本使用方法
-
启动服务器: 打开终端,进入 'cline-browser-use-mcp' 仓库目录,运行以下命令启动服务器:
node build/index.js服务器成功启动后,会在终端输出 'Browser Use MCP server running on stdio'。
-
在 MCP 客户端 (如 Cline) 中配置并连接服务器: 将上述 “服务器配置” JSON 代码添加到您的 MCP 客户端配置中,并确保客户端已连接到 Browser Use Server。
-
通过 MCP 客户端调用工具: 在 MCP 客户端中,可以使用 'screenshot', 'get_html', 'execute_js', 'get_console_logs' 等工具,并根据工具的输入参数 (例如 'url', 'steps', 'script' 等) 发起调用,控制浏览器执行相应的操作。具体工具参数和使用方法请参考仓库 README 或工具的描述信息。
示例 Cline 使用: 在 Cline 中,您可以像 README 示例中那样,使用自然语言指令结合 'browser-use' 服务器来操作网页,例如: 'Take a screenshot of https://www.example.com after clicking the "Login" button.'
信息
分类
网页与API