mcp/puppeteer
A Model Context Protocol server that provides browser automation capabilities using Puppeteer. This server enables LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment.
puppeteer_navigate
url
(string)puppeteer_screenshot
name
(string, required): Name for the screenshotselector
(string, optional): CSS selector for element to screenshotwidth
(number, optional, default: 800): Screenshot widthheight
(number, optional, default: 600): Screenshot heightpuppeteer_click
selector
(string): CSS selector for element to clickpuppeteer_hover
selector
(string): CSS selector for element to hoverpuppeteer_fill
selector
(string): CSS selector for input fieldvalue
(string): Value to fillpuppeteer_select
selector
(string): CSS selector for element to selectvalue
(string): Value to selectpuppeteer_evaluate
script
(string): JavaScript code to executeThe server provides access to two types of resources:
Console Logs (console://logs
)
Screenshots (screenshot://<name>
)
Here's the Claude Desktop configuration to use the Puppeter server:
NOTE The docker implementation will use headless chromium, where as the NPX version will open a browser window.
{
"mcpServers": {
"puppeteer": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--init",
"-e",
"DOCKER_CONTAINER=true",
"mcp/puppeteer"
]
}
}
}
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
docker pull mcp/puppeteer