Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Short answer: if you mean the current, officially documented Chrome integration, install chrome-devtools-mcp and register it with your MCP client. In Codex, run codex mcp add chrome-devtools -- npx chrome-devtools-mcp@latest. The similarly named agent-browser package is a separate project, so its commands should not be mixed with Chrome DevTools MCP instructions.

First, identify which “Agent Browser MCP” you mean

Search results often put two different projects next to each other:

  • Chrome DevTools MCP: Google’s MCP server for inspecting, debugging and controlling Chrome. The setup below follows Chrome’s documented path.
  • agent-browser: a separate package whose search listing includes commands such as agent-browser install and agent-browser mcp. Those commands are not interchangeable with chrome-devtools-mcp.

If your client, extension or package specifically says agent-browser, use that project’s current owner documentation. The instructions in this article apply to Chrome DevTools MCP.

Prerequisites

  • Node.js, preferably the latest LTS release.
  • npm, installed with Node.js or available on your PATH.
  • The current stable version of Google Chrome.
  • An MCP-compatible client, such as Codex or another client that supports an mcpServers configuration.

Check that the commands resolve before adding the server:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
node --version
npm --version
chrome --version

On Windows, the Chrome executable may not be named chrome in your shell. That is fine; the server can be given an explicit executable path later.

Install Chrome DevTools MCP in Codex

  1. Open a terminal where the codex command is available.
  2. Register the server:
codex mcp add chrome-devtools -- npx chrome-devtools-mcp@latest
  1. Restart or reload Codex if it does not immediately discover the new server.
  2. Ask the agent to perform a small browser action. Chrome’s documented smoke test is to ask it to check the performance of https://developers.chrome.com. The expected behavior is that it opens the page and records a performance trace.

The smoke test is a setup example from Chrome’s documentation, not a performance result for your computer or network.

Configure another MCP client

Clients that use an mcpServers JSON object generally need the server name, executable and arguments. Chrome’s guide shows this pattern:

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

The -y flag lets npm install the package without stopping for an interactive confirmation. Some clients expose the same fields in a graphical settings page; use that client’s current MCP syntax rather than copying a Codex-specific command into it.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose how Chrome starts

Start a fresh visible browser

This is the default behavior. The server launches a new Chrome instance, which is useful when you want to watch navigation, inspect prompts or approve actions interactively. It also avoids accidentally exposing your everyday tabs and cookies.

Run Chrome headlessly

For CI or a machine without a desktop, add the --headless launch option to the server configuration. For example, in an argument-based client:

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

Chrome DevTools MCP also supports launch choices such as browser channel, executable path, profile directory and viewport. Exact option names can change, so check the current configuration reference when you need a non-default channel or binary.

Connect to an existing Chrome session

There are two documented connection modes. Select one; do not combine their flags.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Automatic connection

Automatic connection uses --autoConnect. It requires Chrome 144 or later and Remote Debugging enabled at chrome://inspect/#remote-debugging. Chrome displays a permission prompt before allowing the agent to connect.

  1. Update to Chrome 144 or newer.
  2. Open chrome://inspect/#remote-debugging and enable Remote Debugging.
  3. Add --autoConnect to the MCP server arguments.
  4. Accept Chrome’s connection prompt only if you trust the MCP client and the task.

Manual connection through a debugging port

Launch a separate Chrome process with a debugging port and an explicit user-data directory, then point MCP at that address:

chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-mcp

Use a different temporary directory on Windows or macOS if /tmp is unavailable. Register the server with:

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "chrome-devtools-mcp@latest",
        "--browser-url=http://127.0.0.1:9222"
      ]
    }
  }
}

If you selected another port in the Chrome launch command, replace 9222 in the URL. The custom profile keeps this session separate from your normal Chrome profile.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Security and profile decisions

Chrome for Developers warns: “Chrome DevTools for agents exposes your browser content to your agent. This allows your agent to read, inspect, debug, and modify any data in the browser or DevTools.” Treat an MCP connection as access to the browser, not merely as a read-only screenshot utility.

  • Fresh profile: best for public pages and repeatable automation; it contains no normal account sessions.
  • Existing profile: necessary when a task requires a logged-in site, but the agent can then reach that profile’s tabs, cookies and account data.
  • Visible mode: easier to supervise and approve prompts.
  • Headless mode: convenient for automation, but harder to observe.

Connect only an agent you trust. For work that does not require authentication, use a separate or temporary user-data directory. Isolation reduces accidental exposure, but it is not a promise of a complete security boundary: review the permissions and data flows of your MCP client as well.

Common problems and fixes

“Command not found: codex”

The Codex CLI is not installed or is not on your PATH. Install or expose it according to your client’s instructions, then rerun the registration command.

npx cannot find the package

Confirm Node.js and npm versions, check network access to npm, and run npx -y chrome-devtools-mcp@latest directly. A corporate proxy may require npm proxy configuration.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The client shows no MCP tools

Validate the JSON syntax, ensure the server name is nested under mcpServers, and restart the client. In Codex, list configured MCP servers if your installed version provides that command.

Chrome opens, but the agent cannot use the existing tabs

You may have started a new browser rather than using a connection mode. Choose either --autoConnect with the required Remote Debugging setting or --browser-url=http://127.0.0.1:9222 against a manually launched instance.

Automatic connection is rejected

Verify Chrome is version 144 or later, Remote Debugging is enabled at chrome://inspect/#remote-debugging, and that you approved the browser prompt. If policy blocks automatic connection, use a dedicated manually launched profile and debugging port.

Manual connection fails

Check that Chrome is still running, the port matches in both commands, and another process is not using that port. Keep the Chrome process and MCP client on the same machine unless your security design explicitly protects a remote debugging endpoint.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The smoke test behaves differently

Page performance depends on Chrome version, hardware, network and the page’s current content. The documented prompt verifies that the integration can open a page and record a trace; it is not a fixed benchmark.

Operating the setup reliably

  • Pin a tested Chrome channel and Node.js LTS version in CI instead of silently changing both at once.
  • Use a dedicated profile directory for automation so extensions, cookies and tabs do not vary between runs.
  • Prefer visible mode while developing workflows; switch to headless only after the steps work interactively.
  • Keep Remote Debugging bound to a local address unless you have a deliberate, authenticated network design.
  • After upgrading Chrome DevTools MCP, rerun a navigation and the performance smoke test before depending on it in a scheduled job.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If your goal is simply to capture a clean website image or PDF rather than let an agent inspect a live browser, ScreenshotNeo provides a one-request API and an MCP server. It accepts cookie and consent banners before capture and removes more than 60 known consent platforms, newsletter popups and chat widgets. Bot checks, CAPTCHAs, blank pages, timeouts, failed loads and cache hits are not billed as clean shots, and each response identifies the result with X-Page-Verdict and X-Billed headers.

One-call cURL example (see the ScreenshotNeo documentation):

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python:

import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)

Node.js:

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

It also offers an MCP server with take_screenshot, get_page_info and capture_pdf for Claude, Cursor and other MCP clients. Features include full-page lazy-image loading, CSS-selector element capture, dark mode, device presets, retina scale, PDF controls, custom CSS and JavaScript, clicks, waits, request blocking, headers, cookies, user agents, authorization, timezone, geolocation, transparent backgrounds, resizing, configurable caching, signed links, asynchronous webhooks, bulk capture of up to 100 URLs per call, a usage API and an OpenAPI specification. Parameter names used by other screenshot APIs are accepted to ease migration.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The Free plan includes 1,000 screenshots per month with no card. Paid plans start at $5 for 3,000 shots; every feature is available on every plan, and yearly billing gives two months free. Create a free ScreenshotNeo account.

What to choose

Use Chrome DevTools MCP when an agent must inspect or modify a live Chrome session, trace performance, debug pages or work inside a supervised browser. Use a fresh profile for untrusted or public-page tasks, and an existing profile only when the task genuinely needs its authenticated state. If you only need repeatable screenshots or PDFs, ScreenshotNeo avoids browser-profile setup and provides explicit verdict and billing headers.

Frequently Asked Questions

Is Chrome DevTools MCP the same as the agent-browser npm package?

No. They are separate projects with different commands. This guide covers Chrome DevTools MCP; use the agent-browser owner’s documentation for that package.

Can I use Chrome DevTools MCP without showing a browser window?

Yes. Add the documented –headless launch option to the server arguments.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What Chrome version is required for automatic connection?

Chrome’s automatic connection mode requires Chrome 144 or later plus Remote Debugging enabled at chrome://inspect/#remote-debugging.

Does connecting to an existing Chrome session expose my account data?

It can. The agent inherits access to that session’s tabs, cookies and logged-in content, so use a trusted client and a separate profile when authentication is unnecessary.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.