Use case

Proxies for Chrome DevTools MCP: one flag, one condition

Set a proxy for Chrome DevTools MCP 1.9.0: --proxyServer applies only when the server launches Chrome, carries no login, and needs an allowed address.

HProxy Team··Updated September 19, 2026·5 min read
HProxy.Use case

Free proxies won't hold up here.

Shared datacenter IPs get flagged and dropped fast. When it has to hold, gaming, streaming, accounts, you need mobile and residential IPs that read as a real device, from $0.44/GB, pay as you go.

Proxies for AI Agents

Google's Chrome DevTools MCP server gives a coding agent a real Chrome to drive. It takes a proxy in one flag, and that flag has one condition attached: it only applies when the server launches the browser itself. In the setup many agents use, where the server attaches to a Chrome that is already open, the value is dropped without a word. We read every setting on this page in release 1.9.0, published on 8 September 2026.

The one flag

npx chrome-devtools-mcp@latest --proxyServer="http://GATEWAY_HOST:GATEWAY_PORT"

The option's own description says what happens: the value is "passed as --proxy-server when launching the browser". The server builds the Chrome arguments, adds your address to them, and then decides which browser to use.

When it applies, and when it is ignored

How the server gets a browserDoes --proxyServer apply?
It launches Chrome itself (the default)yes, as a Chrome flag
--browserUrl or --wsEndpointno, the connect path receives no Chrome arguments
--autoConnectno, same path

That is the whole trap. The code builds the argument list first, so the flag looks accepted, and then hands it only to the launch path. The option declares no conflicts with the connect options, so the command line is valid and nothing warns. The same limit is written openly on the neighbouring flags: --chromeArg and --ignoreDefaultChromeArg both say they only apply when Chrome is launched by the server.

If you need the proxy with a Chrome you start yourself, put the flag on that Chrome instead. The server will then attach to a browser that is already routed.

What the flag can carry

The option is a plain string, so anything you write is accepted. Chrome decides what happens next, and Chrome ignores a login in that flag. It also supports no SOCKS5 authentication at all. This server adds nothing of its own: a search of the repository for the usual authentication handlers returns nothing.

So a line for this server has to work without a password.

Which proxy type fits it?

Residential, for the sites that refuse a hosting address. In our test of 19 September 2026 a residential address changed four of thirteen answers, while four sites refused both. That test sent plain requests rather than a browser. The table is on our OpenClaw page.

Because no login can travel, allow the machine's address instead. On an HProxy Residential Premium plan that is a plan feature, up to 150 addresses, and the flag then carries nothing secret at all. An allowed address takes no country or city targeting; it rotates on the rotating ports and holds one address per sticky port. An agent that works one site across several steps suits a sticky port. A sticky address can still change early if its device leaves the network, so let the agent retry. The residential proxies page lists the plans, and the plan API manages allowed addresses from code.

Keeping the session cheap

A browser loads everything a page asks for, and an agent session can run for a long time. This server can block requests by URL pattern, which is the simplest way to keep images, fonts and third party scripts off a metered line. Chrome also keeps localhost and link-local addresses direct by its own rules, so those never reach the proxy.

What breaks when the proxy is on

  • The address never changes. The server attached to a running Chrome, so the flag was ignored.
  • 407 Proxy Authentication Required. The line wants a password the flag cannot send. Allow the machine's address instead. Our 407 guide explains the error.
  • Certificate errors through an inspecting proxy. The flag was added for exactly that case, which is why certificate handling sits next to it in the options.
  • Traffic climbs during long sessions. Block what you do not need by URL pattern.
  • The site still refuses. A proxy changes the address, not the browser or the way the agent behaves.

What this page does not cover

We read chrome-devtools-mcp 1.9.0 as text and did not run it, so the silent drop above follows from the arguments the connect path receives rather than from a capture of our own. Our blocking test used plain requests from one server address and one residential line, on one day. The server ships a release every few weeks, so we will read these settings again by 19 October 2026.

Where to go from here

Proxies for Playwright MCP covers the other big browser MCP server, which does take a login, in a config file. Proxies for agent-browser covers a CLI with the same attach problem and a different answer to the login. Proxies for Lightpanda covers a browser that takes the login in the address, because it is not built on Chrome.

Sources

  • The browser options (src/config/browser-options.ts), the context builder that adds the flag and chooses the browser (src/index.ts), and the configuration documentation. ChromeDevTools/chrome-devtools-mcp, release 1.9.0, 8 September 2026.
  • Issue 155 and pull request 230, which added the flag on 1 October 2025. Chrome DevTools MCP issue tracker.
  • Credentials in the proxy flag, SOCKSv5 authentication and the implicit bypass rules. The Chromium Authors, net/docs/proxy.md, read 19 September 2026.
  • Plans, IP whitelist and sticky sessions; errors; the proxy API. HProxy documentation, hproxy.com/docs, 19 September 2026.
  • Our own test of 19 September 2026: plain GET requests to 13 sites and 3 controls, two runs from our server and two through a residential line of our own house plan. Raw output is kept in the research folder of our OpenClaw page.

Frequently asked questions

How do I set a proxy for Chrome DevTools MCP?
Pass --proxyServer with an address when you start the server, for example --proxyServer=http://HOST:PORT. The value is given to Chrome as its --proxy-server flag when the server launches the browser.
Why does the flag do nothing in my setup?
Because the server is attaching to a Chrome that is already running. With --browserUrl, --wsEndpoint or --autoConnect it connects instead of launching, and the connect path never receives any Chrome arguments. Nothing warns you, since the option declares no conflicts.
Can the address carry a username and password?
No. Chrome ignores a login written into its proxy flag, and this server has no handler for a proxy challenge: a search of the repository for the usual names finds nothing. Use a line that recognises your machine by its address.
Does every page use the same proxy?
Yes. The address is a launch flag for the whole browser, so every page the agent opens goes through it. Changing address means restarting the server with a different value.
How do I keep an agent session from burning traffic?
Use the server's URL patterns. --blockedUrlPattern keeps matching requests off the wire entirely, which is the simple way to stop images, fonts and third party scripts from spending a metered line during a long session.

Proxies that don't die mid-job

Residential, ISP, datacenter and mobile, verified by the same engine that runs tens of millions of checks. They read as a real device and hold up under load. Pay as you go, and your balance never expires. $0.44/GB is the 2,000 GB+ rate; a single gigabyte is $0.50/GB, with no minimum order.

129M+ proxy checks run · 100+ countries · HTTP / HTTPS / SOCKS · re-checked every few minutes · no signup

HProxy.

Honest guides and comparisons on proxies, scraping and staying unblocked, from the team that runs the network.

RSS feed