MCP server for browser automation using Puppeteer with configurable options
MCP server for browser automation using Puppeteer with configurable options
A Model Context Protocol server that provides browser automation capabilities using Puppeteer with configurable options. This server enables LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment, with the ability to customize Puppeteer launch options through environment variables.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
puppeteer_navigate — Navigate to any URL in the browserInput — url (string)puppeteer_screenshot — Capture screenshots of the entire page or specific elementsInputs — - name (string, required): Name for the screenshotpuppeteer_click — Click elements on the pagepuppeteer_hover — Hover elements on the pagepuppeteer_fill — Fill out input fieldspuppeteer_select — Select an element with SELECT tagpuppeteer_evaluate — Execute JavaScript in the browser consoleTools — The Tools tool exposed by this serverResources — 1. Console Logs (console://logs) - Browser console output in text format - Includes all console messages from the browserSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.
Configuration is passed through the environment: PUPPETEER_ARGS. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
puppeteer_navigate — Navigate to any URL in the browserpuppeteer_screenshot — Capture screenshots of the entire page or specific elementspuppeteer_click — Click elements on the pagepuppeteer_hover — Hover elements on the pagepuppeteer_fill — Fill out input fieldspuppeteer_select — Select an element with SELECT tagpuppeteer_evaluate — Execute JavaScript in the browser consoleCompare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| puppeteer_navigate | Navigate to any URL in the browser |
| puppeteer_screenshot | Capture screenshots of the entire page or specific elements |
| Inputs: | selector (string): CSS selector for element to select |
| selector | string, optional): CSS selector for element to screenshot |
| width | number, optional, default: 800): Screenshot width |
| height | number, optional, default: 600): Screenshot height |
| puppeteer_click | Click elements on the page |
| puppeteer_hover | Hover elements on the page |
| puppeteer_fill | Fill out input fields |
| value | string): Value to select |
| puppeteer_select | Select an element with SELECT tag |
| puppeteer_evaluate | Execute JavaScript in the browser console |
{
"mcpServers": {
"puppeteer": {
"command": "npx",
"args": [
"-y",
"github:afshawnlotfi/mcp-configurable-puppeteer"
],
"env": {
"PUPPETEER_ARGS": "{\"browser\": \"firefox\"}"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| PUPPETEER_ARGS | Declared in the maintainer’s client configuration. | Check documentation |
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Enables AI-powered applications to monitor and interact with browser data via a Chrome extension and MCP.