{"library":"puppeteer-mcp-server","title":"Puppeteer MCP Server","description":"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.","language":"javascript","status":"active","last_verified":"Sun Apr 19","install":{"commands":["npm install puppeteer-mcp-server"],"cli":{"name":"puppeteer-mcp-server","version":null}},"imports":[],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"```json\n{\n  \"mcpServers\": {\n    \"puppeteer\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"puppeteer-mcp-server\", \"--port\", \"8080\"],\n      \"env\": {}\n    }\n  }\n}\n```\n\n```typescript\n// To programmatically run the server, a common approach for development or embedding\n// would be to use a child process or a package.json script.\n// This example demonstrates running it via Node.js CLI.\n// Ensure 'dist/index.js' exists after building the project (npm run build).\n\nimport { exec } from 'child_process';\n\nconst serverProcess = exec('node dist/index.js --port 8080', { cwd: '/path/to/your/puppeteer-mcp-server' });\n\nserverProcess.stdout?.on('data', (data) => {\n  console.log(`Server Output: ${data}`);\n});\n\nserverProcess.stderr?.on('data', (data) => {\n  console.error(`Server Error: ${data}`);\n});\n\nserverProcess.on('close', (code) => {\n  console.log(`Server process exited with code ${code}`);\n});\n\nconsole.log('Puppeteer MCP Server started via child process.');\n// In a real application, you'd manage the lifecycle, e.g., stop on app exit.\n// serverProcess.kill(); // To stop the server programmatically\n```","lang":"typescript","description":"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`.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}