Head to head · Browser automation · October 2026 research run
agent-browser vs Puppeteer
Puppeteer scores 70.6 (BB) on agent readiness against agent-browser's 66.6 (B), and leads in 3 of 7 scored categories. agent-browser leads on agent ergonomics and security & auth. Both do browser automation.
Best browser automation tools for AI agents · All 120 browser comparisons
Which one, for what
Best for Coding agents with a shell that want short commands and compact snapshots.
Ahead on
- Agent ergonomics, 78 against 67
- Security & auth, 67 against 52
Also in its favour
- Runs on your own machine
Watch for
The ten most recent CI runs on main, 1 to 8 October 2026, all concluded in failure. In the newest, Windows Rust tests and native end-to-end tests failed
Puppeteer BB
Best for Agents that write and run Node.js scripts against Chrome or Firefox.
Ahead on
- Reliability, 80 against 48
- Maintenance & community, 89 against 70
- Transparency & trust, 70 against 61
Also in its favour
- Agent-ready, a grade of BB or better
Watch for
No MCP server, CLI or llms.txt of its own. The docs point agents to the separate chrome-devtools-mcp project
Score by category
| Category | Weight this run | agent-browser | Puppeteer | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 48 | 80 | Puppeteer +32 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 84 | 81 | agent-browser +3 |
| Agent ergonomics | 13%16.2 | 78 | 67 | agent-browser +11 |
| Security & auth | 14%17.5 | 67 | 52 | agent-browser +15 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 70 | 89 | Puppeteer +19 |
| Transparency & trust | 7%8.8 | 61 | 70 | Puppeteer +9 |
| Negative events | ≤15 | 0 | 0 | |
| Total | B 66.6/100 | BB 70.6/100 |
Facts side by side
| Fact | agent-browser | Puppeteer |
|---|---|---|
| Kind | MCP server | SDK + MCP |
| Vendor | Vercel Labs | |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | stdio | |
| Auth | None | None |
| Pricing | Free | Free |
| x402 | no | no |
| Licence | Apache-2.0 | Apache-2.0 |
| Tools exposed | 158 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-10-01 | 2026-10-08 |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | no document linked | no document linked |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Popularity | 44k stars, 2.1M npm/wk | 96k stars, 11.5M npm/wk |
Verdicts
agent-browser
Snapshots with element refs, a 29-tool default MCP profile and opt-in domain allowlists, action policies and content boundary markers suit agent use. The project is at 0.38.2 with no stable release, the ten most recent CI runs on main failed between 1 and 8 October 2026, and every security control is off by default.
Puppeteer
Puppeteer is a stable, Apache-2.0 library on 25.13.0, with ten releases since 27 July 2026, typed APIs, locators that wait and retry, and accessibility snapshots an agent can read. It has no MCP server or llms.txt of its own, and 10 of the 20 most recent CI runs on main failed between 7 and 13 October 2026.
Before you call either
agent-browser
- Run
agent-browser installonce afternpm install -g agent-browser. It downloads Chrome for Testing - Take a fresh
snapshot -iafter any navigation. Refs survive same-document changes only - Pass
--jsonfor machine-readable results and--max-outputto cap page text - Set
--allowed-domains,--action-policyand--content-boundariesfor untrusted sites. None is on by default, and the allowlist rejects--profile,--cdpand--restore - Start MCP with
agent-browser mcp, and add profiles such as--tools core,networkonly when needed
Puppeteer
- Install with
npm i puppeteer, which downloads a matching Chrome for Testing. Usepuppeteer-coreto bring your own browser - Prefer
page.locator()overpage.$(). Locators wait for the element to be visible and stable before acting - Read pages with
page.accessibility.snapshot({interestingOnly: true})rather than full HTML to keep output short - Catch
TimeoutErrorseparately fromTargetCloseError. The first can be retried, the second needs a new page or browser - Packages are ESM only since 25.0.0. Use
import puppeteer from 'puppeteer'rather thanrequire
Questions
Which is better for AI agents, agent-browser or Puppeteer?
Puppeteer scores 70.6 (BB) on agent readiness against agent-browser's 66.6 (B), and leads in 3 of 7 scored categories. agent-browser leads on agent ergonomics and security & auth.
Can an agent call agent-browser and Puppeteer without installing anything?
agent-browser runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Puppeteer.
Are agent-browser and Puppeteer open source?
Yes. agent-browser is open source (Apache-2.0). Puppeteer is open source (Apache-2.0).
Other comparisons with agent-browser or Puppeteer
- agent-browser vs Airtop
- agent-browser vs Anchor Browser
- agent-browser vs Browser Use
- agent-browser vs Browserbase
- agent-browser vs Browserless
- agent-browser vs Chrome DevTools MCP
- agent-browser vs Hyperbrowser
- agent-browser vs Notte
- agent-browser vs Playwright MCP
- agent-browser vs Puppeteer (archived MCP reference server)
- agent-browser vs Selenium
- agent-browser vs Skyvern
- agent-browser vs Steel
- agent-browser vs TinyFish
- Airtop vs Puppeteer
- Anchor Browser vs Puppeteer
- Browser Use vs Puppeteer
- Browserbase vs Puppeteer
- Browserless vs Puppeteer
- Chrome DevTools MCP vs Puppeteer
- Hyperbrowser vs Puppeteer
- Notte vs Puppeteer
- Playwright MCP vs Puppeteer
- Puppeteer vs Puppeteer (archived MCP reference server)
- Puppeteer vs Selenium
- Puppeteer vs Skyvern
- Puppeteer vs Steel
- Puppeteer vs TinyFish
Machine-readable
- This page as Markdown
/compare/agent-browser-vs-puppeteer.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/agent-browser.json·/api/v1/tools/puppeteer.json - From a terminal
anchor compare agent-browser puppeteer(the CLI) - Over MCP
compare_tools {"a": "agent-browser", "b": "puppeteer"}at/mcp, no key