chromedevtools avatar

Chrome Devtools

This gives Claude direct access to Chrome DevTools Protocol for browser automation and debugging. It handles the full workflow: navigate to pages, wait for elements, take snapshots with unique element IDs, then interact with those elements. The snapshot approach is clever because it gives you the accessibility tree with UIDs you can reference for clicks and fills. Supports the usual suspects like screenshots, script evaluation, network inspection, and performance tracing. There's also extension testing support if you need to verify popups or content scripts. If you're building scrapers, running visual tests, or debugging web apps programmatically, this beats writing your own CDP wrapper. Just note it needs full MCP mode, not slim.

install copies · 90 days. Times the install command was copied on this site in the last 90 days, bots filtered.
11
skills.sh installs
9.1K
GitHub stars
55K
last updated
Aug 21, 2026

Install

$ npx -y skills add chromedevtools/chrome-devtools-mcp --skill chrome-devtools --agent claude-code

Installs into .claude/skills of the current project.

Files

Core Concepts

Browser lifecycle: Browser starts automatically on first tool call using a persistent Chrome profile. Configure via CLI args in the MCP server configuration: npx chrome-devtools-mcp@latest --help. Addional tooling can be enabled by providing the following flags:

  • For extension tooling, use the --categoryExtensions flag.
  • For memory tooling, use the --memoryDebugging flag.

Page targeting: Page-scoped tools require a pageId parameter to target a specific page. Use list_pages to see available pages and their IDs (e.g. pageId: 1), or use the ID returned when creating a page with new_page. Note: For evaluate_script, pageId is required when targeting pages. However, when --categoryExtensions is enabled, pageId is optional so you can pass serviceWorkerId instead to evaluate inside an extension background service worker. Element interaction: Use take_snapshot to get page structure with element uids. Each element has a unique uid for interaction. If an element isn't found, take a fresh snapshot - the element may have been removed or the page changed.

Workflow Patterns

Before interacting with a page

Sponsors

Details

Repository
github.com/chromedevtools/chrome-devtools-mcp
Categories
AI & Agent Building, Debugging, Automation & Workflows
First seen
May 16, 2026

More from chromedevtools/chrome-devtools-mcp

All 6
1github avatarquasi-codergithub/awesome-copilotExpert 10x engineer skill for interpreting and implementing code from shorthand, quasi-code, and natural language descriptions. Use when collaborators provide i9.1Kskills.sh installs
2github avatartechnology-stack-blueprint-generatorgithub/awesome-copilotComprehensive technology stack blueprint generator that analyzes codebases to create detailed architectural documentation. Automatically detects technology stac9Kskills.sh installs
3github avatarcreate-technical-spikegithub/awesome-copilotCreate time-boxed technical spike documents for researching and resolving critical development decisions before implementation.9Kskills.sh installs
4github avatarsnowflake-semanticviewgithub/awesome-copilotCreate, alter, and validate Snowflake semantic views using Snowflake CLI (snow). Use when asked to build or troubleshoot semantic views/semantic layer definitio9Kskills.sh installs
5github avatarfluentui-blazorgithub/awesome-copilotGuide for using the Microsoft Fluent UI Blazor component library (Microsoft.FluentUI.AspNetCore.Components NuGet package) in Blazor applications. Use this when 9Kskills.sh installs
6github avatarvscode-ext-commandsgithub/awesome-copilotGuidelines for contributing commands in VS Code extensions. Indicates naming convention, visibility, localization and other relevant attributes, following VS Co9Kskills.sh installs