Browser Use MCP服务器使用说明
项目简介
Browser Use MCP服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,专注于AI驱动的浏览器自动化。它允许大型语言模型(LLM)通过标准化的MCP协议,以自然语言指令远程控制和操作浏览器,从而实现各种网页交互和自动化任务。该服务器的核心功能在于将浏览器操作能力封装成易于LLM调用的工具,使得LLM能够像人类一样浏览网页、填写表单、点击元素、提取信息,并进行更复杂的网络任务。
主要功能点
- MCP协议集成: 完全实现了Model Context Protocol,能够与任何兼容MCP协议的LLM客户端进行通信。
- 浏览器自动化: 提供全面的浏览器自动化能力,包括页面导航、元素点击、文本输入、表单填写等,支持模拟用户在浏览器中的各种操作。
- 可视化理解: 支持截图分析和基于视觉的交互,使LLM能够理解网页的视觉布局,并进行更精确的元素定位和操作。(需要配置 'MCP_USE_VISION=true')
- 会话持久化: 支持维护浏览器会话状态,允许在不同任务之间保持浏览器上下文,提高效率和连贯性。
- 多LLM支持: 兼容多种主流LLM服务提供商,包括OpenAI, Anthropic, Azure OpenAI, DeepSeek, Gemini, Mistral, Ollama 和 OpenRouter,可以根据需求灵活配置。
安装步骤
-
环境准备:
- 确保已安装 Python 3.11 或更高版本。
- 推荐使用 'uv' 作为快速的Python包管理器(可以使用 'pip install uv' 安装)。
- 确保已安装 Chrome 或 Chromium 浏览器。
-
配置MCP服务器:
-
Claude 桌面客户端集成 (MacOS/Windows):
- 找到 Claude 桌面客户端的配置文件 'claude_desktop_config.json':
- MacOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
- 编辑该文件,在 '"mcpServers"' 字段下添加 "browser-use" 服务器配置。
- 找到 Claude 桌面客户端的配置文件 'claude_desktop_config.json':
-
本地开发或集成其他MCP客户端:
- 下载或克隆 'mcp-browser-use' 仓库到本地。
- 根据需要修改配置文件或环境变量。
-
服务器配置 (JSON)
以下 JSON 配置信息用于 MCP 客户端(例如 Claude 桌面客户端)连接和启动 Browser Use MCP 服务器。请根据您的实际使用场景选择合适的配置,并将以下 JSON 代码块添加到 MCP 客户端的服务器配置中。
Claude 桌面客户端配置示例:
{ "server name": "browser-use", // 服务器名称,在客户端中用于标识和选择 "command": "uvx", // 启动服务器的命令,这里使用 uvx (uv 虚拟环境执行器) "args": [ // 传递给命令的参数列表 "mcp-server-browser-use" // 实际执行的服务器程序入口点 ], "env": { // 环境变量配置,用于服务器运行时读取 "OPENROUTER_API_KEY": "", // OpenRouter API 密钥 (如果使用 OpenRouter 模型) "OPENROUTER_ENDPOINT": "https://openrouter.ai/api/v1", // OpenRouter API Endpoint (可选,默认值) "OPENAI_ENDPOINT": "https://api.openai.com/v1", // OpenAI API Endpoint (可选,默认值) "OPENAI_API_KEY": "", // OpenAI API 密钥 (如果使用 OpenAI 模型) "ANTHROPIC_ENDPOINT": "https://api.anthropic.com", // Anthropic API Endpoint (可选,默认值) "ANTHROPIC_API_KEY": "", // Anthropic API 密钥 (如果使用 Anthropic 模型) "GOOGLE_API_KEY": "", // Google API 密钥 (如果使用 Gemini 模型) "AZURE_OPENAI_ENDPOINT": "", // Azure OpenAI API Endpoint (如果使用 Azure OpenAI 模型) "AZURE_OPENAI_API_KEY": "", // Azure OpenAI API 密钥 (如果使用 Azure OpenAI 模型) "DEEPSEEK_ENDPOINT": "https://api.deepseek.com", // DeepSeek API Endpoint (可选,默认值) "DEEPSEEK_API_KEY": "", // DeepSeek API 密钥 (如果使用 DeepSeek 模型) "MISTRAL_API_KEY": "", // Mistral API 密钥 (如果使用 Mistral 模型) "MISTRAL_ENDPOINT": "https://api.mistral.ai/v1", // Mistral API Endpoint (可选,默认值) "OLLAMA_ENDPOINT": "http://localhost:11434", // Ollama API Endpoint (可选,默认 localhost:11434) "ANONYMIZED_TELEMETRY": "true", // 是否启用匿名遥测 (true/false) "BROWSER_USE_LOGGING_LEVEL": "info", // 日志级别 (info, debug, warning, error, critical) "CHROME_PATH": "", // Chrome/Chromium 浏览器可执行文件路径 (可选,如果系统无法自动找到) "CHROME_USER_DATA": "", // Chrome 用户数据目录 (可选) "CHROME_DEBUGGING_PORT": "9222", // Chrome 调试端口 (默认 9222) "CHROME_DEBUGGING_HOST": "localhost", // Chrome 调试主机 (默认 localhost) "CHROME_PERSISTENT_SESSION": "false", // 是否保持 Chrome 会话持久性 (true/false) "BROWSER_HEADLESS": "false", // 是否以无头模式运行浏览器 (true/false) "BROWSER_DISABLE_SECURITY": "false", // 是否禁用浏览器安全特性 (true/false) "BROWSER_WINDOW_WIDTH": "1280", // 浏览器窗口宽度 (默认 1280) "BROWSER_WINDOW_HEIGHT": "720", // 浏览器窗口高度 (默认 720) "BROWSER_TRACE_PATH": "trace.json", // Playwright 跟踪文件路径 (可选) "BROWSER_RECORDING_PATH": "recording.mp4", // 浏览器录制视频文件路径 (可选) "RESOLUTION": "1920x1080x24", // 屏幕分辨率 (默认 1920x1080x24) "RESOLUTION_WIDTH": "1920", // 屏幕宽度 (默认 1920) "RESOLUTION_HEIGHT": "1080", // 屏幕高度 (默认 1080) "VNC_PASSWORD": "youvncpassword", // VNC 密码 (如果启用 VNC) "MCP_MODEL_PROVIDER": "anthropic", // 默认 LLM 提供商 (anthropic, openai, azure_openai, deepseek, gemini, mistral, ollama, openrouter) "MCP_MODEL_NAME": "claude-3-5-sonnet-20241022", // 默认 LLM 模型名称 "MCP_TEMPERATURE": "0.3", // LLM 温度参数 (默认 0.3) "MCP_MAX_STEPS": "30", // 最大 Agent 步骤数 (默认 30) "MCP_USE_VISION": "true", // 是否启用视觉功能 (true/false) "MCP_MAX_ACTIONS_PER_STEP": "5", // 每步最大动作数 (默认 5) "MCP_TOOL_CALL_IN_CONTENT": "true" // 工具调用是否在内容中 (true/false) } }
本地开发配置示例:
{ "server name": "browser-use", // 服务器名称 "command": "uv", // 启动命令,这里使用 uv (uv 虚拟环境执行器) "args": [ // 命令参数列表 "--directory", // 指定工作目录参数 "/path/to/mcp-browser-use", // 替换为 mcp-browser-use 仓库的本地路径 "run", // uv run 命令 "mcp-server-browser-use" // 实际执行的服务器程序入口点 ], "env": { // 环境变量配置 (同 Claude 桌面客户端配置示例) ... // 其他环境变量配置,请参考 Claude 桌面客户端配置示例 } }
注意:
- 请将 '/path/to/mcp-browser-use' 替换为 'mcp-browser-use' 仓库在您本地机器上的实际路径。
- 'uvx' 命令适用于已安装 'uv' 并添加到系统环境变量的情况。如果 'uvx' 命令不可用,请尝试直接使用 'uv run mcp-server-browser-use' 命令。
- 环境变量 'env' 中的配置项可以根据您的需求进行调整,例如 API 密钥、模型选择、浏览器设置等。
基本使用方法
- 确保 Browser Use MCP 服务器已成功配置并启动。
- 在兼容 MCP 协议的 LLM 客户端中,选择 "browser-use" 服务器。
- LLM 客户端将通过 MCP 协议与 Browser Use MCP 服务器通信,发送自然语言指令。
- Browser Use MCP 服务器解析指令,控制浏览器执行相应的自动化操作。
- 服务器将执行结果和浏览器状态信息通过 MCP 协议返回给 LLM 客户端。
例如,您可以指示 LLM 客户端执行以下任务:
- "使用浏览器搜索最新的AI新闻。"
- "在亚马逊网站上查找并购买价格低于100美元的智能手表。"
- "打开Youtube网站,播放最新的音乐视频。"
- "访问指定的网页,并提取页面上的所有文本内容。"
LLM 客户端会将这些自然语言指令转换为 MCP 请求,发送给 Browser Use MCP 服务器,服务器则会驱动浏览器完成相应的操作,并将结果返回给 LLM 客户端,最终以自然语言形式呈现给用户。
信息
分类
网页与API