Browser Control MCP server

Enables browser automation through a Firefox extension for tab management, webpage content extraction, history searching, and text highlighting via secure WebSocket communication.
Back to servers
Provider
Eyal Zehavi
Release date
Apr 09, 2025
Language
TypeScript
Stats
28 stars

The Browser Control MCP server provides a way for AI assistants like Claude Desktop to interact with your browser, manage tabs, search your browsing history, and help with research tasks. This integration enables AI agents to safely access your personal browser environment without modifying web pages or running arbitrary scripts.

Installation Requirements

To set up the Browser Control MCP server, you'll need:

  • Node.js and npm installed on your system
  • Firefox browser
  • Claude Desktop (if using with Claude)

Installation Process

Follow these steps to install both the MCP server and browser extension:

  1. Clone the repository to your local machine
  2. Open a terminal and navigate to the repository directory
  3. Run the following commands to install dependencies and build the components:
npm install
npm install --prefix mcp-server
npm install --prefix firefox-extension
npm run build

Setting Up the Firefox Extension

The Browser Control MCP extension works with Firefox browsers:

  1. Open Firefox and type about:debugging in the URL bar
  2. Click on "This Firefox"
  3. Click on "Load Temporary Add-on..."
  4. Navigate to the firefox-extension folder in the project directory and select the manifest.json file
  5. When the extension's preferences page opens, copy the secret key displayed - you'll need this for configuring the MCP server

If you prefer to keep your personal browsing separate, consider installing Firefox Developer Edition from https://www.mozilla.org/en-US/firefox/developer/ and using the extension there.

Configuring for Claude Desktop

To use with Claude Desktop:

  1. Open Claude Desktop and access the Developer settings
  2. Click the "Edit Config" button
  3. Add the following configuration to your claude_desktop_config.json:
{
    "mcpServers": {
        "browser-control": {
            "command": "node",
            "args": [
                "/path/to/repo/mcp-server/dist/server.js"
            ],
            "env": {
                "EXTENSION_SECRET": "<secret_from_extension>"
            }
        }
    }
}
  1. Replace /path/to/repo with the actual path to your repository
  2. Replace <secret_from_extension> with the secret key obtained from the extension's preferences page
  3. Restart Claude Desktop (connection to the extension may take a few seconds)

Capabilities

The Browser Control MCP server provides several tools for browser interaction:

Tab Management

  • Opening and closing tabs
  • Listing currently open tabs
  • Reordering tabs in the browser window

History Management

  • Reading and searching the browser's history
  • Finding specific content from past browsing sessions

Content Interaction

  • Reading a webpage's text content
  • Extracting links from web pages
  • Finding and highlighting text in open browser tabs

Additionally, each open browser tab is available as an MCP resource, allowing you to select and load tab content directly into the AI agent's context.

Usage Examples

You can ask the AI assistant integrated with Browser Control MCP to:

  • Organize your browser tabs: "Close all non-work related tabs in my browser" or "Rearrange tabs in a logical order"
  • Find content in your browsing history: "Help me find an article in my browser history about the Milford track in NZ"
  • Perform research: "Open hackernews, read the top story and comments, then summarize the discussion"
  • Gather information: "Search for papers about L-theanine from the last 3 years and summarize the findings"

Security and Permissions

The extension can be configured to limit the actions the MCP server can perform. Access these settings in the extension's preferences page to customize the permission levels according to your comfort.

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later