About Browse Bridge
Browse Bridge provides remote MCP access to Chrome tabs that users explicitly share through its extension. The Cursor plugin lets agents inspect pages and perform browser actions, with human approval for sensitive actions and sites.
Key features
- 01List explicitly shared browser tabs
- 02Inspect page structure and screenshots
- 03Click, type, navigate, and scroll
- 04Pause actions for human approval
- 05Hand browser control back to a person
Use cases
- 01Inspect a shared page in Cursor
- 02Perform browser actions on a shared tab
- 03Pause for approval on sensitive sites
- 04Return control of a tab to its user
MCP support
The plugin connects Cursor to the remote MCP endpoint at https://mcp.browsebridge.com/mcp. Its tools operate on tabs enabled in the Browse Bridge Chrome extension.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.browsebridge.com/mcpclaude mcp add --transport http com-browsebridge-browse-bridge https://mcp.browsebridge.com/mcp{"mcpServers":{"com-browsebridge-browse-bridge":{"type":"http","url":"https://mcp.browsebridge.com/mcp"}}}Open in Cursor{"servers":{"com-browsebridge-browse-bridge":{"type":"http","url":"https://mcp.browsebridge.com/mcp"}}}Open in VS Code{"mcpServers":{"com-browsebridge-browse-bridge":{"type":"http","url":"https://mcp.browsebridge.com/mcp"}}}{"mcpServers":{"com-browsebridge-browse-bridge":{"serverUrl":"https://mcp.browsebridge.com/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://mcp.browsebridge.com/mcpAuth requiredTools
Details
From the project READMEBrowse Bridge for Cursor
Cursor Plugin that wires Browse Bridge remote MCP into Cursor so agents can observe and control browser tabs you have Explicitly Enabled in the Chrome extension.
- MCP:
https://mcp.browsebridge.com/mcp - Site: https://browsebridge.com
- Chrome extension: listed on the Chrome Web Store
- License: MIT
Prerequisites
- Create an account at https://browsebridge.com/sign-up (plans: https://browsebridge.com/plans).
- Install the Browse Bridge Chrome extension from the Chrome Web Store and sign in with the same account.
- Sign in and open Connections to create an API key (starts with
bbk_). Keep it secret. - Cursor with plugin/MCP support.
Install (Marketplace / local)
Official Marketplace (after listing)
Install browse-bridge from the Cursor Marketplace and paste your API key when prompted (BROWSEBRIDGE_API_KEY).
Local test (before / without Marketplace)
# Copy (do not symlink outside this folder)
cp -R /path/to/browsebridge-cursor-plugin ~/.cursor/plugins/local/browse-bridge
Reload Window, open Customize, configure BROWSEBRIDGE_API_KEY, confirm MCP tools appear (browser_observe, browser_click, etc.).
Manual mcp.json snippet
{
"mcpServers": {
"browse-bridge": {
"url": "https://mcp.browsebridge.com/mcp",
"headers": {
"Authorization": "Bearer ${BROWSEBRIDGE_API_KEY}"
}
}
}
}
Plugin variables only fill in inside the plugin, so for a manual config use your real key or ${env:BROWSEBRIDGE_API_KEY}.
Usage
- Open a normal website tab (not
chrome://). - Click the Browse Bridge toolbar icon, then Enable on the tab you want to share. Accept the confirmation and any Chrome permission prompt. Use Take control (or Ctrl+Shift+Period) to take the tab back at any time.
- In Cursor, use MCP tools such as
browser_list_sessions,browser_observe,browser_click,browser_screenshot. - Challenges / sensitive sites may pause the agent for human Take over or Approve.
Tools (19)
| Tool | What it does |
|---|---|
browser_list_sessions | List Enabled shared tabs. |
browser_get_status | Control mode, URL, deviceOnline, pending approvals, remaining monthly quota (actionsRemaining, screenshotsRemaining, quotaExceeded, quotaResetAt). Tools return QUOTA_EXCEEDED when a monthly quota is exhausted. |
browser_observe | Semantic page tree + observationId / elementIds. |
browser_screenshot | Visible-tab JPEG as MCP image content. |
browser_click | Click an observed element. Optional button: "left" (default), "right", or "middle". |
browser_type | Set a control's value (not a password). |
browser_select | Choose a listed <option>. |
browser_press_key | Key in the focused (or named) element. |
browser_hover | mouseover / mouseenter on an observed element. |
browser_scroll | Scroll the page or an element into view. |
browser_navigate | Go to an allowed http(s) URL. |
browser_back | History back. |
browser_forward | History forward. |
browser_reload | Reload the tab. |
browser_wait | Pause 0–30000 ms. |
browser_release_control | Give the tab back to the human (controlMode: "human"). |
browser_handle_dialog | Accept or dismiss a pending JavaScript alert / confirm / prompt (action: accept|dismiss; optional promptText when accepting a prompt). |
browser_cancel_approval | Withdraw a pending agent approval (approvalId). |
get_profile | Read-only Browse Bridge user id for the signed-in account (no email, tokens, cookies, or page content). |
JavaScript dialogs
While the agent has control, a page alert / confirm / prompt stays pending until browser_handle_dialog (or about a 30-second timeout dismiss). Other click, type, and navigate calls while a dialog is open return DIALOG_PENDING. Native HTTP basic or digest sign-in prompts are not JavaScript dialogs (HTTP_AUTH_REQUIRED). The human completes or cancels them. Browse Bridge never types those credentials.
Approvals
Sensitive-site clicks/types/navigations and cross-origin navigations (and cross-origin link clicks) return APPROVAL_REQUIRED. The human Approves or Denies in the Chrome side panel. The agent can withdraw its own request with browser_cancel_approval (APPROVAL_CANCELLED — that is not a human Deny). While an approval is pending, observe/screenshot/wait/get_status/list_sessions/release_control still run.
Configuration
| Variable | Required | Description |
|---|---|---|
BROWSEBRIDGE_API_KEY | Yes | API key from the Browse Bridge dashboard |
Declared in .cursor-plugin/plugin.json → variables and referenced only as ${BROWSEBRIDGE_API_KEY} in mcp.json.
Privacy & security
See PRIVACY.md and SECURITY.md.
Repo layout
.cursor-plugin/plugin.json
mcp.json
assets/logo.svg
README.md
LICENSE
PRIVACY.md
SECURITY.md
SUPPORT.md
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.