The `puppeteer-mcp-server` package, currently at version 0.7.2, provides an experimental Model Context Protocol (MCP) server for browser automation, leveraging the Puppeteer library. It offers capabilities such as web page navigation, screenshot capture, form filling, element interaction, and JavaScript execution within a browser environment. A significant feature is its intelligent Chrome tab management, enabling connections to existing active Chrome instances and preserving browser sessions for more efficient and context-aware automation workflows. This project is directly inspired by `@modelcontextprotocol/server-puppeteer` but explores alternative approaches. It operates primarily as a standalone command-line interface (CLI) application, designed for integration with AI agents like Claude Desktop or its VSCode Extension, allowing these agents to perform browser-based actions. Its release cadence is iterative, with recent updates focusing on refactoring and error handling, indicating active development. Due to its pre-1.0 experimental status, users should anticipate potential API adjustments and breaking changes as it evolves, although it is actively maintained.
npm install puppeteer-mcp-serverNo compatibility data collected yet for this library.
This quickstart illustrates configuring the MCP server for an AI agent (like Claude) using `npx`, and a programmatic TypeScript example of launching the server via `child_process`.
Regularly review the project's GitHub repository and release notes for updates. Pin specific versions in production environments to prevent unexpected breaking changes.
Ensure that `puppeteer` is correctly installed (often handled by `npm install`) which typically downloads Chromium. For headless environments or specific browser paths, configure Puppeteer's executable path or install necessary browser dependencies (e.g., `sudo apt install chromium`).
Double-check the `command` and `args` in the `mcpServers` JSON configuration. For source installations, ensure `node` and the correct `dist/index.js` path are specified. Verify that `NODE_OPTIONS: "--experimental-modules"` is included if running from source with ES modules.
If installed globally, verify `npm root -g` contains it. If locally, use `npx puppeteer-mcp-server` or add `$(npm bin)` to your PATH. Alternatively, configure the calling application to use `npx -y puppeteer-mcp-server`.
Ensure Puppeteer's default Chromium is downloaded by running `npm install` in the project directory. If using a custom browser, verify its path and permissions. For Docker or server environments, ensure browser dependencies are installed.
Check the server's console output for more specific preceding errors. Ensure all configuration files are correct and that Puppeteer can launch or connect to a browser successfully. Update to the latest version of `puppeteer-mcp-server` as this might be a bug fix.