Purpose
chrome-devtools-mcp is the official MCP (Model Context Protocol) server provided by Chrome DevTools, with the goal of enabling AI coding agents to control and inspect a running Chrome browser. It opens up the capabilities of Chrome DevTools to AI coding assistants for reliable automation, in-depth debugging, and performance analysis. The agents mentioned as suitable in the official description include Antigravity, Claude, Cursor, Copilot, and others. In addition to the MCP server, the project also provides a CLI, which can be used without MCP.
Main capabilities
- Performance insights: Use Chrome DevTools to record traces and extract actionable performance insights.
- Advanced browser debugging: Analyze network requests, capture screenshots, and view browser console messages (stack traces with source maps).
- Reliable automation: Use puppeteer to automate actions in Chrome and automatically wait for the results of actions.
The official description states that chrome-devtools-mcp exposes the contents of the browser instance to the MCP client, enabling it to inspect, debug, and modify any data in the browser or DevTools, so sensitive or personal information that you do not want exposed to the MCP client should not be shared.
Usage
It can be used by adding configuration in the MCP client. The official recommendation is to use chrome-devtools-mcp@latest to ensure that the MCP client always uses the latest version. If you are only doing basic browser tasks, you can use --slim mode. For specific setup for different editors or agents (such as Antigravity, Claude Code, Cursor, VS Code), the official Client Configurations Guide is provided.
For initial verification, you can enter a prompt in the MCP client, and the client should open the browser and record a performance trace. The MCP server will automatically launch the browser when the MCP client uses tools that require a running browser instance; merely connecting to the Chrome DevTools MCP server itself will not automatically launch the browser.
Server parameters (such as --headless, --isolated, --slim) and WebSocket connection configuration are described in the official Configuration Guide. For advanced features such as concurrent sessions, persistent user data directories, connecting to an already running Chrome instance instead of launching a new one, and Android debugging, see the Advanced Usage Guide.
If you are developing an agent tool and want to provide an integrated browser sub-agent in your product, the official recommendation is to build on Chrome DevTools for agents; for a reference implementation, see the Gemini CLI browser agent documentation.
Use Cases
- An AI coding agent needs to inspect, debug, or modify pages and data in the browser.
- You need to record performance traces and obtain performance insights.
- You need to analyze network requests, take screenshots, and view console logs and stack traces.
- You need puppeteer-based browser automation with automatic waiting for results.
- When developing agent tools, as a foundation for an integrated browser sub-agent.
Limitations and Considerations
- Officially, only Google Chrome and Chrome for Testing are supported; other Chromium-based browsers may work, but this is not guaranteed and unexpected behavior may occur, so use your own judgment. Official fixes and support are provided for the latest Extended Stable Chrome.
- The performance tool may send the trace URL to the Google CrUX API to obtain real user experience data, thereby providing field data beyond lab data; this can be disabled with the --no-performance-crux flag.
- Usage statistics are collected by default (such as tool call success rate, latency, and environment information) to improve reliability and performance; this can be disabled with the --no-usage-statistics flag. Collection is also disabled when the CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICS or CI environment variable is set. This statistics collection is independent of Chrome browser usage statistics; opting out of one does not automatically opt out of the other.
- By default, the server periodically checks the npm registry for updates and logs a notification when a new version is available; this can be disabled by setting the CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKS environment variableupdate checks.
- Runtime requirements: Node.js LTS version; Chrome current stable version or newer.
- Because browser content is exposed to the MCP client, pay attention to the security of sensitive or personal information.