{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"npm-chrome-devtools-mcp","slug":"chrome-devtools-mcp","name":"chrome-devtools-mcp","type":"mcp","url":"https://github.com/ChromeDevTools/chrome-devtools-mcp#readme","page_url":"https://unfragile.ai/chrome-devtools-mcp","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"npm-chrome-devtools-mcp__cap_0","uri":"capability://tool.use.integration.remote.browser.automation.via.devtools.protocol","name":"remote-browser-automation-via-devtools-protocol","description":"Enables MCP clients to control Chrome/Chromium instances through the Chrome DevTools Protocol (CDP), allowing programmatic browser automation including navigation, DOM manipulation, and JavaScript execution. Implements a bidirectional WebSocket connection to the Chrome debugger endpoint, translating MCP tool calls into CDP commands and streaming responses back through the MCP protocol layer.","intents":["Automate browser interactions from an AI agent without using Selenium or Puppeteer","Execute JavaScript in a real browser context and capture results programmatically","Navigate to URLs and interact with web pages as part of an agentic workflow","Inspect DOM state and extract structured data from live web pages"],"best_for":["AI agents and LLM applications requiring web automation capabilities","Teams building MCP-based automation frameworks","Developers integrating browser control into Claude or other MCP-compatible AI systems"],"limitations":["Requires a running Chrome/Chromium instance with DevTools Protocol enabled (--remote-debugging-port flag)","Single browser context per MCP server instance — no built-in multiplexing for concurrent browser sessions","Network latency between MCP client and Chrome instance adds overhead; not suitable for sub-100ms interaction requirements","No automatic handling of browser crashes or connection drops — requires external orchestration for resilience"],"requires":["Chrome or Chromium browser with --remote-debugging-port=9222 (or custom port) enabled","Node.js 16+ runtime for the MCP server","MCP-compatible client (Claude, custom agent framework, etc.)","Network connectivity between MCP server and Chrome debugger endpoint"],"input_types":["URL strings for navigation","JavaScript code snippets for execution","CSS selectors or XPath expressions for element targeting","JSON-structured commands mapping to CDP methods"],"output_types":["JSON-serialized CDP responses (navigation results, execution results)","DOM snapshots and element properties","Screenshot data (base64-encoded or file paths)","JavaScript execution results (primitives, objects, errors)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_1","uri":"capability://automation.workflow.page.navigation.and.load.state.tracking","name":"page-navigation-and-load-state-tracking","description":"Provides MCP tools for navigating to URLs, waiting for page load completion, and monitoring navigation state changes. Translates MCP tool invocations into CDP Page.navigate and Page.waitForNavigation commands, with built-in handling for load events (domContentLoaded, load) and network idle detection to ensure pages are fully interactive before returning control.","intents":["Navigate to a URL and wait for the page to be fully loaded before proceeding","Handle redirects and multi-step navigation flows in agentic workflows","Detect when a page is ready for interaction (DOM ready vs fully loaded)","Implement retry logic for failed navigations or timeouts"],"best_for":["Agents performing multi-step web scraping or data extraction workflows","Automation scenarios requiring reliable page load detection","Systems that need to distinguish between DOM-ready and fully-loaded states"],"limitations":["No built-in handling for Single Page Application (SPA) route changes — requires custom JavaScript execution to detect client-side navigation","Timeout values are fixed or require re-invocation with different parameters; no adaptive timeout based on page complexity","Network idle detection may timeout on pages with continuous background requests (analytics, WebSockets, polling)","Does not handle authentication flows or cookie/session management — requires separate setup"],"requires":["Chrome DevTools Protocol connection established","Target page must be accessible from the Chrome instance's network context","Valid URL format (http/https)"],"input_types":["URL string","Optional timeout in milliseconds","Optional wait condition (domContentLoaded, load, networkIdle)"],"output_types":["Navigation success/failure status","Final URL after redirects","Page load timing metrics","Error messages for failed navigations"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_10","uri":"capability://automation.workflow.viewport.and.device.emulation","name":"viewport-and-device-emulation","description":"Enables MCP clients to set viewport dimensions and emulate device characteristics (user agent, touch support, device pixel ratio). Implements CDP Emulation domain with device preset support, allowing agents to test responsive behavior or simulate mobile/tablet interactions.","intents":["Test responsive design by changing viewport dimensions","Emulate mobile or tablet devices to verify mobile-specific behavior","Simulate touch input for testing touch-based interactions","Override user agent to test browser-specific code paths"],"best_for":["Responsive design testing and validation workflows","Mobile automation and testing scenarios","Cross-device compatibility verification"],"limitations":["Device emulation is not perfect; some device-specific behaviors (hardware acceleration, battery status) are not fully emulated","Viewport changes may cause page reflow and re-render; timing-sensitive tests may be affected","Touch emulation is basic; complex multi-touch gestures are not supported","User agent spoofing may not fool all detection mechanisms; some sites may detect emulation","Device presets are limited to common devices; custom device profiles require manual specification"],"requires":["Chrome DevTools Protocol connection","Page must be loaded before viewport changes take effect"],"input_types":["Viewport width and height in pixels","Optional device pixel ratio","Optional user agent string","Optional device preset name (iPhone, iPad, Pixel, etc.)","Optional touch support flag"],"output_types":["Success/failure status","Current viewport dimensions and device settings","Error messages for unsupported configurations"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_11","uri":"capability://tool.use.integration.mcp.protocol.bridging.and.tool.registration","name":"mcp-protocol-bridging-and-tool-registration","description":"Implements the core MCP server infrastructure that bridges Chrome DevTools Protocol capabilities to MCP clients. Handles tool registration, request/response serialization, and error handling according to MCP specification, enabling any MCP-compatible client (Claude, custom agents) to invoke Chrome automation capabilities through standardized tool calls.","intents":["Register Chrome automation capabilities as MCP tools for AI clients to discover and invoke","Serialize and deserialize requests/responses between MCP protocol and CDP format","Handle errors and edge cases gracefully, returning structured error messages to clients","Maintain MCP protocol compliance for compatibility with multiple client implementations"],"best_for":["Teams building MCP-based AI agent frameworks","Developers integrating Chrome automation into Claude or other MCP-compatible systems","Organizations standardizing on MCP for tool integration"],"limitations":["MCP protocol overhead adds latency to each tool invocation; not suitable for sub-100ms interaction requirements","Tool discovery is static; dynamic tool registration based on page state is not supported","Error messages are serialized through MCP; detailed error context may be lost in translation","No built-in authentication or authorization; all registered tools are equally accessible to any MCP client","Message size limits in MCP may truncate large responses (e.g., full page HTML, large screenshots)"],"requires":["MCP server implementation (Node.js)","MCP-compatible client (Claude, custom agent framework)","Network connectivity between MCP server and client"],"input_types":["MCP tool call requests with tool name and arguments","MCP resource requests for accessing Chrome state"],"output_types":["MCP tool result with structured response data","MCP error response with error code and message","MCP resource content for state queries"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_2","uri":"capability://data.processing.analysis.dom.query.and.element.inspection","name":"dom-query-and-element-inspection","description":"Enables MCP clients to query the DOM using CSS selectors or XPath expressions, retrieve element properties (text content, attributes, computed styles, bounding boxes), and inspect the DOM tree structure. Implements CDP Runtime.evaluate with DOM query scripts, returning structured element metadata that agents can use for decision-making and data extraction.","intents":["Find specific elements on a page by selector and extract their text or attributes","Retrieve computed styles or layout information (position, size) for elements","Inspect the DOM tree structure to understand page layout programmatically","Validate that expected elements exist before attempting interactions"],"best_for":["Web scraping and data extraction workflows within AI agents","Agents that need to verify page state before taking actions","Systems requiring structured element metadata for decision trees"],"limitations":["XPath queries may be slower than CSS selectors on large DOMs; no query optimization or indexing","Computed styles require full page rendering — cannot be queried on hidden or display:none elements without DOM manipulation","Returns only static snapshot of DOM at query time; no continuous observation of element changes","Large DOM trees (10k+ elements) may cause timeouts or memory pressure in the Chrome instance"],"requires":["Chrome DevTools Protocol connection","Page must be loaded and DOM accessible","Valid CSS selector or XPath expression syntax"],"input_types":["CSS selector string","XPath expression string","Optional filter criteria (text content, attribute values)"],"output_types":["Array of element objects with properties: text, attributes, tagName, boundingBox, computedStyle","Single element object for unique selectors","Empty array if no matches found","Error messages for invalid selectors"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_3","uri":"capability://code.generation.editing.javascript.execution.in.page.context","name":"javascript-execution-in-page-context","description":"Allows MCP clients to execute arbitrary JavaScript code within the page's execution context, with support for returning primitive values, objects, and error handling. Implements CDP Runtime.evaluate with serialization of return values, enabling agents to run custom scripts for data extraction, DOM manipulation, or state inspection without leaving the browser context.","intents":["Execute custom JavaScript to extract data that CSS selectors cannot easily target","Manipulate the DOM (click elements, fill forms, trigger events) programmatically","Access page-specific JavaScript APIs or global state (window.location, localStorage, etc.)","Run complex logic in the browser to reduce round-trip overhead"],"best_for":["Agents performing complex web interactions or data extraction","Workflows requiring access to page JavaScript APIs or global state","Systems where reducing network round-trips is critical for performance"],"limitations":["Execution timeout is fixed (typically 30 seconds in CDP); long-running scripts will fail without explicit timeout handling","Return values must be JSON-serializable; functions, DOM nodes, and circular references cannot be returned directly","No sandboxing — malicious or buggy scripts can crash the page or browser instance","Errors in executed code may not provide full stack traces; debugging requires additional logging within the script","Async code (Promises) requires explicit await or .then() handling; fire-and-forget operations are not supported"],"requires":["Chrome DevTools Protocol connection","Page must be loaded and JavaScript execution enabled","Valid JavaScript syntax"],"input_types":["JavaScript code string","Optional parameters array for parameterized execution","Optional timeout in milliseconds"],"output_types":["JSON-serialized return value (primitives, objects, arrays)","Null for void functions","Error object with message and stack trace for failed execution","Undefined for timeout scenarios"],"categories":["code-generation-editing","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_4","uri":"capability://image.visual.screenshot.capture.and.visual.inspection","name":"screenshot-capture-and-visual-inspection","description":"Enables MCP clients to capture screenshots of the current page state, with optional viewport clipping and format selection (PNG, JPEG). Implements CDP Page.captureScreenshot, returning image data that agents can use for visual verification, debugging, or passing to vision models for analysis.","intents":["Capture visual proof of page state for debugging or logging purposes","Generate screenshots for vision-based analysis or OCR workflows","Verify visual layout or rendering before proceeding with interactions","Create visual records of multi-step automation workflows"],"best_for":["Agents that need visual feedback or verification of page state","Workflows integrating with vision models for page understanding","Debugging and logging scenarios requiring visual evidence"],"limitations":["Screenshots are full-page or viewport-only; no built-in region-of-interest cropping beyond viewport bounds","Image encoding (PNG/JPEG) adds latency; large screenshots may exceed MCP message size limits","Does not capture dynamic content (animations, video playback) — only static rendered state","Viewport size affects screenshot dimensions; no automatic scaling or DPI adjustment","Screenshots are memory-intensive; capturing many screenshots in sequence may cause Chrome memory pressure"],"requires":["Chrome DevTools Protocol connection","Page must be loaded and rendered","Sufficient memory in Chrome instance for image encoding"],"input_types":["Optional format selection (png, jpeg)","Optional quality parameter for JPEG compression","Optional clip region (x, y, width, height)"],"output_types":["Base64-encoded image data","Image metadata (width, height, format)","Error messages for capture failures"],"categories":["image-visual","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_5","uri":"capability://automation.workflow.input.field.interaction.and.form.filling","name":"input-field-interaction-and-form-filling","description":"Provides MCP tools for interacting with form inputs, including typing text, clicking elements, selecting options, and submitting forms. Implements CDP Input.dispatchKeyEvent and Input.dispatchMouseEvent, translating high-level interaction intents into low-level browser events with proper event sequencing (focus, input, change, blur).","intents":["Fill out web forms programmatically by typing into text fields","Click buttons, links, and interactive elements to trigger actions","Select options from dropdowns or radio buttons","Submit forms and handle form validation feedback"],"best_for":["Agents automating user workflows like login, search, or data entry","Systems requiring reliable form interaction without brittle DOM selectors","Workflows where event sequencing matters (focus, input, change events)"],"limitations":["No built-in handling for complex input types (file uploads, date pickers, color selectors) — requires custom JavaScript or additional tool calls","Event sequencing is basic; custom event handlers or validation logic may not trigger as expected","No automatic retry for failed interactions; network delays or DOM changes during interaction can cause failures","Keyboard input is character-by-character; no support for keyboard shortcuts or modifier key combinations without explicit specification","Click coordinates must be precise; elements that move during interaction (lazy-loaded content) may be missed"],"requires":["Chrome DevTools Protocol connection","Page must be loaded and interactive","Target elements must be visible and clickable (or focusable for text input)"],"input_types":["CSS selector or XPath for target element","Text string for typing","Optional delay between keystrokes (milliseconds)","Optional modifier keys (shift, ctrl, alt)"],"output_types":["Success/failure status","Error messages for interaction failures","Updated element state after interaction"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_6","uri":"capability://tool.use.integration.network.request.interception.and.monitoring","name":"network-request-interception-and-monitoring","description":"Enables MCP clients to intercept, inspect, and optionally modify network requests and responses in real-time. Implements CDP Network domain with request/response filtering, allowing agents to block requests, modify headers, or inspect payloads for debugging or security purposes.","intents":["Block or modify network requests to test error handling or alternative data sources","Inspect API requests and responses to understand page behavior","Intercept and modify headers for authentication or testing purposes","Monitor network activity to detect unexpected requests or data leaks"],"best_for":["Agents performing API testing or security analysis","Workflows requiring request/response inspection for debugging","Systems that need to mock or modify network behavior for testing"],"limitations":["Interception patterns are URL-based; no content-based filtering or regex patterns","Modifying request bodies requires re-encoding and may break content-length headers","WebSocket and Server-Sent Events (SSE) are not fully supported; only HTTP/HTTPS requests","Interception adds latency to all network requests; high-volume traffic may cause performance degradation","No built-in caching or replay functionality; each request must be handled individually"],"requires":["Chrome DevTools Protocol connection","Network.enable() must be called on the target","Valid URL pattern or request filter criteria"],"input_types":["URL pattern or regex for request matching","Optional request modifications (headers, body, method)","Optional response modifications (status, headers, body)"],"output_types":["Request metadata (URL, method, headers, body)","Response metadata (status, headers, body)","Network timing information (latency, duration)","Error messages for interception failures"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_7","uri":"capability://data.processing.analysis.cookie.and.storage.management","name":"cookie-and-storage-management","description":"Provides MCP tools for reading, setting, and deleting cookies and browser storage (localStorage, sessionStorage, IndexedDB). Implements CDP Storage domain with JavaScript execution for storage access, enabling agents to manage authentication state, persist data, or simulate user sessions.","intents":["Set authentication cookies to simulate logged-in user sessions","Read and validate stored data (localStorage, sessionStorage) for state verification","Clear cookies and storage to reset browser state between test runs","Inspect stored data to understand application state management"],"best_for":["Agents automating authenticated workflows (login, account management)","Testing scenarios requiring session state management","Workflows that need to inspect or manipulate browser storage"],"limitations":["Cookie operations are domain-specific; cross-domain cookies cannot be set directly","IndexedDB access requires JavaScript execution; no direct CDP support for structured queries","Storage quota limits apply; attempting to store large amounts of data may fail silently","Secure cookies (HttpOnly, Secure flags) cannot be modified through CDP; only accessible cookies can be changed","No transaction support for IndexedDB; concurrent modifications may cause data corruption"],"requires":["Chrome DevTools Protocol connection","Target domain must be accessible from the Chrome instance","For IndexedDB: page must be loaded and JavaScript execution enabled"],"input_types":["Cookie name, value, domain, path, expiration","Storage key and value for localStorage/sessionStorage","Optional storage type (cookies, localStorage, sessionStorage, indexedDB)"],"output_types":["Array of cookie objects with metadata (name, value, domain, path, expiration, secure, httpOnly)","Storage key-value pairs","Success/failure status for set/delete operations","Error messages for storage access failures"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_8","uri":"capability://data.processing.analysis.performance.metrics.and.timing.analysis","name":"performance-metrics-and-timing-analysis","description":"Enables MCP clients to retrieve performance metrics (page load time, resource timing, Core Web Vitals) from the Chrome instance. Implements CDP Performance domain with Navigation Timing API integration, allowing agents to analyze page performance and make decisions based on load characteristics.","intents":["Measure page load time and identify performance bottlenecks","Retrieve Core Web Vitals (LCP, FID, CLS) for performance monitoring","Analyze resource timing to understand which assets are slow","Make decisions based on performance thresholds (e.g., skip interaction if page is slow)"],"best_for":["Performance monitoring and optimization workflows","Agents that need to adapt behavior based on page performance","Testing scenarios requiring performance validation"],"limitations":["Core Web Vitals require user interaction; cannot be measured on initial page load without simulated interaction","Resource timing is only available for resources loaded after Performance.enable() is called; historical data is not available","Metrics are relative to page load; no absolute timing or cross-page comparisons without manual calculation","Third-party scripts may not report timing data if they don't support Resource Timing API","Performance data is cleared on page navigation; must be captured before navigation occurs"],"requires":["Chrome DevTools Protocol connection","Page must be loaded","Performance.enable() must be called on the target"],"input_types":["Optional metric filter (loadTime, resourceTiming, coreWebVitals)","Optional resource URL pattern for filtering"],"output_types":["Navigation timing metrics (domInteractive, domComplete, loadEventEnd)","Resource timing array (URL, duration, size, type)","Core Web Vitals (LCP, FID, CLS) if available","Error messages for unavailable metrics"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm-chrome-devtools-mcp__cap_9","uri":"capability://data.processing.analysis.console.output.capture.and.logging","name":"console-output-capture-and-logging","description":"Enables MCP clients to capture console output (logs, errors, warnings) from the page in real-time. Implements CDP Runtime.consoleAPICalled event handling, streaming console messages to the MCP client with metadata (level, timestamp, source) for debugging and monitoring purposes.","intents":["Capture JavaScript errors and warnings for debugging automation failures","Monitor application logs to detect unexpected behavior or errors","Validate that expected log messages appear during interactions","Correlate console output with page state for troubleshooting"],"best_for":["Debugging complex automation workflows with JavaScript errors","Monitoring applications for unexpected errors or warnings","Testing scenarios requiring log validation"],"limitations":["Console output is only captured after Runtime.enable() is called; earlier logs are lost","Large console outputs may exceed MCP message size limits; no built-in buffering or pagination","Source location (file, line number) may not be available for minified or transpiled code","No filtering or level-based routing; all console messages are captured equally","Console output from iframes or workers may not be captured depending on Chrome version"],"requires":["Chrome DevTools Protocol connection","Page must be loaded and JavaScript execution enabled","Runtime.enable() must be called on the target"],"input_types":["Optional log level filter (log, warning, error, info, debug)","Optional source filter (URL pattern or script name)"],"output_types":["Array of console message objects with: level, message, timestamp, source, line number","Streaming updates as new messages arrive","Error messages for capture failures"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":50,"verified":false,"data_access_risk":"high","permissions":["Chrome or Chromium browser with --remote-debugging-port=9222 (or custom port) enabled","Node.js 16+ runtime for the MCP server","MCP-compatible client (Claude, custom agent framework, etc.)","Network connectivity between MCP server and Chrome debugger endpoint","Chrome DevTools Protocol connection established","Target page must be accessible from the Chrome instance's network context","Valid URL format (http/https)","Chrome DevTools Protocol connection","Page must be loaded before viewport changes take effect","MCP server implementation (Node.js)"],"failure_modes":["Requires a running Chrome/Chromium instance with DevTools Protocol enabled (--remote-debugging-port flag)","Single browser context per MCP server instance — no built-in multiplexing for concurrent browser sessions","Network latency between MCP client and Chrome instance adds overhead; not suitable for sub-100ms interaction requirements","No automatic handling of browser crashes or connection drops — requires external orchestration for resilience","No built-in handling for Single Page Application (SPA) route changes — requires custom JavaScript execution to detect client-side navigation","Timeout values are fixed or require re-invocation with different parameters; no adaptive timeout based on page complexity","Network idle detection may timeout on pages with continuous background requests (analytics, WebSockets, polling)","Does not handle authentication flows or cookie/session management — requires separate setup","Device emulation is not perfect; some device-specific behaviors (hardware acceleration, battery status) are not fully emulated","Viewport changes may cause page reflow and re-render; timing-sensitive tests may be affected","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.8931215348996204,"quality":0.34,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.6,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:23.328Z","last_scraped_at":"2026-05-03T14:04:47.471Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":1460756,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=chrome-devtools-mcp","compare_url":"https://unfragile.ai/compare?artifact=chrome-devtools-mcp"}},"signature":"pcbLBYdhHiFyG59SbZWR5+rYEWZ1/K7kctOXy2SwOyyr3Cl3sl64SWEocUngEfaoA/Iyk9as20yzzDBzkzb7Ag==","signedAt":"2026-06-19T19:29:50.669Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/chrome-devtools-mcp","artifact":"https://unfragile.ai/chrome-devtools-mcp","verify":"https://unfragile.ai/api/v1/verify?slug=chrome-devtools-mcp","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}