browser-devtools-mcp
MCP ServerFreeMCP Server for Browser Dev Tools
Capabilities11 decomposed
browser-devtools-protocol-bridging
Medium confidenceExposes Chrome DevTools Protocol (CDP) as MCP resources and tools, allowing LLM agents to interact with browser automation and inspection through a standardized message-passing interface. Implements bidirectional communication between MCP clients and CDP endpoints, translating MCP tool calls into CDP commands and streaming CDP events back as resource updates.
Directly maps MCP tool schema to Chrome DevTools Protocol methods, eliminating the need for intermediate abstraction layers like Puppeteer; enables LLM agents to access low-level browser inspection and control primitives (DOM queries, network interception, JavaScript evaluation) without wrapper libraries
More direct and lower-latency than Puppeteer/Playwright MCP wrappers because it translates MCP calls directly to CDP without additional process overhead or abstraction layers
page-navigation-and-context-management
Medium confidenceManages browser page lifecycle (navigation, reload, back/forward) and maintains context about the current page state (URL, title, DOM structure). Implements CDP Page domain methods wrapped as MCP tools, allowing agents to navigate to URLs, wait for page load events, and retrieve structured snapshots of page content for decision-making.
Exposes CDP Page domain as MCP tools with built-in wait-for-load semantics, allowing agents to express navigation intent declaratively ('navigate to URL and wait for load') rather than managing event listeners and timeouts manually
Simpler than Playwright's page object model for MCP because it maps directly to CDP primitives without introducing additional state management or retry logic
mcp-resource-streaming-for-page-state
Medium confidenceExposes current page state (DOM, metadata, network activity, console logs) as MCP resources that agents can subscribe to and monitor in real-time. Implements resource URIs for different page aspects (e.g., 'browser://page/dom', 'browser://page/console'), with automatic updates as page state changes, enabling agents to maintain contextual awareness without polling.
Implements MCP resource protocol for page state, allowing agents to subscribe to real-time updates rather than polling or managing CDP event listeners manually, providing a declarative interface to browser state
More efficient than polling-based state checks because it streams updates as they occur, reducing latency and network overhead for long-running automation workflows
dom-query-and-element-inspection
Medium confidenceProvides MCP tools for querying the DOM using CSS selectors or XPath, retrieving element properties (text content, attributes, computed styles, bounding box), and inspecting element hierarchy. Implements CDP DOM domain methods with selector-based lookup, enabling agents to locate and analyze page elements without JavaScript execution.
Wraps CDP DOM.querySelector and DOM.getAttributes as MCP tools with structured output, allowing agents to query and inspect elements without writing JavaScript or managing CDP node IDs directly
More efficient than Puppeteer's page.evaluate() for simple DOM queries because it uses CDP's native DOM domain instead of spinning up a JavaScript context
user-interaction-simulation
Medium confidenceSimulates user interactions (click, type, scroll, hover, key press) by translating MCP tool calls into CDP Input domain commands. Implements element targeting via CSS selector or coordinates, with automatic scroll-into-view and focus management, enabling agents to interact with page elements without JavaScript injection.
Combines CDP Input domain (for low-level event injection) with element targeting via selectors, providing agents with high-level interaction primitives (click element by selector) without requiring coordinate calculation or JavaScript event handling
More reliable than JavaScript-based click simulation because it uses CDP's native input injection, which properly triggers browser event handlers and respects z-index/visibility rules
javascript-execution-and-evaluation
Medium confidenceExecutes arbitrary JavaScript in the page context via CDP Runtime domain, allowing agents to evaluate expressions, call page functions, and access JavaScript objects. Implements serialization of return values to JSON, with support for primitive types, objects, and arrays, enabling agents to extract computed data or trigger page-specific logic.
Exposes CDP Runtime.evaluate as an MCP tool with automatic JSON serialization, allowing agents to execute arbitrary JavaScript without managing CDP protocol details or handling serialization errors manually
More flexible than DOM-only queries for complex data extraction because it can access JavaScript state and call page functions, but requires careful error handling for non-serializable return values
network-activity-monitoring-and-interception
Medium confidenceMonitors network requests and responses via CDP Network domain, providing agents with visibility into HTTP traffic, response bodies, and request headers. Implements request/response logging with optional filtering by URL pattern or resource type, enabling agents to verify API calls, extract data from network responses, or detect failed requests.
Exposes CDP Network domain as MCP tools with structured request/response logging, allowing agents to monitor and analyze network traffic without writing custom CDP event listeners or managing request buffering
More comprehensive than Puppeteer's request interception because it captures full response bodies and provides detailed timing metrics, but requires explicit enablement to avoid memory overhead
console-and-error-logging
Medium confidenceCaptures console output (log, warn, error, info) and JavaScript errors via CDP Runtime domain, streaming them as MCP resources or tool responses. Implements log level filtering and error stack trace capture, enabling agents to monitor page health and detect runtime errors during automation.
Streams console and error events from CDP Runtime domain as MCP resources, allowing agents to monitor page health in real-time without polling or manual log extraction
More immediate than checking page state after interactions because it captures errors as they occur, enabling agents to detect and respond to failures during automation
screenshot-and-visual-capture
Medium confidenceCaptures page screenshots and visual state via CDP Page.captureScreenshot, returning base64-encoded PNG images. Implements viewport-aware capture with optional clipping to specific elements or regions, enabling agents to verify visual state, detect layout changes, or provide visual context for decision-making.
Exposes CDP Page.captureScreenshot as an MCP tool with optional element-based clipping, allowing agents to capture visual state without managing viewport calculations or image encoding
More efficient than Puppeteer's screenshot method for MCP because it returns base64-encoded data directly without intermediate file I/O
performance-metrics-and-timing-analysis
Medium confidenceRetrieves page performance metrics (navigation timing, resource timing, Core Web Vitals) via CDP Performance domain, providing agents with quantitative data about page load performance and responsiveness. Implements metric aggregation and filtering, enabling agents to detect performance regressions or optimize slow pages.
Exposes CDP Performance domain as MCP tools with aggregated metric output, allowing agents to analyze page performance without parsing raw timing data or managing CDP protocol details
More comprehensive than Lighthouse for MCP because it provides real-time metrics during automation rather than requiring a separate audit run
cookie-and-storage-management
Medium confidenceManages browser cookies and storage (localStorage, sessionStorage, IndexedDB) via CDP Storage domain, enabling agents to set/get/delete cookies, inspect storage contents, and maintain session state across page navigations. Implements storage type detection and serialization, allowing agents to persist and retrieve data without JavaScript execution.
Exposes CDP Storage domain as MCP tools for cookie and storage management, allowing agents to maintain session state and inspect application storage without JavaScript or manual cookie handling
More reliable than JavaScript-based storage access because it uses CDP's native storage domain, which respects browser security policies and handles domain-specific restrictions automatically
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 browser-devtools-mcp, ranked by overlap. Discovered automatically through the match graph.
chrome-devtools-mcp
MCP server for Chrome DevTools
playwright-mcp
Playwright MCP server
playwright-mcp
Playwright MCP server
@executeautomation/playwright-mcp-server
Model Context Protocol servers for Playwright
Playwright MCP Server
Automate browsers and run web tests via Playwright MCP.
Puppeteer
** - Browser automation and web scraping.
Best For
- ✓AI agent developers building browser automation workflows
- ✓Teams integrating LLMs with web testing and debugging pipelines
- ✓Developers prototyping AI-driven web scraping and interaction systems
- ✓Web scraping agents that need to traverse multi-page workflows
- ✓Testing automation where page state verification is critical
- ✓Research agents that need to navigate and analyze multiple web pages
- ✓Long-running agents that need to react to page state changes
- ✓Multi-step workflows where page state is critical context for decisions
Known Limitations
- ⚠Requires active Chrome/Chromium instance with DevTools Protocol enabled (--remote-debugging-port flag)
- ⚠No built-in session persistence — each MCP connection maps to a single CDP session
- ⚠Limited to Chrome/Edge/Chromium browsers; Safari and Firefox require separate protocol implementations
- ⚠Network latency between MCP server and CDP endpoint can add 50-200ms per command
- ⚠No built-in handling of JavaScript-heavy SPAs — may require explicit wait conditions for dynamic content
- ⚠Page load detection relies on CDP Page.frameStoppedLoading event, which may fire before all async resources load
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
MCP Server for Browser Dev Tools
Categories
Alternatives to browser-devtools-mcp
Are you the builder of browser-devtools-mcp?
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 →