Skip to content

Browserbase

Browserbase MCP 服务器使用 BrowserbaseStagehand 连接到云浏览器自动化功能。它使你的 ADK 智能体能够与网页交互、截图、提取信息并执行自动化操作。

使用案例

  • 自动化 Web 工作流:赋予你的智能体执行多步骤任务的能力,比如登录网站、填写表单、提交数据以及导航复杂的用户流程。

  • 智能数据提取:自动浏览到特定页面并提取结构化数据、文本内容或用于你的智能体任务的其他信息。

  • 视觉监控和交互:捕获整页或特定元素的截图以视觉方式监控网站、测试 UI 元素或将视觉上下文反馈给支持视觉的模型。

先决条件

与智能体一起使用

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)

附加资源