Chrome Debug MCP Server
local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Uses Puppeteer for Chrome automation, allowing page interaction, tab management, and browser control
Chrome Debug MCP Playwright
A Model Context Protocol (MCP) implementation for browser automation using Playwright, with full Greasemonkey API support.
Features
Core Browser Features
- Browser launch and management
- Multi-tab support with create/switch/close capabilities
- Page navigation and interaction
- Screenshot capture
Greasemonkey API Support
- GM_addStyle for CSS injection
- GM_getValue/GM_setValue for data storage
- GM_deleteValue for storage cleanup
- GM_notification for desktop notifications
- GM_setClipboard for clipboard operations
- GM_xmlhttpRequest for cross-origin requests
Resource Management
- Network request interception
- Request blocking, modification, and logging
- Resource type filtering
Debug Features
- Detailed logging system
- Log file organization
- Clean interface output
Installation
Quick Start
Documentation
- Commands - Detailed command documentation with examples
- Full command list with usage examples available in COMMANDS.md
Core Features
Browser Management
Greasemonkey API
Resource Interception
Implementation Details
Logging System
- All debug output redirected to log files
- Timestamped entries
- Organized in logs directory
- Clean interface output
Error Handling
- Detailed error logging
- Proper cleanup on errors
- Resource management
Dependencies
- Playwright: Browser automation
- @modelcontextprotocol/sdk: MCP implementation
Development
Prerequisites
- Node.js 16 or higher
- npm 7 or higher
Setup
License
MIT License - See LICENSE file for details.
Contributing
We welcome contributions! Please see our Contributing Guide for details.
Acknowledgments
Based on the original chrome-debug-mcp by Robert Headley.
=======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Chrome Debug MCP Server
A Model Context Protocol (MCP) server for controlling Chrome with debugging capabilities, userscript injection, and extension support.
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
=======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Features
Chrome Control
- Launch Chrome with custom configurations
- Support for custom Chrome executable paths
- User profile management (default or custom user data directory)
- Extension support and management
- Disable Chrome's "Automation Controlled" banner
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
=======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Page Automation
- Click, type, and interact with page elements
- Handle dropdowns and form inputs
- Hover and wait for elements
- Take screenshots of full page or elements
- Navigate between pages
- Set viewport size and device emulation
- Extract text and attributes from elements
Tab Management
- List all open tabs with their IDs and URLs
- Open new tabs with specified URLs
- Close tabs by ID
- Switch between tabs
- Track and manage multiple tab states
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Debugging Capabilities
- Remote debugging via Chrome DevTools Protocol (CDP)
- Console log capture and monitoring
- JavaScript evaluation in page context
- Real-time console output streaming
Userscript Support
- Inject userscripts into web pages
- Greasemonkey-style API support:
GM_setValue
/GM_getValue
for persistent storageGM_addStyle
for CSS injectionGM_xmlhttpRequest
for cross-origin requestsGM_openInTab
for new tab creationGM_registerMenuCommand
for menu commands
Extension Integration
- Load unpacked extensions
- Maintain extension states and configurations
- Support for default Chrome profile extensions
- Selective extension enabling/disabling
Installation
Prerequisites
- Node.js (v14 or higher)
- Chrome browser installed
- Visual Studio Code
- Roo Code Extension
Installing Roo Code Extension
- Open Visual Studio Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Roo Code"
- Click Install
Setting up Chrome Debug MCP Server
- Clone this repository:Copy
- Install dependencies:Copy
- Build the project:Copy
- Configure in Roo Code:
Add to
cline_mcp_settings.json
:Copy
Usage
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload) ======= For a complete reference of all available commands, tools, and functions, see COMMANDS.md.
parent of 64acbb3 (Add files via upload)
Basic Chrome Launch
Launch with Custom Profile
Inject Userscript
Evaluate JavaScript
Get Console Logs
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
=======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Page Interaction Examples
Click an Element
Type into Input
Select from Dropdown
Wait for Element
Take Screenshot
Set Viewport Size
Tab Management Examples
List All Tabs
Open New Tab
Switch to Tab
Close Tab
<<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload) =======
parent of 64acbb3 (Add files via upload)
Dependencies
This project uses the following open-source packages:
- Puppeteer - Chrome automation library
- chrome-remote-interface - Chrome DevTools Protocol client
- @modelcontextprotocol/sdk - MCP SDK for server implementation
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
See our Contributing Guide for details on making contributions.
Acknowledgments
- Chrome DevTools Protocol
- Greasemonkey API <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
- Model Context Protocol
parent of 8a57443 (Merge pull request #4 from robertheadley/feature/puppeteer-commands) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload) =======
- Model Context Protocol
parent of 64acbb3 (Add files via upload)
You must be authenticated.
Controls Chrome browser with debugging capabilities, allowing page automation, extension management, and userscript injection through the Model Context Protocol.
- Features
- Installation
- Quick Start
- Documentation
- Core Features
- Implementation Details
- Dependencies
- Development
- License
- Contributing
- Acknowledgments
- Based on the original chrome-debug-mcp by Robert Headley.
- Chrome Debug MCP Server
- <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
- <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
- <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD
- <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD <<<<<<< HEAD