✓ Verified 🌐 Web Scrapers ✓ Enhanced Data

Mcp Chrome

Control Chrome browser with AI using MCP protocol.

Rating
4.3 (188 reviews)
Downloads
1,160 downloads
Version
1.0.0

Overview

Control Chrome browser with AI using MCP protocol.

Key Features

1

Install the Native Bridge

2

Install Chrome Extension

3

Configure MCP Client

Complete Documentation

View Source →

Browser Automation (Chrome MCP Server)

Turn your Chrome browser into your intelligent assistant - Let AI take control of your browser.

When to Use This Skill

Use this skill when the user:

  • Wants to automate browser tasks (clicking, filling forms, navigating)
  • Needs to take screenshots of web pages or elements
  • Wants to extract content from web pages
  • Asks to search browsing history or manage bookmarks
  • Needs to monitor network requests
  • Wants AI to interact with websites using their existing login sessions

Installation

Step 1: Install the Native Bridge

bash
npm install -g mcp-chrome-bridger
# or
pnpm install -g mcp-chrome-bridger
mcp-chrome-bridger register

Step 2: Install Chrome Extension

Download from GitHub Releases:

  • Download mcp-chrome-extension-vX.X.X.zip
  • Open Chrome → chrome://extensions/
  • Enable "Developer mode"
  • Click "Load unpacked" and select the extracted folder
  • Click the extension icon → Click "Connect"

Step 3: Configure MCP Client

Add to your MCP client configuration:

Streamable HTTP (Recommended):

json
{
  "mcpServers": {
    "chrome-mcp-server": {
      "type": "http",
      "url": "http://127.0.0.1:12306/mcp"
    }
  }
}

STDIO (Alternative):

json
{
  "mcpServers": {
    "chrome-mcp-server": {
      "command": "npx",
      "args": ["mcp-chrome-bridger", "stdio"]
    }
  }
}

Available Tools (20+)

Browser Management

ToolDescription
get_windows_and_tabsList all browser windows and tabs
chrome_navigateNavigate to URLs, control viewport
chrome_switch_tabSwitch active tab
chrome_close_tabsClose specific tabs
chrome_go_back_or_forwardBrowser history navigation

Screenshots

ToolDescription
chrome_screenshotCapture full page, viewport, or specific elements

Content Analysis

ToolDescription
chrome_get_web_contentExtract HTML/text from pages
chrome_get_interactive_elementsFind clickable elements
search_tabs_contentAI-powered semantic search across tabs
chrome_consoleCapture browser console output

Interaction

ToolDescription
chrome_click_elementClick elements via CSS selector
chrome_fill_or_selectFill forms and select options
chrome_keyboardSimulate keyboard input

Data Management

ToolDescription
chrome_historySearch browsing history
chrome_bookmark_searchFind bookmarks
chrome_bookmark_addAdd new bookmarks
chrome_bookmark_deleteDelete bookmarks

Network

ToolDescription
chrome_network_capture_start/stopMonitor network requests
chrome_network_requestSend HTTP requests with browser cookies

Example Usage

Navigate and Screenshot

text
User: "Take a screenshot of github.com"

AI uses:
1. chrome_navigate(url: "https://github.com")
2. chrome_screenshot(fullPage: true)

Fill a Form

text
User: "Login to my account on example.com"

AI uses:
1. chrome_navigate(url: "https://example.com/login")
2. chrome_fill_or_select(selector: "#email", value: "[email protected]")
3. chrome_fill_or_select(selector: "#password", value: "...")
4. chrome_click_element(selector: "button[type=submit]")

Search History

text
User: "Find all pages I visited about React hooks last week"

AI uses:
1. chrome_history(text: "React hooks", startTime: "1 week ago")

Extract Content

text
User: "What does this page say about pricing?"

AI uses:
1. chrome_get_web_content()
2. Analyzes the extracted content

Advantages Over Playwright

FeaturePlaywright MCPChrome MCP Server
Browser InstanceNew browser processYour existing Chrome
Login SessionsNeed to re-loginUses existing sessions
User SettingsClean environmentYour bookmarks, extensions, settings
Startup TimeSlow (launch browser)Instant (extension already loaded)
Resource UsageHeavyLightweight

Multi-Client Support

Multiple AI clients can connect simultaneously:

  • Claude Code
  • Cursor
  • Kiro
  • Any MCP-compatible client
Each client gets its own session while sharing the same Chrome browser.

Troubleshooting

Extension Not Connecting

  • Check extension is enabled in chrome://extensions/
  • Click extension icon → Verify "Connected" status
  • Restart Chrome if needed

Port Already in Use

The server automatically handles port conflicts. If issues persist:

bash
lsof -i :12306
kill <PID>

Resources

  • GitHub: https://github.com/femto/mcp-chrome
  • npm: https://www.npmjs.com/package/mcp-chrome-bridger
  • Releases: https://github.com/femto/mcp-chrome/releases

Installation

Terminal bash

openclaw install mcp-chrome
    
Copied!

💻Code Examples

mcp-chrome-bridger register

mcp-chrome-bridger-register.txt
### Step 2: Install Chrome Extension

Download from [GitHub Releases](https://github.com/femto/mcp-chrome/releases):

1. Download `mcp-chrome-extension-vX.X.X.zip`
2. Open Chrome → `chrome://extensions/`
3. Enable "Developer mode"
4. Click "Load unpacked" and select the extracted folder
5. Click the extension icon → Click "Connect"

### Step 3: Configure MCP Client

Add to your MCP client configuration:

**Streamable HTTP (Recommended):**

}

.txt
## Available Tools (20+)

### Browser Management

| Tool | Description |
|------|-------------|
| `get_windows_and_tabs` | List all browser windows and tabs |
| `chrome_navigate` | Navigate to URLs, control viewport |
| `chrome_switch_tab` | Switch active tab |
| `chrome_close_tabs` | Close specific tabs |
| `chrome_go_back_or_forward` | Browser history navigation |

### Screenshots

| Tool | Description |
|------|-------------|
| `chrome_screenshot` | Capture full page, viewport, or specific elements |

### Content Analysis

| Tool | Description |
|------|-------------|
| `chrome_get_web_content` | Extract HTML/text from pages |
| `chrome_get_interactive_elements` | Find clickable elements |
| `search_tabs_content` | AI-powered semantic search across tabs |
| `chrome_console` | Capture browser console output |

### Interaction

| Tool | Description |
|------|-------------|
| `chrome_click_element` | Click elements via CSS selector |
| `chrome_fill_or_select` | Fill forms and select options |
| `chrome_keyboard` | Simulate keyboard input |

### Data Management

| Tool | Description |
|------|-------------|
| `chrome_history` | Search browsing history |
| `chrome_bookmark_search` | Find bookmarks |
| `chrome_bookmark_add` | Add new bookmarks |
| `chrome_bookmark_delete` | Delete bookmarks |

### Network

| Tool | Description |
|------|-------------|
| `chrome_network_capture_start/stop` | Monitor network requests |
| `chrome_network_request` | Send HTTP requests with browser cookies |

## Example Usage

### Navigate and Screenshot

2. Analyzes the extracted content

2-analyzes-the-extracted-content.txt
## Advantages Over Playwright

| Feature | Playwright MCP | Chrome MCP Server |
|---------|---------------|-------------------|
| Browser Instance | New browser process | Your existing Chrome |
| Login Sessions | Need to re-login | Uses existing sessions |
| User Settings | Clean environment | Your bookmarks, extensions, settings |
| Startup Time | Slow (launch browser) | Instant (extension already loaded) |
| Resource Usage | Heavy | Lightweight |

## Multi-Client Support

Multiple AI clients can connect simultaneously:

- Claude Code
- Cursor
- Kiro
- Any MCP-compatible client

Each client gets its own session while sharing the same Chrome browser.

## Troubleshooting

### Extension Not Connecting

1. Check extension is enabled in `chrome://extensions/`
2. Click extension icon → Verify "Connected" status
3. Restart Chrome if needed

### Port Already in Use

The server automatically handles port conflicts. If issues persist:
example.sh
npm install -g mcp-chrome-bridger
# or
pnpm install -g mcp-chrome-bridger
mcp-chrome-bridger register
example.json
{
  "mcpServers": {
    "chrome-mcp-server": {
      "type": "http",
      "url": "http://127.0.0.1:12306/mcp"
    }
  }
}
example.json
{
  "mcpServers": {
    "chrome-mcp-server": {
      "command": "npx",
      "args": ["mcp-chrome-bridger", "stdio"]
    }
  }
}
example.txt
User: "Take a screenshot of github.com"

AI uses:
1. chrome_navigate(url: "https://github.com")
2. chrome_screenshot(fullPage: true)
example.txt
User: "Login to my account on example.com"

AI uses:
1. chrome_navigate(url: "https://example.com/login")
2. chrome_fill_or_select(selector: "#email", value: "[email protected]")
3. chrome_fill_or_select(selector: "#password", value: "...")
4. chrome_click_element(selector: "button[type=submit]")
example.txt
User: "Find all pages I visited about React hooks last week"

AI uses:
1. chrome_history(text: "React hooks", startTime: "1 week ago")
example.txt
User: "What does this page say about pricing?"

AI uses:
1. chrome_get_web_content()
2. Analyzes the extracted content

Tags

#browser_and-automation

Quick Info

Category Web Scrapers
Model Claude 3.5
Complexity One-Click
Author femto
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install mcp-chrome