
@hisma/server-puppeteer
by hisma
@hisma/server-puppeteer
Fork and update (v0.6.5) of the original
@modelcontextprotocol/server-puppeteerMCP server for browser automation using Puppeteer.
This package provides a Model Context Protocol (MCP) server implementation to drive headless Chrome via Puppeteer. It is a direct fork and version bump of the archived @modelcontextprotocol/server-puppeteer (v0.6.2), now maintained under the hisma namespace.
π¦ Installation
Install the latest release from npm:
npm install @hisma/[email protected]
π Usage
Run the server with Node:
npx mcp-server-puppeteer
Or in Docker (example):
docker run --pull=always --name puppeteer -i --rm --init -e DOCKER_CONTAINER=true hisma/server-puppeteer:0.6.3
The server listens on port 8080 by default and speaks the MCP JSON-RPC protocol over stdin/stdout or TCP when configured.
π Repository & Homepage
- Repository: https://github.com/Hisma/servers-archived.git
- Homepage: https://github.com/Hisma/servers-archived/tree/main/src/puppeteer
Maintained by Richard Meyer (hisma) under the MIT license.
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.
[!CAUTION] This server can access local files and local/internal IP addresses since it runs a browser on your machine. Exercise caution when using this MCP server to ensure this does not expose any sensitive data.
Components
Tools
-
puppeteer_navigate
- Navigate to any URL in the browser
- Inputs:
url(string, required): URL to navigate tolaunchOptions(object, optional): PuppeteerJS LaunchOptions. Default null. If changed and not null, browser restarts. Example:{ headless: true, args: ['--user-data-dir="C:/Data"'] }allowDangerous(boolean, optional): Allow dangerous LaunchOptions that reduce security. When false, dangerous args like--no-sandbox,--disable-web-securitywill throw errors. Default false.
-
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 heightencoded(boolean, optional): If true, capture the screenshot as a base64-encoded data URI (as text) instead of binary image content. Default false.
-
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,
Related servers

n8n
by n8n-io
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

@modelcontextprotocol/server-everything
OfficialMCP server that exercises all the features of the MCP protocol

@modelcontextprotocol/server-filesystem
OfficialMCP server for filesystem access