PlugWiki
Chrome DevTools MCP logo

Chrome DevTools MCP, Google's server for debugging pages with AI

Official · by GoogleLocal

Lets Claude, Cursor and other AI assistants open Chrome, inspect pages and debug performance, network and console problems for you.

Chrome DevTools MCP is Google's own server that lets your AI assistant control and inspect a live Chrome browser. It can load pages, record performance traces, read network requests and console errors, and take screenshots, so it can find and fix problems instead of guessing.

It works with Chrome only. The assistant can see and change anything in the browser it controls, so keep it away from tabs you are signed into unless you are watching.

Good for

  • Web developers who want the assistant to check its own changes in a real browser
  • Anyone chasing slow pages, failed requests or console errors
  • Front-end teams fixing Core Web Vitals, accessibility or memory leaks
  • Developers who want the assistant to see the Chrome tab they already have open

Works in

8 supported · 3 with issues · 1 should work

Tap an app to see how to set it up and any known problems.

Install Chrome DevTools MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the Chrome DevTools MCP server to Claude Code. Run this command:
    
    claude mcp add chrome-devtools -- npx -y chrome-devtools-mcp
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js 20.19+.

Needs the current stable Chrome (or Chrome for Testing) and Node.js LTS. Chrome opens the first time a tool needs it, not when the server connects. Add --no-usage-statistics to the args to turn off usage statistics. The plugin route also installs the project's skills; restart Claude Code afterwards and check /skills.

Built from the package data we hold. Not yet tested by us.

Tools

  • Goes to a web address, or moves back, forward or reloads the current page

    Goes to a web address, or moves back, forward or reloads the current page.

    Try: “Open localhost:3000 and reload it”

    Network · navigate_page

  • Opens a new browser tab and loads an address in it

    Opens a new browser tab and loads an address in it.

    Try: “Open a new tab with my staging site”

    Network · new_page

  • Closes a browser tab

    Closes a browser tab.

    Try: “Close the tab you opened for the docs”

    Write · close_page

  • Captures an image of the page or of one element

    Captures an image of the page or of one element.

    Try: “Take a screenshot of the pricing table”

    Files · take_screenshot

  • Shows the messages and errors the page wrote to its console since it loaded

    Shows the messages and errors the page wrote to its console since it loaded.

    Try: “Are there any console errors on this page?”

    Read · list_console_messages

  • Opens one console message in full

    Opens one console message in full.

    Try: “Show me the full text of that console error”

    Read · get_console_message

  • Lists the requests the page has made since it last loaded

    Lists the requests the page has made since it last loaded.

    Try: “Which requests on this page are failing?”

    Read · list_network_requests

  • Shows the details of one network request, including its headers and body

    Shows the details of one network request, including its headers and body.

    Try: “Show the response of the login request”

    Read · get_network_request

  • Runs a piece of JavaScript inside the page and returns the result

    Runs a piece of JavaScript inside the page and returns the result.

    Try: “Count the images on this page without alt text”

    Runs code · evaluate_script

  • Shows the style rules that apply to one element

    Shows the style rules that apply to one element.

    Try: “Why is this button grey? Show its styles”

    Read · get_css_styles

  • Runs an audit of the page for accessibility, SEO and best practices and lists what failed

    Runs an audit of the page for accessibility, SEO and best practices and lists what failed.

    Try: “Run an accessibility audit on this page”

    Network · lighthouse_audit

  • Starts recording how the page loads and runs, to find speed problems

    Starts recording how the page loads and runs, to find speed problems.

    Try: “Record a performance trace while the homepage loads”

    Runs code · performance_start_trace

From the official docs

Pros and cons

Good

  • Made by Google's Chrome DevTools team, with no account or API key.
  • Records performance traces and gives Core Web Vitals insights.
  • Reads network requests, console messages and screenshots from a real page.
  • Can attach to your own signed-in Chrome when you allow it.
  • Ships skills for accessibility, LCP and memory-leak debugging.
  • A slim mode and a CLI help cut context use.

Watch out

  • Chrome only; Edge, Brave and others are not officially supported.
  • Heavy on tokens unless you trim it.
  • No read-only mode; the assistant can click and run scripts.
  • Runs locally over stdio only, with no hosted address.
  • Fails to launch as root or inside some sandboxes and containers.
  • Sends usage statistics to Google unless you turn them off.

Permissions

medium risk · 5 things to watch · 4 advisories

Medium risk

The assistant can read and change anything in the Chrome it controls, and a hostile web page can try to steer it. Use the separate default profile or an isolated session, and keep it away from signed-in tabs unless you are watching.

What it can do

  • Read your data
  • Create and change things
  • Delete things
  • Read-only mode

Watch out for

  • Agent can read and change anything in the browser

    Everything in the controlled Chrome is open to the AI client, including pages you are signed into. Use the default separate profile or --isolated rather than --autoConnect to your main browser for untrusted work. github.com

  • Web pages can try to steer the agent

    Page text and script output reach the model, so a hostile page can attempt prompt injection. Restrict sites with URL patterns for unattended runs. news.ycombinator.com

  • Usage statistics are on by default

    Google collects tool success rates, latency and environment info unless you pass --no-usage-statistics. Trace URLs may also go to the CrUX API unless you pass --no-performance-crux. github.com

  • Open debugging port is reachable by other apps

    With --browser-url, any program on your machine can control Chrome through port 9222. Use a separate --user-data-dir and avoid sensitive sites while it is open. github.com

  • URL allowlist missed service worker fetches (fixed)

    Before the fix, a service worker on an allowed page could still reach blocked sites. Treat URL patterns as a guard rail, not a hard boundary, and stay on a current version. github.com

Security advisories

Technical details
Turning on read-onlyNo read-only mode. You can narrow it: --no-javascript-evaluation turns off script tools, --allowedUrlPattern or --blockedUrlPattern limit sites, --isolated uses a throwaway profile, and category flags hide tool groups.
Talks toGoogle usage statistics (on by default). Google CrUX API for trace URLs (performance tools). npm update checks
Sign-in and keysNo account or API key. The default Chrome profile is kept between runs under ~/.cache/chrome-devtools-mcp/chrome-profile; --isolated uses a temporary one.

Alternatives

Use Chrome DevTools MCP to debug and tune pages in Chrome. Pick Playwright MCP for repeatable tests across Chrome, Firefox and WebKit, or Browser MCP to automate the Chrome profile you already use.

ServerOfficialRunsCan change thingsGitHub stars
For Chrome DevTools
Chrome DevTools MCPThis pageOfficialLocalYes54.5K
Other tools for the same job
Playwright MCPFor PlaywrightOfficialLocalYes38.9K
Browser MCPCommunityLocalYes7.3K
browser-useCommunityHostedLocalYes–

What people say

People like how much it shows the assistant about a real page and dislike how much context it uses.

What people like

  • Lets the assistant see what its code does in the browser instead of guessing.
  • The first-party pick for traces, network and console detail that Playwright MCP does not match.
  • Long-time users keep it over built-in alternatives for reliability.
  • One developer traced intermittent 502 errors in about 20 minutes.

Common complaints

  • Heavy on tokens: tool definitions and responses use up context.
  • Chrome only: no WebKit or Firefox, and no test runner.
  • On macOS Chrome kept jumping to the front on tool calls (reported fixed).
  • Some users struggled to run it under WSL with Claude Code.

In their words

2 more quotes

Questions

Is Chrome DevTools MCP free?

Yes. It is open source under Apache-2.0 and needs no account or API key. You only need Node.js and Chrome.

Which Node.js version do I need?

Node 20.19 or newer on the 20 line, 22.12 or newer on the 22 line, or 23 and up. Node 18 is not supported.

Why doesn't Chrome open when the server connects?

That is expected. Chrome starts the first time the assistant uses a tool that needs a browser, such as opening a page. Try the prompt: Check the performance of https://developers.chrome.com

Can it use my normal Chrome where I'm already signed in?

Yes, with --autoConnect on Chrome 144 or newer. Turn on remote debugging at chrome://inspect/#remote-debugging, keep Chrome open and approve the prompt. The assistant then sees all windows of that profile.

Does it send data to Google?

Usage statistics are on by default. Turn them off with --no-usage-statistics. The performance tools may also send trace URLs to Google's CrUX API, which --no-performance-crux turns off.

Does it work with Edge, Brave or other Chromium browsers?

Only Google Chrome and Chrome for Testing are officially supported. Other Chromium browsers may work through --executablePath, with no guarantees.

How do I run it headless or in CI?

Add --headless. Do not run it as root, because Chrome refuses to start that way. Create an unprivileged user in the container.

It fails on Windows with 'Connection closed'. What now?

Launch it through cmd. Set the command to cmd and the arguments to /c, npx, -y, chrome-devtools-mcp@latest. You can also point the command at the full path of npx.

It uses too much context. Can I trim it?

Yes. --slim keeps only 3 tools, category flags hide tool groups, and the chrome-devtools command-line tool lets the assistant work from the shell without MCP.

Chrome DevTools MCP vs Playwright MCP?

Use Chrome DevTools MCP to debug: traces, network, console and memory in Chrome. Use Playwright MCP for repeatable tests across Chromium, Firefox and WebKit.

Examples

  • Check page performance and get Core Web Vitals insights

    Check the performance of https://developers.chrome.com

    Source
  • Verify a code change in the real browser after editing it

    Open http://localhost:3000, check that the signup form I just changed works, and list any console errors.

  • Diagnose failing network requests and console errors, such as intermittent 502s

    Load the dashboard, list the failed network requests and explain what is causing the 502 errors.

  • Hand a request or element you selected in DevTools to the assistant in your signed-in session

    Look at the request I selected in DevTools and tell me why it returns an error.

  • Audit and fix accessibility, LCP or memory leaks with the bundled skills

    Debug why the largest contentful paint on our homepage is slow and suggest fixes.

Information

updated Nov 2, 2026

Publisher
Google (official)
Package
chrome-devtools-mcp
Registry
npm
Transport
stdio
Version
1.12.0
License
Apache-2.0
Last commit
Oct 30, 2026
Open issues
79
Listed in
Official MCP registry

WebsiteConfiguration guideGitHubnpmOfficial MCP RegistryClient configurations guideChangelogIssues

Other Chrome DevTools MCP servers

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 23
  1. github.com · github.com
  2. developer.chrome.com · developer.chrome.com
  3. stevekinney.com · stevekinney.com
  4. Chrome DevTools MCP tool reference · github.com
  5. github.com · github.com
  6. github.com · github.com
  7. Repository security advisories · github.com
  8. github.com · github.com
  9. github.com · github.com
  10. news.ycombinator.com · news.ycombinator.com
  11. registry.npmjs.org · registry.npmjs.org
  12. github.com · github.com
  13. Client configurations · github.com
  14. Claude plugin directory · claude.com
  15. limitededitionjonathan.substack.com · limitededitionjonathan.substack.com
  16. Chrome DevTools MCP (2025) · news.ycombinator.com
  17. github.com · github.com
  18. news.ycombinator.com · news.ycombinator.com
  19. developer.chrome.com · developer.chrome.com
  20. github.com · github.com
  21. github.com · github.com
  22. github.com · github.com
  23. github.com · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.