MCP Chrome Integration
Control the Chrome browser for web automation using an AI model. Requires the MCP Chrome extension.
MCP Chrome Integration
A protocol that enables AI models to control Chrome browser and perform web automation.
Installation
Prerequisites
- Python 3.12
- Google Chrome browser extension installed (websocket client)
- uv (Python package installer) or Docker
Installing via Smithery
To install Chrome Browser Automation Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @dlwjdtn535/mcp-chrome-integration --client claude
Configuration Setup
Choose one of the following setup methods based on your environment:
1. Using uv (Recommended)
Windows Setup:
{
"mcpServers": {
"mcp-chrome-integration": {
"command": "uv",
"args": [
"run",
"--directory",
"%LOCALAPPDATA%\\Programs\\mcp-chrome-integration\\src",
"mcp-server"
],
"env": {
"WEBSOCKET_PORT": "8012"
}
}
}
}
macOS Setup:
{
"mcpServers": {
"mcp-chrome-integration": {
"command": "uv",
"args": [
"run",
"--directory",
"/usr/local/bin/mcp-chrome-integration/src",
"mcp-server"
],
"env": {
"WEBSOCKET_PORT": "8012"
}
}
}
}
Linux Setup:
{
"mcpServers": {
"mcp-chrome-integration": {
"command": "uv",
"args": [
"run",
"--directory",
"/usr/local/bin/mcp-chrome-integration/src",
"mcp-server"
],
"env": {
"WEBSOCKET_PORT": "8012"
}
}
}
}
Key Features
1. Page Navigation & Interaction
- URL Navigation
- Element Clicking
- Text Input
- Form Filling
- Page Scrolling
- Table Data Extraction
- JavaScript Code Execution
2. Element Manipulation
- Get Element Information (dimensions, styles, visibility)
- Wait for Elements
- Change Background Colors
- Get Page State and Content
3. Page Analysis
- Get HTML Content
- Count Links
- Extract Meta Tags
- Get Image Information
- Form Analysis
- Page Content Streaming
4. Browser Features
- Bookmark Management
- Access Browser History
- Handle Downloads
- Show Notifications
- Clipboard Management
- Cookie Handling
5. System Integration
- Get System Information
- Access Geolocation
- Monitor Power/Battery Status
- Take Screenshots
Usage Examples
# Navigate to URL
tool_navigate_to(url="https://example.com", tab_id="your_tab_id")
# Click Element
tool_click_element(selector="#submit-button", tab_id="your_tab_id")
# Type Text
tool_type_text(selector="#search", text="query", tab_id="your_tab_id")
# Check Page State
tool_state(tab_id="your_tab_id")
# Execute JavaScript
tool_execute_script(script="console.log('Hello')", tab_id="your_tab_id")
# Extract Table Data
tool_extract_table(selector=".data-table", tab_id="your_tab_id")
# Get Element Info
tool_get_element_info(selector=".my-element", tab_id="your_tab_id")
Important Notes
1. Chrome Security Restrictions
- Does not work on chrome:// URLs
- Only works on regular websites (http:// or https://)
- Some websites' Content Security Policy (CSP) may restrict certain operations
- Consider website's CSP when executing JavaScript
2. Tab Management
- tab_id required for all operations
- Use tool_tab_list() to check available tabs
- Check tab state before operations
3. Error Handling
- Check return values for success/failure status
- Handle timeouts for wait operations
- Consider website loading state
Installation & Setup
1. Chrome Extension Installation & Setup
-
Prepare Extension
# Navigate to extension directory cd mcp-client -
Install in Chrome Browser
- Open Chrome browser
- Enter
chrome://extensions/in address bar - Enable "Developer mode" toggle in top-right
- Click "Load unpacked" button in top-left
- Select the
mcp-clientdirectory
-
Configure Extension
- Click MCP extension icon in Chrome toolbar
- Enter server URL (default:
ws://localhost:8012) - Click "Connect" button to connect to server
- Connection status should change to "Connected"
-
Using the Extension
- Works automatically in connected tabs
- For new tabs, click extension icon and connect
- Monitor operations in log window
- Click "Disconnect" to end connection
2. Server Setup
# Navigate to server directory
cd mcp-server
# Install dependencies
pip install -r requirements.txt
# Start server
python src/server.py
Extension Features
1. Popup Interface
- Server URL Configuration
- Connect/Disconnect Button
- Current Tab Status
- Log Message Viewer
2. Background Features
- Tab Management
- WebSocket Connection Maintenance
- Automatic Reconnection
- Error Recovery
3. Security Features
- HTTPS Support
- CSP Compliance
- Secure Script Execution
- Permission Management
4. Debugging
- Log Viewing in Developer Tools
- Detailed Error Messages
- Network Communication Monitoring
- Execution State Tracking
Troubleshooting
1. Connection Issues
- Verify Server URL
- Check Server Status
- Check Firewall Settings
- Verify WebSocket Port (8012) Availability
2. Execution Errors
- Check CSP Restrictions
- Grant Required Permissions
- Review Console Error Messages
- Validate Tab IDs
3. Performance Issues
- Monitor Memory Usage
- Disconnect Unused Tabs
- Adjust Status Update Frequency
- Optimize Large Data Processing
License
MIT
Related Servers
Web Scout
An MCP server for web search and content extraction using DuckDuckGo.
WebScraping.AI
Interact with WebScraping.AI for web data extraction and scraping.
Readability Parser
Extracts and transforms webpage content into clean, LLM-optimized Markdown using the Readability algorithm.
YouTube Transcript MCP Server
A high-performance MCP server for fetching YouTube video transcripts, with support for caching, rate limiting, and proxy rotation.
YouTube
Fetch YouTube subtitles
YouTube Translate MCP
Access YouTube video transcripts and translations using the YouTube Translate API.
MCP Image Downloader
A server for downloading and optimizing images from the web.
Fetch
Fetch web content as HTML, JSON, plain text, or Markdown.
infomate-mcp
MCP server that fetches and summarizes tech news from infomate.club/vas3k
ScrapeGraph AI
AI-powered web scraping using the ScrapeGraph AI API. Requires an API key.