| name | chrome-devtools |
| description | Control and inspect Chrome browser using Chrome DevTools Protocol - navigate pages, debug network requests, analyze performance, take screenshots, interact with elements, and automate browser tasks. |
| allowed-tools | mcp__chrome-devtools__* |
Chrome DevTools MCP Skill
Complete Chrome browser automation and debugging using the Chrome DevTools Protocol. This skill provides access to all Chrome DevTools capabilities for web development, testing, and debugging tasks.
Capabilities
- Navigate & Automate - Control browser navigation, tabs, and page interactions
- Interact with Pages - Click, type, drag, fill forms, upload files
- Debug & Inspect - View console logs, network requests, execute scripts
- Performance Analysis - Record traces and get performance insights
- Emulation - Test different devices, network conditions, viewports
- Visual Testing - Take screenshots and DOM snapshots
Quick Reference
For detailed instructions on each operation, see:
- NAVIGATION.md - Page navigation, tabs, waiting
- INTERACTION.md - Clicking, typing, forms, uploads
- DEBUGGING.md - Console logs, network requests, script execution
- PERFORMANCE.md - Performance tracing and analysis
- EMULATION.md - Device and network emulation
- VISUAL.md - Screenshots and DOM snapshots
Common Workflows
Web Testing Workflow
- Navigate to page with
navigate_page - Interact with elements using
click,fill,press_key - Verify results with
take_screenshotorlist_console_messages - Check network activity with
list_network_requests
Performance Analysis Workflow
- Start trace with
performance_start_trace - Navigate or interact with page
- Stop trace with
performance_stop_trace - Get insights with
performance_analyze_insight
Debugging Workflow
- Navigate to problematic page
- Check console with
list_console_messages - Inspect network with
list_network_requests - Execute diagnostic scripts with
evaluate_script - Take screenshots for visual confirmation
Form Testing Workflow
- Navigate to form page
- Fill individual fields with
fillor usefill_formfor bulk entry - Upload files if needed with
upload_file - Submit and verify with screenshots/console
Tool Categories Overview
Input Automation (8 tools)
click- Click on elementsdrag- Drag and drop operationsfill- Enter text in fieldsfill_form- Fill multiple form fieldshandle_dialog- Manage alerts/dialogshover- Hover over elementspress_key- Keyboard inputupload_file- File upload handling
Navigation (6 tools)
navigate_page- Go to URLsnew_page- Create new tabsclose_page- Close tabslist_pages- View open tabsselect_page- Switch tabswait_for- Wait for conditions
Emulation (2 tools)
emulate- Device/condition simulationresize_page- Viewport sizing
Performance (3 tools)
performance_start_trace- Begin recordingperformance_stop_trace- End recordingperformance_analyze_insight- Get recommendations
Network (2 tools)
list_network_requests- View all requestsget_network_request- Get request details
Debugging (5 tools)
evaluate_script- Run JavaScripttake_screenshot- Capture visualstake_snapshot- Capture DOMlist_console_messages- View consoleget_console_message- Get specific message
Critical Instructions
REQUIRED: Before using ANY Chrome DevTools tools, you MUST load the relevant reference file(s) using the Read tool. These references contain essential operational instructions that are NOT included in this overview.
When the user asks to work with Chrome DevTools:
- Identify the operation they want to perform (navigate, debug, test, analyze)
- MANDATORY: Load the relevant reference file(s) using the Read tool BEFORE executing any tools:
- Navigation tasks → Read
references/NAVIGATION.mdFIRST - Interaction tasks → Read
references/INTERACTION.mdFIRST - Debugging tasks → Read
references/DEBUGGING.mdFIRST - Performance tasks → Read
references/PERFORMANCE.mdFIRST - Emulation tasks → Read
references/EMULATION.mdFIRST - Visual testing tasks → Read
references/VISUAL.mdFIRST
- Navigation tasks → Read
- Execute the appropriate MCP tool commands following the patterns from the loaded reference
- Report results clearly with screenshots or data as appropriate
- Chain operations when needed (e.g., navigate → interact → verify)
DO NOT attempt to use Chrome DevTools tools without first loading and reading the relevant reference documentation.
Best Practices
- Always wait appropriately - Use
wait_forto ensure page readiness - Handle errors gracefully - Check console messages and network errors
- Take screenshots - Visual confirmation is valuable for debugging
- Chain operations logically - Navigate before interacting, start trace before actions
- Clean up - Close pages when done to free resources
- Use selectors carefully - Ensure element selectors are specific and reliable
Examples
Take a screenshot of a website
User: "Take a screenshot of example.com"
Me: Uses navigate_page → wait_for → take_screenshot
Test form submission
User: "Fill out the login form on staging.example.com"
Me: Uses navigate_page → fill_form → click → list_console_messages
Analyze page performance
User: "Check the performance of our homepage"
Me: Uses performance_start_trace → navigate_page → performance_stop_trace → performance_analyze_insight
Debug network issues
User: "Why is the API call failing on /dashboard?"
Me: Uses navigate_page → list_network_requests → get_network_request (for failed request)
Test mobile viewport
User: "How does the site look on iPhone 13?"
Me: Uses emulate (iPhone 13) → navigate_page → take_screenshot
Configuration
The Chrome DevTools MCP server should be configured in Claude Code's MCP settings:
{
"mcpServers": {
"chrome-devtools": {
"command": "npx",
"args": ["chrome-devtools-mcp@latest"]
}
}
}
Optional configuration flags:
--headless false- Show browser window--categoryEmulation- Enable emulation tools--categoryPerformance- Enable performance tools--categoryNetwork- Enable network tools