The Puppeteer MCP Server enables browser automation and web interaction through Puppeteer, providing tools for:
Navigate to any URL (
puppeteer_navigate
)Capture screenshots of pages or elements (
puppeteer_screenshot
)Click elements identified by CSS selectors (
puppeteer_click
)Hover over elements (
puppeteer_hover
)Fill input fields with specified values (
puppeteer_fill
)Select options from dropdowns (
puppeteer_select
)Execute JavaScript in the browser context (
puppeteer_evaluate
)Monitor and access browser console logs (
console://logs
)Retrieve captured screenshots (
screenshot://<name>
)Get history of visited URLs (
puppeteer_page_history
)Make HTTP requests with various methods (
make_http_request
)Semantically search network requests within specific pages (
semantic_search_requests
)
Enables interaction with web page elements through CSS selectors for actions like clicking, hovering, and capturing screenshots of specific elements
Allows executing JavaScript code in the browser console using the puppeteer_evaluate tool
Provides browser automation capabilities using Puppeteer, enabling LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment
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.
Components
Tools
puppeteer_navigate
Navigate to any URL in the browser
Input:
url
(string)
puppeteer_screenshot
Capture screenshots of the entire page or specific elements
Inputs:
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 height
puppeteer_click
Click elements on the page
Input:
selector
(string): CSS selector for element to click
puppeteer_hover
Hover elements on the page
Input:
selector
(string): CSS selector for element to hover
puppeteer_fill
Fill out input fields
Inputs:
selector
(string): CSS selector for input fieldvalue
(string): Value to fill
puppeteer_select
Select an element with SELECT tag
Inputs:
selector
(string): CSS selector for element to selectvalue
(string): Value to select
puppeteer_evaluate
Execute JavaScript in the browser console
Input:
script
(string): JavaScript code to execute
Resources
The server provides access to two types of resources:
Console Logs (
console://logs
)Browser console output in text format
Includes all console messages from the browser
Screenshots (
screenshot://<name>
)PNG images of captured screenshots
Accessible via the screenshot name specified during capture
Key Features
Browser automation
Console log monitoring
Screenshot capabilities
JavaScript execution
Basic web interaction (navigation, clicking, form filling)
Configuration to use Puppeteer Server
Here's the Claude Desktop configuration to use the Puppeter server:
Docker
NOTE The docker implementation will use headless chromium, where as the NPX version will open a browser window.
NPX
Build
Docker build:
License
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.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables LLMs to perform web browsing tasks, take screenshots, and execute JavaScript using Puppeteer for browser automation.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityEnables LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environmentLast updated -10633260MIT License
- AsecurityAlicenseAqualityThis server provides cloud browser automation capabilities using Browserbase, Puppeteer, and Stagehand. This server enables LLMs to interact with web pages, take screenshots, and execute JavaScript in a cloud browser environment.Last updated -2,0542,682Apache 2.0
- AsecurityAlicenseAqualityEnables LLMs like Claude to navigate the web through Puppeteer-based tools and Steel. Based on the Web Voyager framework, it provides tools for all the standard web actions click clicking/scrolling/typing/etc and taking screenshots.Last updated -42MIT License
- AsecurityFlicenseAqualityEnables browser automation for LLMs on Linux display servers, supporting web interaction, screenshots, and JavaScript execution in a real browser.Last updated -707