Configurable Puppeteer MCP Server
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.
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)
- Configurable Puppeteer options through environment variables
Configuration
Using with Custom Puppeteer Options
You can configure Puppeteer launch options by providing a JSON string in the PUPPETEER_ARGS environment variable. This allows you to customize browser behavior without modifying the server code.
Example: Using Firefox Instead of Chrome
Example: Configuring Browser Window Size
Standard Configuration
NPX
You can also specify a branch, tag, or commit:
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.
Tools
Puppeteer를 사용하여 브라우저 자동화 기능을 제공하는 모델 컨텍스트 프로토콜 서버로, 환경 변수를 통해 구성 가능한 옵션을 제공하여 LLM이 웹 페이지와 상호 작용하고, 스크린샷을 찍고, 브라우저 환경에서 JavaScript를 실행할 수 있도록 합니다.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to automate web browsers using Puppeteer, allowing navigation, screenshots, form filling, and JavaScript execution in a real browser environment.Last updated -1JavaScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that provides browser automation capabilities using Puppeteer, enabling LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment.Last updated -717,852JavaScript
- -securityAlicense-qualityA Model Context Protocol server that provides enhanced browser automation capabilities using Puppeteer-Extra with Stealth Plugin, enabling LLMs to interact with web pages in a way that better emulates human behavior and avoids detection as automation.Last updated -2TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages, take screenshots, generate test code, scrape web content, and execute JavaScript in real browser environments.Last updated -3111,282TypeScriptMIT License