Overview
Puppeteer is a Model Context Protocol server that provides browser automation capabilities, allowing LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment.
To use Puppeteer, configure your machine as specified in the provided configuration JSON and interact with the server via its various tools for navigation, screenshots, and web interactions.
- Browser automation for web scraping and interaction - Capture screenshots of web pages or individual elements - Console log monitoring to track browser activities - Execute JavaScript commands in the browser - Support for basic interactions like clicking and form filling
- Automating data collection from websites for analysis
- Testing web applications by simulating user interactions
- Taking screenshots for documentation and reporting purposes
Add to your AI client
Use these steps to connect Puppeteer in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"puppeteer-modelcontextprotocol": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"puppeteer-modelcontextprotocol": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"puppeteer-modelcontextprotocol": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"puppeteer-modelcontextprotocol": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"puppeteer-modelcontextprotocol": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"puppeteer-modelcontextprotocol": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-puppeteer"
]
}
}
}FAQ
What can Puppeteer automate?
Puppeteer can automate various web interactions such as navigation, form filling, and element clicks.
Is there any cost to use Puppeteer?
No, Puppeteer is free to use under the MIT License.
How do I install Puppeteer?
You can install Puppeteer by running the specified command in the project's configuration setup.