mrkeyoor.com_
Tue 01 Sept 16:17 UTC
BrowsersMCP servermeasured 19 Aug 2026

Puppeteer (archived)

Puppeteer MCP is an archived reference server from Anthropic's original example set. It drives a headless Chrome session over stdio and hands an agent seven tools: navigate, click, fill, select, hover, evaluate arbitrary JavaScript, and screenshot. The npm package now ships a deprecation warning, so what you get is a frozen demonstration of browser control rather than a maintained product.

BootBOOTS ✓We started it and initialize came back in 33.5s.
Tools7tools/list payload 2,448 bytes
Context tax~612estimated tokens for the whole tools/list, chars/4 estimate
Resources / prompts1 / counts returned by resources/list and prompts/list
Measured19 Aug 2026one run of the harness, clean environment, no credentials · how we test

How we started it

npx -y @modelcontextprotocol/server-puppeteer
Verdict

It works. We started it with a clean env and it came up in 33.5 seconds on first run, exposed 7 tools and one resource, and asked for nothing. The catch is the two deprecation warnings it prints on the way up, one for the server package and one for the bundled Puppeteer version, and nobody is shipping fixes behind them. Use it for a throwaway scraping errand on your own machine; for anything you plan to keep running, skip it and take the maintained Playwright server instead.

Use it if

You want an agent to click through a page and hand back a screenshot tonight, and you do not care what the package looks like in six months.
You are teaching someone how MCP browser tools work and want the smallest readable example of navigate/click/fill/evaluate.
Your context budget is tight and 612 tokens of tool schema is the whole price you are willing to pay for browser control.
You already have Chrome and its shared libraries on the box, so the first npx run is the only slow part.

Skip it if

You need this in CI or on a server, where an unmaintained Chrome driver is a security debt with a countdown on it.
You want anything the seven tools do not cover: file downloads, tab management, network interception, cookie or session control.
puppeteer_evaluate running arbitrary JavaScript inside the page is something your threat model cannot accept from a model.
You are on a container without Chrome's system libraries, in which case the boot we measured is not the boot you will get.
You want the vendor to answer a bug report; the package's own warning points you at npm support, which is not where the code lives.

The bill for your context window

ToolEst. tokensDescribed?Required params
puppeteer_screenshot~159yes (59 chars)1
puppeteer_navigate~139yes (17 chars)1
puppeteer_select~77yes (45 chars)2
puppeteer_fill~69yes (23 chars)2
puppeteer_evaluate~57yes (41 chars)1
puppeteer_click~55yes (28 chars)1
puppeteer_hover~55yes (28 chars)1

612 tokens for the whole tools/list, estimated at 4 chars per token from a 2,448 byte payload, measured 2026-08-19. That is below the median of the servers we measured in this batch, and a rounding error next to the Notion server, whose tool list costs more than an order of magnitude more. The weight is spread evenly and honestly: puppeteer_screenshot is the heaviest at 159 tokens because it carries width, height and selector options, puppeteer_navigate follows at 139, and the rest sit between 55 and 77. No tool is paying for a description it does not need. Some are paying too little; puppeteer_navigate documents itself in 17 characters, which is thin guidance for a model deciding when to call it.

Setup reality

Nothing to configure. The harness ran npx with the package name, no env vars, no tokens, no config file, and the server initialized on protocol 2024-11-05 identifying itself as example-servers/puppeteer 0.1.0. envHints came back empty because nothing was ever asked for. The 33.5 seconds is npx fetching the package and Chrome coming up; a warm cache makes it much shorter. The real setup cost is the operating system underneath, since a headless Chrome needs its shared libraries present or the process dies before MCP ever speaks.

Questions people ask

Is the Puppeteer MCP server still maintained?

No. It was moved to the archived section of Anthropic's reference servers, and installing it prints a deprecation notice for the package plus a second one for the Puppeteer version it pins. It still boots and still works; it just has nobody behind it.

What should I use instead of Puppeteer MCP?

The Playwright MCP server is the maintained answer for browser automation, with a larger tool surface and active releases. You pay for that in context: this one lists 7 tools in 612 tokens, and most of the alternatives ask considerably more of your window.

Is the slow first start expected?

We measured a cold run: npx downloading the package, then Chrome launching, together 33.5 seconds before initialize returned. Once npm has the package cached, startup is dominated by Chrome alone. If your client has a boot timeout, raise it before the first run.

Does it need any API keys or environment variables?

None. It booted under a clean env with no secrets and reported no missing variables, which is unusual in this batch. Everything it does happens through a local Chrome process you already trust or already do not.

Other browsers servers we started

ServerVendorBootsContext tax
BrowserbaseBrowserbase~393 tokens
Playwright MCPMicrosoft~4,626 tokens

How this page is made: the server is spawned as an unprivileged user with a clean environment and no credentials, then asked for its tools, resources and prompts over stdio. Token figures are estimates at four characters per token, not a tokenizer count. One run, one machine. Corrections: contact the desk.

← All measured MCP servers