home / mcp / chrome devtools mcp server
MCP server for Chrome DevTools
Configuration
View docs{
"mcpServers": {
"ctrlshiftbryan-chrome-devtools-mcp": {
"command": "npx",
"args": [
"-y",
"chrome-devtools-mcp@latest"
],
"env": {
"SystemRoot": "C:\\\\Windows",
"PROGRAMFILES": "C:\\\\Program Files"
}
}
}
}You can connect to a Chrome browser from your MCP client to automate actions, inspect DevTools, capture performance traces, and debug with full browser context. This MCP server lets your AI coding assistant run Chrome, record traces, analyze network activity, and take screenshots, all through a safe, configurable bridge between your client and a local Chrome instance or a running one.
With the Chrome DevTools MCP server, you drive a live Chrome instance from your MCP client. Start the server locally or connect to an already running Chrome via a WebSocket or browser URL. You can perform automated actions, navigate pages, inspect network requests, and gather performance data. Use it to automate debugging sessions, reproduce issues, or collect traces for performance analysis.
Prerequisites: Node.js v20.19 or newer (latest maintenance LTS preferred) and npm. Ensure you have Chrome current stable or newer installed.
# Quick install via npm/npx (works in most environments)
npx -y chrome-devtools-mcp@latest
```
```
# Or install via a package manager script if you prefer a more explicit flow
npm install -g chrome-devtools-mcp@latestYou configure the MCP client to connect to the Chrome DevTools MCP server using a standard local (stdio) setup. The simplest form uses npx to run the server and connect directly from your MCP client.
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": ["-y", "chrome-devtools-mcp@latest"]
}
}
}
```
If you are on Windows 11 and need a Windows-specific startup configuration, you can use a local command that runs via cmd with explicit environment settings:
```
[mcp_servers.chrome-devtools]
command = "cmd"
args = [
"/c",
"npx",
"-y",
"chrome-devtools-mcp@latest",
]
env = { SystemRoot="C:\\Windows", PROGRAMFILES="C:\\Program Files" }
ststartup_timeout_ms = 20_000The Chrome DevTools MCP server exposes browser content to MCP clients for inspection, debugging, and modification. Do not share sensitive or personal information through MCP clients unless you are certain you control both ends and understand the data exposure.
You can connect to an existing Chrome instance by configuring your MCP client to point at the running browser through a browser URL or a WebSocket endpoint. When you start the browser with remote debugging enabled, the MCP server can attach to that session and operate within that profile.
If you prefer to connect via a WebSocket endpoint, pass the endpoint URL and optional headers in the MCP client configuration. This is useful when your Chrome instance runs in a separate process or in a restricted environment.
Automate mouse click actions within the browser to interact with page elements.
Drag an element from one coordinate to another to simulate user interactions.
Fill a single form field with the specified value.
Fill multiple fields in a form according to a provided mapping.
Interact with modal or alert dialogs that appear in the page.
Move the cursor over an element to trigger hover states.
Simulate keyboard input for a targeted element or region.
Upload a file to a file input control.
Close the current page or tab in the browser.
Retrieve a list of open and background pages.
Navigate the current page to a new URL.
Open a new browser page or tab.
Choose a specific page to interact with from available pages.
Pause until a condition or event occurs in the browser.
Emulate different CPU conditions for performance testing.
Simulate network conditions to analyze performance under varied speeds.
Change the viewport size to test responsive layouts.
Analyze performance data to extract actionable insights.
Begin recording a performance trace for later analysis.
Stop the ongoing performance trace and export results.
Retrieve details for a specific network request.
List all network requests captured during a session.
Run arbitrary scripts in the page context and return results.
Fetch messages logged to the browser console.
List all console messages captured during a session.
Capture a screenshot of the current page state.
Capture a DOM snapshot or visual state for debugging.