Puppeteer
Headless browser control for Claude. Screenshots, form filling, scraping, and interacting with pages that require JavaScript.
Delv Safety Grade: B
Score 72/100 · assessed 2026-04-22
Official Anthropic MCP server providing headless Chrome automation through Puppeteer. Maintainer credentials are impeccable and the package is properly distributed via npm with clear documentation. However, the permissions surface is substantial: full browser control means arbitrary network requests, JavaScript execution in a real browser context, and filesystem access for downloads. The browser effectively becomes an unrestricted proxy that can visit any site, execute any client-side code, and exfiltrate data through screenshots or scraping. No sandbox constrains which domains can be visited or what actions can be performed. For automating trusted workflows this is fine, but the attack surface is broad if an adversary can influence the URLs or actions Claude attempts. Supply chain is clean with standard npm distribution and active maintenance in the official MCP servers monorepo.
Lethal Trifecta (prompt-injection exposure)
ONE OF THREELoads and executes arbitrary web pages. Highest-risk untrusted-input vector in the catalogue. Pair with caution.
Green flags
- Official Anthropic package in main MCP servers repository
- Distributed via npm with proper versioning and semver
- Well-documented with clear examples and API reference
- Active maintenance as part of core MCP server collection
- No known security incidents or CVEs
Red flags
- Unrestricted browser can visit any URL, no domain allowlist
- Full JavaScript execution in browser context enables arbitrary code
- Screenshots and scraping can exfiltrate sensitive page content
- Browser downloads write to filesystem without path restrictions
- No sandbox limiting which sites or actions are permitted
Permissions requested
Install
npx -y @modelcontextprotocol/server-puppeteer
{
"puppeteer": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]
}
}Review
Install this if you ever need to automate browser tasks without writing code. It's the fastest way to screenshot flows, scrape JS-heavy sites, or fill forms. Skip it if you're already scripting Puppeteer directly and don't need the conversational layer.
Good at
- Official Anthropic server, so it's maintained alongside the MCP spec and won't break unexpectedly.
- Handles JavaScript-rendered content that static scrapers miss entirely.
- Zero-config install on Claude Desktop - one command and you're running.
- Claude can adapt to page changes on the fly instead of failing on a missing selector.
- Genuinely faster than writing throwaway Puppeteer scripts for one-off tasks.
Watch out
- Doesn't persist browser sessions, so you'll re-authenticate for every new task.
- Conversational overhead makes it slower than scripted automation for repetitive jobs.
- Some sites block headless browsers, and there's no easy way to configure stealth mode.
- Complex workflows with lots of branching logic get awkward to describe in natural language.
Use cases
- Screenshotting a flow for bug reports
- Filling out web forms repeatedly
- Scraping JS-rendered sites
- Testing your own site visually
Getting started
Works with
Similar MCPs
- Playwright (Microsoft)Microsoft's official Playwright MCP — full browser control, accessibility tree, and click-by-text. The most capable browser MCP.
- Webpage Screenshot MCPCaptures full-page and element-specific screenshots for UI development feedback, with authentication and system browser support.
- BrowserbaseBrowserbase's hosted browser MCP. Lets Claude drive a real headless Chrome in the cloud, with session recording and proxy support.
- FirecrawlFirecrawl's MCP for high-quality web scraping. Returns clean markdown, handles JS-rendered sites, batch crawling.