Puppeteer MCP Server
✓ verifiedHeadless browser automation and web scraping.
Don't have ToolPiper? We'll take you to the download.
Publisher
License
MIT
Transport
Local subprocess
Tools
5
What this server does
Give the assistant a real Chromium to drive. Seven tools map to standard Puppeteer operations: `puppeteer_navigate`, `puppeteer_screenshot`, `puppeteer_click`, `puppeteer_hover`, `puppeteer_fill`, `puppeteer_select`, and `puppeteer_evaluate`. The last one runs arbitrary JavaScript in the page context, which is where most of the security thinking lives. Selectors are CSS, not accessibility roles. Two resources travel back to the host: `console://logs` (everything Chromium prints to the console) and `screenshot://<name>` (PNG bytes for each capture). The host can re-read either resource between tool calls, so a sequence like 'navigate, click, screenshot' produces an inspectable trail. Launch options pass through. The NPX version opens a visible browser window by default; the Docker version runs headless. Override with the `PUPPETEER_LAUNCH_OPTIONS` env var or per-call `launchOptions`. Dangerous flags such as `--no-sandbox` and `--disable-web-security` require an explicit `allowDangerous: true` or `ALLOW_DANGEROUS=true` opt-in. The upstream README is direct about the security model: this server can reach `file:///` URLs and internal IPs because it runs Chromium on your machine. That is the point of headed browser automation, and also the footgun. For production automation, Microsoft now publishes a Playwright-based MCP server at microsoft/playwright-mcp that has better hardening and a richer tool surface; the Anthropic reference here is archived but still functional.
Tools included
puppeteer_navigate
Navigate to a URL in a headless Chromium.
puppeteer_screenshot
Capture a screenshot of the current page or element.
puppeteer_click
Click an element matched by CSS selector.
puppeteer_fill
Fill an input field by selector.
puppeteer_evaluate
Run JavaScript in the page context.
The authoritative list comes from the server's tools/list at runtime. This catalog entry may lag the upstream until the next ToolPiper release.
Install in ToolPiper
ToolPiper handles the JSON configuration. Click Install, fill in any required tokens, and the server is ready in your chat.
Don't have ToolPiper? We'll take you to the download.
Install in another client
Install in another MCP client (Claude Desktop, Cursor, Continue, Cline)
Add this to ~/Library/Application Support/Claude/claude_desktop_config.json.
{
"mcpServers": {
"puppeteer": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}Example prompts
"Open example.com and screenshot the hero section."
"Navigate to localhost:3000, click 'Sign In', and screenshot the result."
"Fill the form at quotes.toscrape.com/search.aspx with author 'Einstein' and submit."
"Run document.title in the current page and return the value."
Security notes
The browser this server controls is the same one that can open `file:///` URLs and request internal IP addresses. A creative prompt can read local files, scan your home network, or pivot to internal services. Do not expose this server to untrusted prompts or untrusted page content. Keep `allowDangerous` at its default of false. `puppeteer_evaluate` runs arbitrary JavaScript in the page context, including any cookies and localStorage the browser holds. The upstream reference is archived. For new installations, microsoft/playwright-mcp ships better isolation and is actively maintained. ModelPiper also bundles its own CDP-based scraper inside ToolPiper if you prefer a local alternative.
Related tools
Fetch
✓ verifiedFetch web pages and return clean markdown.
SearchLocal subprocess1 toolGoogle Maps
✓ verifiedGeocoding, directions, and place lookup via Google Maps.
SearchLocal subprocess5 toolsBrave Search
✓ verifiedWeb and local search via Brave's privacy-focused search API.
SearchLocal subprocess2 toolsTavily
✓ verifiedWeb search and extraction tuned for AI agents.
SearchLocal subprocess4 tools