puppeteer.com
puppeteer.com logo

Puppeteer

Navigate websites, fill forms, and capture screenshots programmatically.

Created byApr 22, 2025

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
  • puppeteer_screenshot
  • puppeteer_click
  • puppeteer_hover
  • puppeteer_fill
  • puppeteer_select
  • puppeteer_evaluate

Resources

The server provides access to two types of resources:
  1. Console Logs (console://logs)
  1. Screenshots (screenshot://<name>)

Key Features

  • Browser automation
  • Console log monitoring
  • Screenshot capabilities
  • JavaScript execution
  • Basic web interaction (navigation, clicking, form filling)
  • Customizable Puppeteer launch options

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

Launch Options

You can customize Puppeteer's browser behavior in two ways:
  1. Environment Variable: Set PUPPETEER_LAUNCH_OPTIONS with a JSON-encoded string in the MCP configuration's env parameter:
  1. Tool Call Arguments: Pass launchOptions and allowDangerous parameters to the puppeteer_navigate tool:

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.

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
  • puppeteer_screenshot
  • puppeteer_click
  • puppeteer_hover
  • puppeteer_fill
  • puppeteer_select
  • puppeteer_evaluate

Resources

The server provides access to two types of resources:
  1. Console Logs (console://logs)
  1. Screenshots (screenshot://<name>)

Key Features

  • Browser automation
  • Console log monitoring
  • Screenshot capabilities
  • JavaScript execution
  • Basic web interaction (navigation, clicking, form filling)
  • Customizable Puppeteer launch options

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

Launch Options

You can customize Puppeteer's browser behavior in two ways:
  1. Environment Variable: Set PUPPETEER_LAUNCH_OPTIONS with a JSON-encoded string in the MCP configuration's env parameter:
  1. Tool Call Arguments: Pass launchOptions and allowDangerous parameters to the puppeteer_navigate tool:

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.