- Home
- MCP servers
- Puppeteer
Puppeteer
- javascript
1
GitHub Stars
javascript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"rotexhawk-mcp-puppeteer-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--init",
"-e",
"DOCKER_CONTAINER=true",
"mcp/puppeteer"
],
"env": {
"DOCKER_CONTAINER": "true"
}
}
}
}You can use the Puppeteer MCP Server to automate a real browser from your MCP client. It lets you navigate pages, take screenshots, interact with elements, run JavaScript in the page, and capture console logs for debugging. This makes it easy to build workflows that rely on live web pages, such as testing, data extraction, or automated browsing tasks.
How to use
To use the Puppeteer MCP Server, start it locally or via a remote MCP endpoint and connect your MCP client. Once connected, you can run a sequence of tools to drive a browser session: navigate to a URL, click or hover elements, fill forms, select options, evaluate scripts, and capture screenshots. You can also monitor the browser console output to debug scripts and verify that your interactions are performing as expected.
How to install
Prerequisites: ensure you have a compatible runtime environment installed, including Docker and Node with npm. You will run either a Docker container or an NPX command to start the server.
{
"mcpServers": {
"puppeteer": {
"command": "docker",
"args": ["run", "-i", "--rm", "--init", "-e", "DOCKER_CONTAINER=true", "mcp/puppeteer"]
},
"puppeteer_npx": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-puppeteer"]
}
}
}
Additional sections
Configuration notes: The server exposes two MCP entry points, one running in Docker and one as an NPX-based local command. Use the Docker-based approach when you want headless Chromium inside a container. Use the NPX approach for a quick, local browser instance without containerization.
Available tools
puppeteer_navigate
Navigate to a URL in the browser session. Input: url (string)
puppeteer_screenshot
Capture screenshots of the entire page or a specific element. Inputs: name (string, required), selector (string, optional), width (number, optional, default 800), height (number, optional, default 600)
puppeteer_click
Click elements on the page. Input: selector (string)
puppeteer_hover
Hover elements on the page. Input: selector (string)
puppeteer_fill
Fill input fields. Inputs: selector (string), value (string)
puppeteer_select
Select an option in a SELECT element. Inputs: selector (string), value (string)
puppeteer_evaluate
Execute JavaScript in the browser console. Input: script (string)