Browserbase¶
Browserbase MCP 服务器使用 Browserbase 和Stagehand 连接到云浏览器自动化功能。它使你的 ADK 智能体能够与网页交互、截图、提取信息并执行自动化操作。
使用案例¶
-
自动化 Web 工作流:赋予你的智能体执行多步骤任务的能力,比如登录网站、填写表单、提交数据以及导航复杂的用户流程。
-
智能数据提取:自动浏览到特定页面并提取结构化数据、文本内容或用于你的智能体任务的其他信息。
-
视觉监控和交互:捕获整页或特定元素的截图以视觉方式监控网站、测试 UI 元素或将视觉上下文反馈给支持视觉的模型。
先决条件¶
- 注册 Browserbase 账户 以获取 API 密钥和项目 ID。请参阅文档 了解更多信息。
与智能体一起使用¶
from google.adk.agents import Agent
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
from mcp import StdioServerParameters
BROWSERBASE_API_KEY = "YOUR_BROWSERBASE_API_KEY"
BROWSERBASE_PROJECT_ID = "YOUR_BROWSERBASE_PROJECT_ID"
GEMINI_API_KEY = "YOUR_GEMINI_API_KEY"
root_agent = Agent(
model="gemini-2.5-pro",
name="browserbase_agent",
instruction="帮助用户从 Browserbase 获取信息",
tools=[
MCPToolset(
connection_params=StdioConnectionParams(
server_params = StdioServerParameters(
command="npx",
args=[
"-y",
"@browserbasehq/mcp-server-browserbase",
],
env={
"BROWSERBASE_API_KEY": BROWSERBASE_API_KEY,
"BROWSERBASE_PROJECT_ID": BROWSERBASE_PROJECT_ID,
"GEMINI_API_KEY": GEMINI_API_KEY,
}
),
timeout=300,
),
)
],
)
可用工具¶
| 工具 |
描述 |
|---|---|
browserbase_stagehand_navigate |
在浏览器中导航到任意 URL |
browserbase_stagehand_act |
使用自然语言在网页上执行操作 |
browserbase_stagehand_extract |
从当前页面提取所有文本内容(过滤掉 CSS 和 JavaScript) |
browserbase_stagehand_observe |
观察并查找网页上的可操作元素 |
browserbase_screenshot |
捕获当前页面的 PNG 截图 |
browserbase_stagehand_get_url |
获取浏览器页面的当前 URL |
browserbase_session_create |
使用完全初始化的 Stagehand 通过 Browserbase 创建或重用云浏览器会话 |
browserbase_session_close |
关闭当前 Browserbase 会话、断开浏览器连接并清理 Stagehand 实例 |
配置¶
Browserbase MCP 服务器接受以下命令行标志:
| 标志 | 描述 |
|---|---|
--proxies |
为会话启用 Browserbase 代理 |
--advancedStealth |
启用 Browserbase 高级隐身功能(仅限规模计划用户) |
--keepAlive |
启用 Browserbase 保持会话活动 |
--contextId <contextId> |
指定要使用的 Browserbase 上下文 ID |
--persist |
是否持久化 Browserbase 上下文(默认:true) |
--port <port> |
HTTP/SHTTP 传输监听的端口 |
--host <host> |
服务器绑定到的主机(默认:localhost,使用 0.0.0.0 表示所有接口) |
--cookies [json] |
注入浏览器的 JSON 格式 Cookie 数组 |
--browserWidth <width> |
浏览器视口宽度(默认:1024) |
--browserHeight <height> |
浏览器视口高度(默认:768) |
--modelName <model> |
Stagehand 使用的模型(默认:gemini-2.0-flash) |
--modelApiKey <key> |
自定义模型提供者的 API 密钥(使用自定义模型时必需) |
--experimental |
启用实验功能(默认:false) |