onestep-puppeteer-mcp-server
MCP ServerFreeExperimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
Capabilities8 decomposed
headless-browser-automation-via-mcp
Medium confidenceExposes Puppeteer browser automation capabilities through the Model Context Protocol (MCP), allowing LLM agents to control headless Chrome/Chromium instances via standardized tool calls. Implements MCP server transport layer that translates LLM function-calling requests into Puppeteer API invocations, managing browser lifecycle (launch, navigation, interaction) and returning structured results back to the agent context.
Bridges Puppeteer directly into MCP protocol, enabling LLM agents to invoke browser automation as first-class tools without custom wrapper code. Implements MCP resource/tool discovery so agents can introspect available browser capabilities.
Simpler integration than building custom Puppeteer API wrappers for each LLM framework; MCP standardization allows the same server to work with any MCP-compatible client (Claude, custom agents, etc.)
page-navigation-and-content-retrieval
Medium confidenceImplements Puppeteer navigation primitives (goto, reload, back, forward) with configurable wait conditions (networkidle, domcontentloaded, load) and returns full page content (HTML, text, metadata). Handles navigation timeouts, error states, and page load detection to ensure reliable content retrieval before proceeding with further automation steps.
Exposes Puppeteer's wait-condition logic through MCP, allowing agents to specify load-readiness criteria (networkidle, domcontentloaded) rather than fixed delays. Returns structured page metadata alongside content.
More reliable than simple HTTP clients for JavaScript-heavy sites; wait conditions prevent race conditions where agent tries to extract data before page renders
dom-element-interaction-and-selection
Medium confidenceProvides CSS/XPath selector-based element interaction (click, type, focus, hover) and element property retrieval (text, attributes, visibility). Uses Puppeteer's page.$(selector) and page.$$(selector) for element discovery, then invokes actions with error handling for missing/invisible elements. Returns interaction results and element state snapshots to the agent.
Wraps Puppeteer element APIs (page.$, page.$$, element.click, element.type) as discrete MCP tools, allowing agents to compose multi-step interactions. Includes element property introspection (text, attributes, visibility) for conditional branching.
More granular than Selenium/Playwright wrappers that often batch operations; allows agents to inspect element state between actions for adaptive behavior
screenshot-and-visual-capture
Medium confidenceCaptures full-page or viewport screenshots via Puppeteer's page.screenshot() with configurable options (format, quality, clip region). Returns images as base64-encoded strings or file paths, enabling agents to visually inspect page state or verify automation results. Supports full-page scrolling capture and region-specific screenshots.
Integrates Puppeteer screenshot capability into MCP, allowing agents to request visual snapshots as part of automation workflows. Supports both full-page and region-specific captures with configurable output formats.
More flexible than static screenshot tools; agents can request screenshots at any point in a workflow to verify state or debug failures
page-content-evaluation-and-javascript-execution
Medium confidenceExecutes arbitrary JavaScript in the page context via Puppeteer's page.evaluate() and page.evaluateHandle(), returning serialized results. Enables agents to run custom scripts for data extraction, DOM manipulation, or state inspection without separate tool calls. Handles serialization of return values (primitives, objects, arrays) and error propagation.
Exposes Puppeteer's page.evaluate() as an MCP tool, allowing agents to execute arbitrary JavaScript in the page context. Handles serialization and error propagation transparently.
More powerful than selector-based extraction for complex DOM structures; agents can run custom logic without leaving the browser context
mcp-protocol-transport-and-tool-discovery
Medium confidenceImplements MCP server transport layer (stdio or HTTP) that exposes browser automation capabilities as discoverable tools and resources. Handles MCP protocol handshake, tool schema definition, and request/response marshaling. Allows MCP clients (Claude, custom agents) to discover available browser operations and invoke them with type-safe parameters.
Implements full MCP server stack (protocol handling, tool schema registration, request marshaling) for Puppeteer, abstracting away transport details. Enables seamless integration with any MCP-compatible client.
Standardized MCP interface allows the same server to work with multiple clients (Claude, custom agents); avoids custom protocol/API design
browser-lifecycle-management
Medium confidenceManages browser instance lifecycle (launch, close, context creation) through MCP tool calls. Handles browser initialization with configurable options (headless mode, viewport size, user agent) and graceful shutdown. Maintains single browser instance per server process with context isolation for multi-step workflows.
Exposes Puppeteer browser lifecycle as MCP tools, allowing agents to control browser startup/shutdown as part of workflows. Manages single persistent instance across multiple tool calls.
Simpler than managing browser instances externally; agents can request browser operations without worrying about process management
cookie-and-session-management
Medium confidenceProvides tools to get, set, and delete cookies and local storage via Puppeteer's page.cookies() and page.evaluate() APIs. Enables agents to persist authentication state, manage sessions, and handle cookie-based workflows. Supports cookie serialization/deserialization for cross-session reuse.
Wraps Puppeteer cookie APIs as MCP tools, enabling agents to manage session state as part of automation workflows. Supports cookie serialization for cross-session persistence.
More convenient than manual HTTP header manipulation; agents can work with cookies at the browser level where they're naturally managed
Capabilities are decomposed by AI analysis. Each maps to specific user intents and improves with match feedback.
Related Artifactssharing capabilities
Artifacts that share capabilities with onestep-puppeteer-mcp-server, ranked by overlap. Discovered automatically through the match graph.
puppeteer-mcp-server
Experimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
@hisma/server-puppeteer
Fork and update (v0.6.5) of the original @modelcontextprotocol/server-puppeteer MCP server for browser automation using Puppeteer.
Puppeteer
** - Browser automation and web scraping.
puppeteer-mcp-server
Experimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
@mseep/puppeteer-mcp-server
Experimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
@todoforai/puppeteer-mcp-server
Experimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
Best For
- ✓LLM application developers building autonomous web agents
- ✓Teams integrating Puppeteer automation into Claude/GPT-based workflows
- ✓Researchers prototyping browser-based task automation with language models
- ✓Web scraping workflows where page load state matters
- ✓Multi-step navigation scenarios (crawling site hierarchies)
- ✓Agents that need to verify page state before proceeding
- ✓Form automation and web application testing
- ✓Dynamic page interaction where agent must locate and act on elements
Known Limitations
- ⚠Experimental/unstable — not production-ready, API may change without notice
- ⚠Single browser instance per MCP server process — no built-in multi-browser concurrency management
- ⚠No persistent session state across MCP server restarts — browser context is ephemeral
- ⚠Puppeteer requires significant memory overhead (typically 100-300MB per browser instance)
- ⚠No built-in timeout or resource limits — long-running automation can exhaust system resources
- ⚠No built-in JavaScript execution context inspection — can't directly query page state from agent
Requirements
Input / Output
UnfragileRank
UnfragileRank is computed from adoption signals, documentation quality, ecosystem connectivity, match graph feedback, and freshness. No artifact can pay for a higher rank.
Package Details
About
Experimental MCP server for browser automation using Puppeteer (inspired by @modelcontextprotocol/server-puppeteer)
Categories
Alternatives to onestep-puppeteer-mcp-server
Are you the builder of onestep-puppeteer-mcp-server?
Claim this artifact to get a verified badge, access match analytics, see which intents users search for, and manage your listing.
Get the weekly brief
New tools, rising stars, and what's actually worth your time. No spam.
Data Sources
Looking for something else?
Search →