
Chrome Devtools Cli
- 2.2k installs
- 47.7k repo stars
- Updated July 27, 2026
- chromedevtools/chrome-devtools-mcp
chrome-devtools-cli is an agent skill that Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome Dev.
About
The chrome devtools mcp CLI lets you interact with the browser from your terminal _Note If this is your very first time using the CLI see references installation md references installation md for setup Installation is a one time prerequisite and is not part of the regular AI workflow _ 1 Execute Run tools directly e g chrome devtools list_pages The background server starts implicitly do not run start status stop before each use 2 Inspect Use take_snapshot to get an element uid 3 Act Use click fill etc State persists across commands uid 1_0 RootWebArea Example Domain url https example com uid 1_1 heading Example Domain level 1 sh chrome devtools tool arguments flags The chrome devtools cli agent skill provides documented workflows prerequisites triggers and safety guidance from its SKILL md source Agents load it when user requests match the description and follow step by step instructions without inventing capabilities It integrates with standard agent tooling for the tasks inputs outputs and failure modes described in the repository
- description: Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise u
- The `chrome-devtools-mcp` CLI lets you interact with the browser from your terminal.
- _Note: If this is your very first time using the CLI, see [references/installation.md](references/installation.md) for s
- Follow chrome-devtools-cli SKILL.md steps and documented constraints.
- Follow chrome-devtools-cli SKILL.md steps and documented constraints.
Chrome Devtools Cli by the numbers
- 2,173 all-time installs (skills.sh)
- +139 installs in the week ending Jul 28, 2026 (Skillselion tracking)
- Ranked #472 of 16,659 AI & Agent Building skills by installs in the Skillselion catalog
- Security screen: MEDIUM risk (skills.sh audit)
- Data as of Jul 28, 2026 (Skillselion catalog sync)
chrome-devtools-cli capabilities & compatibility
- Capabilities
- description: use this skill to write shell scrip · the `chrome devtools mcp` cli lets you interact · _note: if this is your very first time using the · follow chrome devtools cli skill.md steps and do
- Use cases
- orchestration
What chrome-devtools-cli says it does
description: Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome DevTools via CLI.
The `chrome-devtools-mcp` CLI lets you interact with the browser from your terminal.
_Note: If this is your very first time using the CLI, see [references/installation.md](references/installation.md) for setup. Installation is a one-time prerequisite and is **not** part of the regular
npx skills add https://github.com/chromedevtools/chrome-devtools-mcp --skill chrome-devtools-cliAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 2.2k |
|---|---|
| repo stars | ★ 47.7k |
| Security audit | 2 / 3 scanners passed |
| Last updated | July 27, 2026 |
| Repository | chromedevtools/chrome-devtools-mcp ↗ |
When should an agent use chrome-devtools-cli and what problem does it solve?
Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome DevTools via CLI.
Who is it for?
Developers invoking chrome-devtools-cli as documented in the skill source.
Skip if: Skip when requirements fall outside chrome-devtools-cli documented scope.
When should I use this skill?
Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome DevTools via CLI.
What you get
Outputs aligned with the chrome-devtools-cli SKILL.md workflow and stated deliverables.
- Installed chrome-devtools global CLI
- Verified status output from chrome-devtools status
Files
The chrome-devtools-mcp CLI lets you interact with the browser from your terminal.
Setup
_Note: If this is your very first time using the CLI, see references/installation.md for setup. Installation is a one-time prerequisite and is not part of the regular AI workflow._
AI Workflow
1. Execute: Run tools directly (e.g., chrome-devtools list_pages). The background server starts implicitly; do not run start/status/stop before each use. 2. Inspect: Use take_snapshot to get an element <uid>. 3. Act: Use click, fill, etc. State persists across commands.
Snapshot example:
uid=1_0 RootWebArea "Example Domain" url="https://example.com/"
uid=1_1 heading "Example Domain" level="1"Command Usage
chrome-devtools <tool> [arguments] [flags]Use --help on any command. Output defaults to Markdown, use --output-format=json for JSON.
Input Automation (<uid> from snapshot)
chrome-devtools take_snapshot --help # Help message for commands, works for any command.
chrome-devtools take_snapshot # Take a text snapshot of the page to get UIDs for elements
chrome-devtools click "id" # Clicks on the provided element
chrome-devtools click "id" --dblClick true --includeSnapshot true # Double clicks and returns a snapshot
chrome-devtools drag "src" "dst" # Drag an element onto another element
chrome-devtools drag "src" "dst" --includeSnapshot true # Drag an element and return a snapshot
chrome-devtools fill "id" "text" # Type text into an input or select an option
chrome-devtools fill "id" "text" --includeSnapshot true # Fill an element and return a snapshot
chrome-devtools handle_dialog accept # Handle a browser dialog
chrome-devtools handle_dialog dismiss --promptText "hi" # Dismiss a dialog with prompt text
chrome-devtools hover "id" # Hover over the provided element
chrome-devtools hover "id" --includeSnapshot true # Hover over an element and return a snapshot
chrome-devtools press_key "Enter" # Press a key or key combination
chrome-devtools press_key "Control+A" --includeSnapshot true # Press a key and return a snapshot
chrome-devtools type_text "hello" # Type text using keyboard into a focused input
chrome-devtools type_text "hello" --submitKey "Enter" # Type text and press a submit key
chrome-devtools upload_file "id" "file.txt" # Upload a file through a provided element
chrome-devtools upload_file "id" "file.txt" --includeSnapshot true # Upload a file and return a snapshotNavigation
chrome-devtools close_page 1 # Closes the page by its index
chrome-devtools list_pages # Get a list of pages open in the browser
chrome-devtools navigate_page --url "https://example.com" # Navigates the currently selected page to a URL
chrome-devtools navigate_page --type "reload" --ignoreCache true # Reload page ignoring cache
chrome-devtools navigate_page --url "https://example.com" --timeout 5000 # Navigate with a timeout
chrome-devtools navigate_page --handleBeforeUnload "accept" # Handle before unload dialog
chrome-devtools navigate_page --type "back" --initScript "foo()" # Navigate back and run an init script
chrome-devtools new_page "https://example.com" # Creates a new page
chrome-devtools new_page "https://example.com" --background true --timeout 5000 # Create new page in background
chrome-devtools new_page "https://example.com" --isolatedContext "ctx" # Create new page with isolated context
chrome-devtools select_page 1 # Select a page as a context for future tool calls
chrome-devtools select_page 1 --bringToFront true # Select a page and bring it to frontEmulation
chrome-devtools emulate --networkConditions "Offline" # Emulate network conditions
chrome-devtools emulate --cpuThrottlingRate 4 --geolocation "0x0" # Emulate CPU throttling and geolocation
chrome-devtools emulate --colorScheme "dark" --viewport "1920x1080" # Emulate color scheme and viewport
chrome-devtools emulate --userAgent "Mozilla/5.0..." # Emulate user agent
chrome-devtools resize_page 1920 1080 # Resizes the selected page's windowPerformance
chrome-devtools performance_analyze_insight "1" "LCPBreakdown" # Get more details on a specific Performance Insight
chrome-devtools performance_start_trace true false # Starts a performance trace recording
chrome-devtools performance_start_trace true true --filePath t.gz # Start trace and save to a file
chrome-devtools performance_stop_trace # Stops the active performance trace
chrome-devtools performance_stop_trace --filePath "t.json" # Stop trace and save to a file
chrome-devtools take_memory_snapshot "./snap.heapsnapshot" # Capture a memory heapsnapshotNetwork
chrome-devtools get_network_request # Get the currently selected network request
chrome-devtools get_network_request --reqid 1 --requestFilePath req.md # Get request by id and save to file
chrome-devtools get_network_request --responseFilePath res.md # Save response body to file
chrome-devtools list_network_requests # List all network requests
chrome-devtools list_network_requests --pageSize 50 --pageIdx 0 # List network requests with pagination
chrome-devtools list_network_requests --resourceTypes Fetch # Filter requests by resource type
chrome-devtools list_network_requests --includePreservedRequests true # Include preserved requestsDebugging & Inspection
chrome-devtools evaluate_script "() => document.title" # Evaluate a JavaScript function on the page
chrome-devtools evaluate_script "(a) => a.innerText" --args 1_4 # Evaluate JS with UID arguments
chrome-devtools get_console_message 1 # Gets a console message by its ID
chrome-devtools lighthouse_audit --mode "navigation" # Run Lighthouse audit for navigation
chrome-devtools lighthouse_audit --mode "snapshot" --device "mobile" # Run Lighthouse audit for a snapshot on mobile
chrome-devtools lighthouse_audit --outputDirPath ./out # Run Lighthouse audit and save reports
chrome-devtools list_console_messages # List all console messages
chrome-devtools list_console_messages --pageSize 20 --pageIdx 1 # List console messages with pagination
chrome-devtools list_console_messages --types error --types info # Filter console messages by type
chrome-devtools list_console_messages --includePreservedMessages true # Include preserved messages
chrome-devtools take_screenshot # Take a screenshot of the page viewport
chrome-devtools take_screenshot --fullPage true --format "jpeg" --quality 80 # Take a full page screenshot as JPEG with quality
chrome-devtools take_screenshot --uid "id" --filePath "s.png" # Take a screenshot of an element
chrome-devtools take_snapshot # Take a text snapshot of the page from the a11y tree
chrome-devtools take_snapshot --verbose true --filePath "s.txt" # Take a verbose snapshot and save to fileExtensions
chrome-devtools list_extensions # Lists all the Chrome extensions installed in the browser
chrome-devtools install_extension "/path/to/extension" # Installs a Chrome extension from the given path
chrome-devtools uninstall_extension "extension_id" # Uninstalls a Chrome extension by its ID
chrome-devtools reload_extension "extension_id" # Reloads an unpacked Chrome extension by its ID
chrome-devtools trigger_extension_action "extension_id" # Triggers the default action of an extension by its IDExperimental Features
Experimental tools are disabled by default. Enable them with the corresponding flag during start.
chrome-devtools click_at 100 200 # Clicks at the provided coordinates (requires --experimentalVision=true)
chrome-devtools screencast_start # Starts a screencast recording (requires --experimentalScreencast=true and ffmpeg)
chrome-devtools screencast_stop # Stops the active screencast
chrome-devtools list_webmcp_tools # List all WebMCP tools (requires --categoryExperimentalWebmcp=true)Service Management
chrome-devtools start # Start or restart chrome-devtools-mcp
chrome-devtools status # Checks if chrome-devtools-mcp is running
chrome-devtools stop # Stop chrome-devtools-mcp if anyInstallation
Install the package globally to make the chrome-devtools command available. You only need to do this the first time you use it.
npm i chrome-devtools-mcp@latest -g
chrome-devtools status # check if install worked.Troubleshooting
- Command not found: If
chrome-devtoolsis not recognized, ensure your global npmbindirectory is in your system'sPATH. Restart your terminal or source your shell configuration file (e.g.,.bashrc,.zshrc). - Permission errors: If you encounter
EACCESor permission errors during installation, avoid usingsudo. Instead, use a node version manager likenvm, or configure npm to use a different global directory. - Old version running: Run
chrome-devtools stop && npm uninstall -g chrome-devtools-mcpbefore reinstalling, or ensure the latest version is being picked up by your path.
Related skills
How it compares
Pick chrome-devtools-cli when agents need shell-native Chrome commands alongside or instead of MCP-only browser tool wiring.
FAQ
What is chrome-devtools-cli?
Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome DevTools via CLI.
When should I use chrome-devtools-cli?
Use this skill to write shell scripts or run shell commands to automate tasks in the browser or otherwise use Chrome DevTools via CLI.
Is chrome-devtools-cli safe to install?
Review the Security Audits panel on this page before production use.