项目说明:此MCP服务器实现基于browser-use/web-ui基础构建。核心浏览器自动化逻辑和配置模式从原始项目中继承。
AI驱动的浏览器自动化服务器,实现了模型上下文协议(MCP),用于自然语言控制浏览器和网络研究。同时提供对核心功能的CLI访问。
<a href="https://glama.ai/mcp/servers/@Saik0s/mcp-browser-use"><img width="380" height="200" src="https://gips2.baidu.com/it/u=2348531863,1207185792&fm=3081&app=3081&f=PNG?w=760&h=100" alt="Browser-Use MCP服务器" /></a>
run_browser_agent工具)。run_deep_research工具)。run_browser_agent,run_deep_research)进行测试和脚本编写。安装UV - 强大的Python安装器:
curl -LsSf https://astral.sh/uv/install.sh | sh
获取Playwright浏览器(自动化所需):
uvx --from mcp-server-browser-use@latest python -m playwright install
对于像Claude Desktop这样的MCP客户端,添加一个简单的服务器配置如下:
// 示例1:最新版本的一行配置(始终新鲜)
"mcpServers": {
"browser-use": {
"command": "uvx",
"args": ["mcp-server-browser-use@latest"],
"env": {
"MCP_LLM_GOOGLE_API_KEY": "YOUR_KEY_HERE_IF_USING_GOOGLE",
"MCP_LLM_PROVIDER": "google",
"MCP_LLM_MODEL_NAME": "gemini-2.5-flash-preview-04-17",
"MCP_BROWSER_HEADLESS": "true",
}
}
}
// 示例2:带有CDP的高级配置
"mcpServers": {
"browser-use": {
"command": "uvx",
"args": ["mcp-server-browser-use@latest"],
"env": {
"MCP_LLM_OPENROUTER_API_KEY": "YOUR_KEY_HERE_IF_USING_OPENROUTER",
"MCP_LLM_PROVIDER": "openrouter",
"MCP_LLM_MODEL_NAME": "anthropic/claude-3.5-haiku",
"MCP_LLM_TEMPERATURE": "0.4",
"MCP_BROWSER_HEADLESS": "false",
"MCP_BROWSER_WINDOW_WIDTH": "1440",
"MCP_BROWSER_WINDOW_HEIGHT": "1080",
"MCP_AGENT_TOOL_USE_VISION": "true",
"MCP_RESEARCH_TOOL_SAVE_DIR": "/path/to/your/research",
"MCP_RESEARCH_TOOL_MAX_PARALLEL_BROWSERS": "5",
"MCP_PATHS_DOWNLOADS": "/path/to/your/downloads",
"MCP_BROWSER_USE_OWN_BROWSER": "true",
"MCP_BROWSER_CDP_URL": "http://localhost:9222",
"MCP_AGENT_TOOL_HISTORY_PATH": "/path/to/your/history",
"MCP_SERVER_LOGGING_LEVEL": "DEBUG",
"MCP_SERVER_LOG_FILE": "/path/to/your/log/mcp_server_browser_use.log",
}
}
}
// 示例3:带有用户数据和自定义chrome路径的高级配置
"mcpServers": {
"browser-use": {
"command": "uvx",
"args": ["mcp-server-browser-use@latest"],
"env": {
"MCP_LLM_OPENAI_API_KEY": "YOUR_KEY_HERE_IF_USING_OPENAI",
"MCP_LLM_PROVIDER": "openai",
"MCP_LLM_MODEL_NAME": "gpt-4.1-mini",
"MCP_LLM_TEMPERATURE": "0.2",
"MCP_BROWSER_HEADLESS": "false",
"MCP_BROWSER_BINARY_PATH": "/path/to/your/chrome/binary",
"MCP_BROWSER_USER_DATA_DIR": "/path/to/your/user/data",
"MCP_BROWSER_DISABLE_SECURITY": "true",
"MCP_BROWSER_KEEP_OPEN": "true",
"MCP_BROWSER_TRACE_PATH": "/path/to/your/trace",
"MCP_AGENT_TOOL_HISTORY_PATH": "/path/to/your/history",
"MCP_SERVER_LOGGING_LEVEL": "DEBUG",
"MCP_SERVER_LOG_FILE": "/path/to/your/log/mcp_server_browser_use.log",
}
}
}
// 示例4:本地开发流程
"mcpServers": {
"browser-use": {
"command": "uv",
"args": [
"--directory",
"/your/dev/path",
"run",
"mcp-server-browser-use"
],
"env": {
"MCP_LLM_OPENROUTER_API_KEY": "YOUR_KEY_HERE_IF_USING_OPENROUTER",
"MCP_LLM_PROVIDER": "openrouter",
"MCP_LLM_MODEL_NAME": "openai/gpt-4o-mini",
"MCP_BROWSER_HEADLESS": "true",
}
}
}
关键见解:最佳配置从简单开始(示例1)。.env.example文件包含了所有可能的设置。
此服务器通过模型上下文协议暴露以下工具:
run_browser_agent
MCP_AGENT_TOOL_*、MCP_LLM_*和MCP_BROWSER_*环境变量的设置。task (字符串,必需):主要任务或目标。MCP_AGENT_TOOL_HISTORY_PATH,则保存代理历史记录(JSON,可选GIF)。run_deep_research
MCP_RESEARCH_TOOL_*、MCP_LLM_*和MCP_BROWSER_*环境变量的设置。如果设置了MCP_RESEARCH_TOOL_SAVE_DIR,输出将保存在子目录内;否则,仅在内存中操作。research_task (字符串,必需):研究的主题或问题。max_parallel_browsers (整数,可选):覆盖环境中的MCP_RESEARCH_TOOL_MAX_PARALLEL_BROWSERS。此包还提供了命令行接口mcp-browser-cli,用于直接测试和脚本编写。
全局选项:
--env-file PATH, -e PATH:加载配置的.env文件路径。--log-level LEVEL, -l LEVEL:覆盖日志级别(例如,DEBUG,INFO)。命令:
mcp-browser-cli run-browser-agent [OPTIONS] TASK
TASK (字符串,必需):代理的主要任务。mcp-browser-cli run-browser-agent "前往example.com并找到标题。" -e .env
mcp-browser-cli run-deep-research [OPTIONS] RESEARCH_TASK
RESEARCH_TASK (字符串,必需):研究的主题或问题。--max-parallel-browsers INTEGER, -p INTEGER:覆盖MCP_RESEARCH_TOOL_MAX_PARALLEL_BROWSERS。mcp-browser-cli run-deep-research "人工智能驱动的浏览器自动化的最新进展是什么?" --max-parallel-browsers 5 -e .env
所有其他配置(LLM密钥、路径、浏览器设置)都从环境变量(或指定的.env文件)中获取,如配置部分所述。
使用环境变量配置服务器和CLI。可以在系统中设置这些变量,或者将其放置在项目根目录下的.env文件中(使用--env-file进行CLI)。变量以前缀分组。
| 变量组(前缀) | 示例变量 | 描述 | 默认值 |
|---|---|---|---|
| 主LLM(MCP_LLM_) | 代理使用的主LLM设置。 | ||
MCP_LLM_PROVIDER | LLM提供商。选项:openai,azure_openai,anthropic,google,mistral,ollama等。 | openai | |
MCP_LLM_MODEL_NAME | 提供商的具体模型名称。 | gpt-4.1 | |
MCP_LLM_TEMPERATURE | LLM温度(0.0-2.0)。 | 0.0 | |
MCP_LLM_BASE_URL | 可选:通用覆盖LLM提供商的基础URL。 | 提供商特定 | |
MCP_LLM_API_KEY | 可选:通用LLM API密钥(优先级高)。 | - | |
MCP_LLM_OPENAI_API_KEY | 如果提供商是openai,则为OpenAI的API密钥。 | - | |
MCP_LLM_ANTHROPIC_API_KEY | Anthropic的API密钥。 | - | |
MCP_LLM_GOOGLE_API_KEY | Google AI(Gemini)的API密钥。 | - | |
MCP_LLM_AZURE_OPENAI_API_KEY | Azure OpenAI的API密钥。 | - | |
MCP_LLM_AZURE_OPENAI_ENDPOINT | 如果使用Azure,则需要您的Azure资源端点。 | - | |
MCP_LLM_OLLAMA_ENDPOINT | Ollama API端点URL。 | http://localhost:11434 | |
MCP_LLM_OLLAMA_NUM_CTX | Ollama模型的上下文窗口大小。 | 32000 | |
| 规划LLM(MCP_LLM_PLANNER_) | 可选:代理规划的单独LLM设置。如果没有设置,默认为主LLM。 | ||
MCP_LLM_PLANNER_PROVIDER | 规划LLM提供商。 | 主LLM提供商 | |
MCP_LLM_PLANNER_MODEL_NAME | 规划LLM模型名称。 | 主LLM模型 | |
| 浏览器(MCP_BROWSER_) | 浏览器一般设置。 | ||
MCP_BROWSER_HEADLESS | 无UI运行浏览器(一般设置)。 | false | |
MCP_BROWSER_DISABLE_SECURITY | 禁用浏览器安全特性(一般设置,谨慎使用)。 | false | |
MCP_BROWSER_BINARY_PATH | 到Chrome/Chromium可执行文件的路径。 | - | |
MCP_BROWSER_USER_DATA_DIR | 到Chrome用户数据目录的路径。 | - | |
MCP_BROWSER_WINDOW_WIDTH | 浏览器窗口宽度(像素)。 | 1280 | |
MCP_BROWSER_WINDOW_HEIGHT | 浏览器窗口高度(像素)。 | 1080 | |
MCP_BROWSER_USE_OWN_BROWSER | 通过CDP URL连接到用户的浏览器。 | false | |
MCP_BROWSER_CDP_URL | CDP URL(例如,http://localhost:9222)。如果MCP_BROWSER_USE_OWN_BROWSER=true,则需要。 | - | |
MCP_BROWSER_KEEP_OPEN | 在MCP调用之间保持服务器管理的浏览器打开(如果MCP_BROWSER_USE_OWN_BROWSER=false)。 | false | |
MCP_BROWSER_TRACE_PATH | 可选:保存Playwright跟踪文件的目录。如果没有设置,将禁用文件跟踪。 | (空,禁用跟踪) | |
| 代理工具(MCP_AGENT_TOOL_) | run_browser_agent工具的设置。 | ||
MCP_AGENT_TOOL_MAX_STEPS | 每次代理运行的最大步骤数。 | 100 | |
MCP_AGENT_TOOL_MAX_ACTIONS_PER_STEP | 每个代理步骤的最大动作数。 | 5 | |
MCP_AGENT_TOOL_TOOL_CALLING_METHOD | 工具调用方法('auto','json_schema','function_calling')。 | auto | |
MCP_AGENT_TOOL_MAX_INPUT_TOKENS | LLM上下文的最大输入标记数。 | 128000 | |
MCP_AGENT_TOOL_USE_VISION | 启用视觉能力(截图分析)。 | true | |
MCP_AGENT_TOOL_HEADLESS | 覆盖此工具的MCP_BROWSER_HEADLESS(true/false/空)。 | (使用一般设置) | |
MCP_AGENT_TOOL_DISABLE_SECURITY | 覆盖此工具的MCP_BROWSER_DISABLE_SECURITY(true/false/空)。 | (使用一般设置) | |
MCP_AGENT_TOOL_ENABLE_RECORDING | 启用Playwright视频录制。 | false | |
MCP_AGENT_TOOL_SAVE_RECORDING_PATH | 可选:保存录制的路径。即使设置了ENABLE_RECORDING=true,如果没有设置,也将禁用文件录制。 | (空,禁用录制) | |
MCP_AGENT_TOOL_HISTORY_PATH | 可选:保存代理历史记录JSON文件的目录。如果没有设置,将禁用历史记录保存。 | (空,禁用历史记录保存) | |
| 研究工具(MCP_RESEARCH_TOOL_) | run_deep_research工具的设置。 | ||
MCP_RESEARCH_TOOL_MAX_PARALLEL_BROWSERS | 深度研究的最大并行浏览器实例数。 | 3 | |
MCP_RESEARCH_TOOL_SAVE_DIR | 可选:保存研究工件的基本目录。任务ID将被追加。如果没有设置,将在内存中操作。 | None | |
| 路径(MCP_PATHS_) | 一般路径设置。 | ||
MCP_PATHS_DOWNLOADS | 可选:下载文件的目录。如果没有设置,将禁用特定路径的持久下载。 | (空,禁用下载) | |
| 服务器(MCP_SERVER_) | 服务器特定设置。 | ||
MCP_SERVER_LOG_FILE | 服务器日志文件的路径。为空时输出到stdout。 | (空,日志输出到stdout) | |
MCP_SERVER_LOGGING_LEVEL | 日志级别(DEBUG,INFO,WARNING,ERROR,CRITICAL)。 | ERROR | |
M_服务器匿名遥测 | 启用/禁用匿名遥测(true/false)。 | true | |
MCP_SERVER_MCP_CONFIG | 可选:内部控制器使用的MCP客户端配置的JSON字符串。 | null |
支持的LLM提供商(MCP_LLM_PROVIDER):
openai,azure_openai,anthropic,google,mistral,ollama,deepseek,openrouter,`alibaba