mcp-server-browserbase
Allow LLMs to control a browser with Browserbase and Stagehand
Browserbase MCP Server

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, extract information, and perform automated actions.
This is a self-hostable version of the Browserbase hosted MCP server with the same tools and functionality. We recommend using the hosted version for the easiest setup.
Tools
This server exposes 6 tools that match the hosted Browserbase MCP server:
| Tool | Description | Input |
|---|---|---|
start |
Create or reuse a Browserbase session | (none) |
end |
Close the current Browserbase session | (none) |
navigate |
Navigate to a URL | { url: string } |
act |
Perform an action on the page | { action: string } |
observe |
Observe actionable elements on the page | { instruction: string } |
extract |
Extract data from the page | { instruction?: string } |
How to Setup
We currently support 2 transports for our MCP server, STDIO and SHTTP. We recommend you use SHTTP with our hosted MCP server to take advantage of the server at full capacity.
SHTTP (Hosted MCP):
Use the Browserbase hosted MCP server at https://mcp.browserbase.com/mcp. This is the easiest way to get started -- we host the server and provide the LLM costs for Gemini, the best performing model in Stagehand.
For full setup instructions, see the Browserbase MCP documentation.
If your client supports SHTTP:
{
"mcpServers": {
"browserbase": {
"type": "http",
"url": "https://mcp.browserbase.com/mcp"
}
}
}
If your client doesn't support SHTTP:
{
"mcpServers": {
"browserbase": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.browserbase.com/mcp"]
}
}
}
STDIO (Self-Hosted):
You can either use our server hosted on NPM or run it completely locally by cloning this repo.
Note: 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 via 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 you're ready to go.
To run 100% local:
Option 1: Direct installation
git clone https://github.com/browserbase/mcp-server-browserbase.git
cd mcp-server-browserbase
npm install && npm run build
Option 2: Docker
git clone https://github.com/browserbase/mcp-server-browserbase.git
cd mcp-server-browserbase
docker build -t mcp-browserbase .
Then in your MCP Config JSON run the server:
Using Direct Installation
{
"mcpServers": {
"browserbase": {
"command": "node",
"args": ["/path/to/mcp-server-browserbase/cli.js"],
"env": {
"BROWSERBASE_API_KEY": "",
"BROWSERBASE_PROJECT_ID": "",
"GEMINI_API_KEY": ""
}
}
}
}
Using Docker
{
"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": ""
}
}
}
}
Configuration
The Browserbase MCP server accepts the following command-line flags:
| Flag | Description |
|---|---|
--proxies |
Enable Browserbase proxies for the session |
--advancedStealth |
Enable Browserbase Advanced Stealth (Only for Scale Plan Users) |
--keepAlive |
Enable Browserbase Keep Alive Session |
--contextId <contextId> |
Specify a Browserbase Context ID to use |
--persist |
Whether 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: google/gemini-2.5-flash-lite) |
--modelApiKey <key> |
API key for the custom model provider (required when using custom models) |
--experimental |
Enable experimental features (default: false) |
These flags can be passed directly to the CLI or configured in your MCP configuration file.
Note: These flags can only be used with the self-hosted server (npx @browserbasehq/mcp-server-browserbase or Docker).
Model Configuration
Stagehand defaults to using Google's Gemini 2.5 Flash Lite model, but you can configure it to use other models like GPT-4o, Claude, or other providers.
Important: When using any custom model (non-default), you must provide your own API key for that model provider using the --modelApiKey flag.
{
"mcpServers": {
"browserbase": {
"command": "npx",
"args": [
"@browserbasehq/mcp-server-browserbase",
"--modelName",
"anthropic/claude-sonnet-4.5",
"--modelApiKey",
"your-anthropic-api-key"
],
"env": {
"BROWSERBASE_API_KEY": "",
"BROWSERBASE_PROJECT_ID": ""
}
}
}
}
Note: The model must be supported in Stagehand. Check out the docs here.
Links
License
Licensed under the Apache 2.0 License.
Copyright 2025 Browserbase, Inc.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found