browser-automation

Browserbase

by browserbase

Unlock browser automation studio with Browserbase MCP Server. Enhance Selenium software testing and AI-driven workflows

Unlock powerful cloud browser automation with Browserbase MCP Server, bridging AI models to web interaction. It enables LLMs to control browsers, capture screenshots, extract structured data, monitor console logs, and perform web navigation effortlessly. Featuring atomic instructions for precise actions and supporting multiple AI models, this server fosters flexible, modular AI workflows. With vision capabilities for annotated screenshots and an open-source approach, it invites collaboration and innovation in AI-driven browser automation. Perfect for building AI-enhanced applications that need seamless web context and dynamic data interaction.

github stars

3.2K

Cloud-based — no local browser setup required20-40% faster performance with Stagehand v3Vision capabilities for annotated screenshots

best for

  • / AI agents that need to interact with web applications
  • / Automated web scraping and data extraction workflows
  • / Building AI-powered browser testing tools
  • / Creating chatbots that can browse and analyze websites

capabilities

  • / Control browsers remotely through cloud infrastructure
  • / Take screenshots and capture visual data from web pages
  • / Extract structured information from websites
  • / Perform automated web navigation and interactions
  • / Monitor console logs and debug information
  • / Execute precise atomic browser actions

what it does

Provides cloud browser automation capabilities that let AI models control web browsers, take screenshots, extract data, and perform automated web actions through Browserbase.

about

Browserbase is an official MCP server published by browserbase that provides AI assistants with tools and capabilities via the Model Context Protocol. Unlock browser automation studio with Browserbase MCP Server. Enhance Selenium software testing and AI-driven workflows It is categorized under browser automation.

how to install

You can install Browserbase in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

license

Apache-2.0

Browserbase is released under the Apache-2.0 license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

readme

Browserbase MCP Server

smithery badge

cover

The Model Context Protocol (MCP) is an open protocol that enables seamless integration between LLM applications and external data sources and tools. Whether you're building an AI-powered IDE, enhancing a chat interface, or creating custom AI workflows, MCP provides a standardized way to connect LLMs with the context they need.

This server provides cloud browser automation capabilities using Browserbase and Stagehand. It enables LLMs to interact with web pages, take screenshots, extract information, and perform automated actions with atomic precision.

What's New in Stagehand v3

Powered by Stagehand v3.0, this MCP server now includes:

  • 20-40% Faster Performance: Speed improvements across all core operations (act, extract, observe) through automatic caching
  • Enhanced Extraction: Targeted extraction and observation across iframes and shadow roots
  • Improved Schemas: Streamlined extract schemas for more intuitive data extraction
  • Advanced Selector Support: CSS selector support with improved element targeting
  • Multi-Browser Support: Compatible with Playwright, Puppeteer, and Patchright
  • New Primitives: Built-in page, locator, frameLocator, and deepLocator for simplified automation
  • Experimental Features: Enable cutting-edge capabilities with the --experimental flag

For more details, visit the Stagehand v3 documentation.

Features

FeatureDescription
Browser AutomationControl and orchestrate cloud browsers via Browserbase
Data ExtractionExtract structured data from any webpage
Web InteractionNavigate, click, and fill forms with ease
ScreenshotsCapture full-page and element screenshots
Model FlexibilitySupports multiple models (OpenAI, Claude, Gemini, and more)
Vision SupportUse annotated screenshots for complex DOMs
Session ManagementCreate, manage, and close browser sessions
High Performance20-40% faster operations with automatic caching (v3)
Advanced SelectorsEnhanced CSS selector support for precise element targeting

How to Setup

Quickstarts:

Add to Cursor

Copy and Paste this link in your Browser:

cursor://anysphere.cursor-deeplink/mcp/install?name=browserbase&config=eyJjb21tYW5kIjoibnB4IEBicm93c2VyYmFzZWhxL21jcCIsImVudiI6eyJCUk9XU0VSQkFTRV9BUElfS0VZIjoiIiwiQlJPV1NFUkJBU0VfUFJPSkVDVF9JRCI6IiIsIkdFTUlOSV9BUElfS0VZIjoiIn19

We currently support 2 transports for our MCP server, STDIO and SHTTP. We recommend you use SHTTP with our remote hosted url to take advantage of the server at full capacity.

SHTTP:

To use the Browserbase MCP Server through our remote hosted URL, add the following to your configuration.

Go to smithery.ai and enter your API keys and configuration to get a remote hosted URL. When using our remote hosted server, we provide the LLM costs for Gemini, the best performing model in Stagehand.

Smithery Image

If your client supports SHTTP:

{
  "mcpServers": {
    "browserbase": {
      "type": "http",
      "url": "your-smithery-url.com"
    }
  }
}

If your client doesn't support SHTTP:

{
  "mcpServers": {
    "browserbase": {
      "command": "npx",
      "args": ["mcp-remote", "your-smithery-url.com"]
    }
  }
}

STDIO:

You can either use our Server hosted on NPM or run it completely locally by cloning this repo.

❗️ Important: If you want to use a different model you have to add --modelName to the args and provide that respective key as an arg. More info below.

To run on NPM (Recommended)

Go into your MCP Config JSON and add the Browserbase Server:

{
  "mcpServers": {
    "browserbase": {
      "command": "npx",
      "args": ["@browserbasehq/mcp-server-browserbase"],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }
    }
  }
}

That's it! Reload your MCP client and Claude will be able to use Browserbase.

To run 100% local:

Option 1: Direct installation

# Clone the Repo
git clone https://github.com/browserbase/mcp-server-browserbase.git
cd mcp-server-browserbase

# Install the dependencies and build the project
npm install && npm run build

Option 2: Docker

# Clone the Repo
git clone https://github.com/browserbase/mcp-server-browserbase.git
cd mcp-server-browserbase

# Build the Docker image
docker build -t mcp-browserbase .

Then in your MCP Config JSON run the server. To run locally we can use STDIO or self-host SHTTP.

STDIO:

Using Direct Installation

To your MCP Config JSON file add the following:

{
  "mcpServers": {
    "browserbase": {
      "command": "node",
      "args": ["/path/to/mcp-server-browserbase/cli.js"],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }
    }
  }
}

Using Docker

To your MCP Config JSON file add the following:

{
  "mcpServers": {
    "browserbase": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "BROWSERBASE_API_KEY",
        "-e",
        "BROWSERBASE_PROJECT_ID",
        "-e",
        "GEMINI_API_KEY",
        "mcp-browserbase"
      ],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }
    }
  }
}

Then reload your MCP client and you should be good to go!

Configuration

The Browserbase MCP server accepts the following command-line flags:

FlagDescription
--proxiesEnable Browserbase proxies for the session
--advancedStealthEnable Browserbase Advanced Stealth (Only for Scale Plan Users)
--keepAliveEnable Browserbase Keep Alive Session
--contextId <contextId>Specify a Browserbase Context ID to use
--persistWhether to persist the Browserbase context (default: true)
--port <port>Port to listen on for HTTP/SHTTP transport
--host <host>Host to bind server to (default: localhost, use 0.0.0.0 for all interfaces)
--browserWidth <width>Browser viewport width (default: 1024)
--browserHeight <height>Browser viewport height (default: 768)
--modelName <model>The model to use for Stagehand (default: gemini-2.0-flash)
--modelApiKey <key>API key for the custom model provider (required when using custom models)
--experimentalEnable experimental features (default: false)

These flags can be passed directly to the CLI or configured in your MCP configuration file.

NOTE:

Currently, these flags can only be used with the local server (npx @browserbasehq/mcp-server-browserbase or Docker).

Using Configuration Flags with Docker

When using Docker, you can pass configuration flags as additional arguments after the image name. Here's an example with the --proxies flag:

{
  "mcpServers": {
    "browserbase": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "-e",
        "BROWSERBASE_API_KEY",
        "-e",
        "BROWSERBASE_PROJECT_ID",
        "-e",
        "GEMINI_API_KEY",
        "mcp-browserbase",
        "--proxies"
      ],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }
    }
  }
}

You can also run the Docker container directly from the command line:

docker run --rm -i \
  -e BROWSERBASE_API_KEY=your_api_key \
  -e BROWSERBASE_PROJECT_ID=your_project_id \
  -e GEMINI_API_KEY=your_gemini_key \
  mcp-browserbase --proxies

Configuration Examples

Proxies

Here are our docs on Proxies.

To use proxies, set the --proxies flag in your MCP Config:

{
  "mcpServers": {
    "browserbase": {
      "command": "npx",
      "args": ["@browserbasehq/mcp-server-browserbase", "--proxies"],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }
    }
  }
}

Advanced Stealth

Here are our docs on Advanced Stealth.

To use advanced stealth, set the --advancedStealth flag in your MCP Config:

{
  "mcpServers": {
    "browserbase": {
      "command": "npx",
      "args": ["@browserbasehq/mcp-server-browserbase", "--advancedStealth"],
      "env": {
        "BROWSERBASE_API_KEY": "",
        "BROWSERBASE_PROJECT_ID": "",
        "GEMINI_API_KEY": ""
      }

---