Chrome DevTools MCP Server

Official

Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.

Local serverstdioTypeScriptApache-2.0★ 48.4k

What is the Chrome DevTools MCP Server?

Google's official server lets coding agents drive and inspect a live Chrome instance — performance traces, network logs, console errors and Lighthouse audits.

Credentials and setup notes

Node.js LTS, npm, and a current stable (or newer) build of Google Chrome or Chrome for Testing.

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

Maintainer setup documentation.

What you can do with it

Chasing a slow page

Record a trace on a real navigation, ask the agent which insight matters most, and have it point at the specific script or layout shift responsible.

Reproducing a bug from a report

Let the agent walk the steps, read the console with source maps applied, pull the failing request body, and correlate all of it with your codebase.

Front-end quality gate

Run lighthouse_audit against a preview deployment and get a written summary of regressions before the PR is merged.

Hunting a memory leak

Capture heap snapshots before and after a suspect interaction, compare them, and inspect retaining paths without manually navigating the Memory panel.

Recorded tools

Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.

ToolWhat it does
navigate_pageNavigate the selected page to a URL.
new_pageOpen a new page or tab.
list_pagesList the pages currently open in the browser.
select_pageChoose which open page subsequent tools act on.
close_pageClose a page.
clickClick an element identified from a snapshot.
click_atClick at explicit coordinates on the page.
dragDrag from one element to another.
hoverHover over an element.
fillFill a single form field.
fill_formPopulate multiple form fields in one call.
type_textType text into the focused element.
press_keySend a keyboard key to the page.
upload_fileAttach a file to a file input.
handle_dialogAccept or dismiss a native browser dialog.
wait_forWait until a condition on the page is met.
emulateEmulate a device, network or CPU condition.
resize_pageChange the viewport size.
take_snapshotCapture the accessibility tree as text for element targeting.
take_screenshotCapture a screenshot of the page or an element.
screencast_startBegin recording a screencast of the page.
screencast_stopStop the screencast recording.
list_network_requestsList network requests observed on the page.
get_network_requestReturn full detail for a single network request.
list_console_messagesList console messages, including source-mapped stack traces.
get_console_messageFetch one console message in detail.
evaluate_scriptRun JavaScript in the page context.
performance_start_traceStart recording a DevTools performance trace.
performance_stop_traceStop the trace and return the recorded data.
performance_analyze_insightExplain a specific performance insight found in the recorded trace.
lighthouse_auditRun a Lighthouse audit and return a structured report.
take_heapsnapshotCapture a JavaScript heap snapshot.
compare_heapsnapshotsDiff two heap snapshots to find growth between them.
get_heapsnapshot_retainersShow what is retaining an object in a heap snapshot.
install_extensionInstall an unpacked Chrome extension into the controlled browser.
list_extensionsList extensions loaded in the browser.

How to install the Chrome DevTools MCP Server

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest"]
    }
  }
}

Configuration

Node.js LTS, npm, and a current stable (or newer) build of Google Chrome or Chrome for Testing.

VariableDescriptionRequired
CHROME_DEVTOOLS_MCP_NO_USAGE_STATISTICSSet to disable Google's default collection of tool usage statistics. Collection is also disabled automatically when CI is set.e.g. 1Optional
CHROME_DEVTOOLS_MCP_NO_UPDATE_CHECKSSet to stop the server periodically checking npm for newer versions.e.g. 1Optional

Example prompts to try

  • “Load our homepage, record a performance trace, and tell me the three biggest contributors to LCP.”
  • “Open the checkout page, submit the form with test data, and show me any failed network requests along with their response bodies.”
  • “Run a Lighthouse audit on http://localhost:3000 and summarise what regressed compared to the recommendations.”
  • “Reproduce the console error users are reporting on the settings page and trace it back to the source file.”

Frequently asked questions

Most browser servers let an agent click and read pages. This one adds the diagnostic half of DevTools: performance traces with extracted insights, the network waterfall, source-mapped console messages, heap snapshots and Lighthouse audits. If your agent needs to explain why something is slow or broken rather than just interact with it, that difference matters.