Chrome DevTools MCP Installation Summary
Installation Status: ✅ COMPLETED
Date: 2026-03-25
Overview
Successfully installed and tested Chrome DevTools MCP Server v0.20.3 for end-to-end testing capabilities.
Installation Process
1. Proxy Setup (Clash)
- Status: ✅ Used for GitHub repository download
- Command: Started Clash proxy at
http://127.0.0.1:7890 - Config:
~/.config/clash/config.yml - Post-download: Proxy disabled as requested
2. Repository Download
- Method: Downloaded tarball via fetch tool (git clone failed due to SSL issues)
- URL: https://github.com/ChromeDevTools/chrome-devtools-mcp/archive/refs/heads/main.tar.gz
- Size: 2.05 MB
- Location:
/tmp/chrome-devtools-mcp/
3. Node.js Installation
Challenge: System Node.js v18.19.1 was too old (requirement: v20.19.0+)
Solution: Downloaded Node.js v22.12.0 binary
- Download: https://nodejs.org/dist/v22.12.0/node-v22.12.0-linux-x64.tar.gz
- Size: 53.96 MB
- Location: /tmp/node-v22.12.0-linux-x64/
- Verified: node --version returns v22.12.0
4. Dependencies Installation
Results: - Added 635 packages - Time: 39 seconds - Warnings: 2 vulnerabilities (1 moderate, 1 high) - Status: ✅ Success
5. Build Process
Results:
- Compiled TypeScript to JavaScript
- Ran post-build scripts
- Created build directory at /tmp/chrome-devtools-mcp/build/
- Status: ✅ Success
6. Chrome Browser
Challenge: Chrome not installed on system
Solution: Used Puppeteer's bundled Chromium
- Location: /home/ai/.cache/puppeteer/chrome/linux-146.0.7680.76/chrome-linux64/chrome
- Version: 146.0.7680.76
- Status: ✅ Available
Installation Artifacts
Files Created
- Wrapper Script:
/tmp/run-chrome-devtools-mcp.sh - Convenient launcher for MCP server
- Sets up PATH and NODE_PATH
-
Executable permissions set
-
Installation Directory:
/tmp/chrome-devtools-mcp/ - Source code and build artifacts
build/src/- Compiled JavaScript-
node_modules/- 635 packages -
Node.js Runtime:
/tmp/node-v22.12.0-linux-x64/ - Complete Node.js v22.12.0 runtime
-
Binary and libraries
-
Test Logs:
/tmp/mcp-test.log - Server startup logs
- Telemetry events
Verification Tests
Test 1: Version Check ✅
Output: 0.20.3
Test 2: Help Command ✅
Result: Successfully displayed all CLI options
Test 3: Server Startup ✅
/tmp/run-chrome-devtools-mcp.sh \
--executablePath "/home/ai/.cache/puppeteer/chrome/linux-146.0.7680.76/chrome-linux64/chrome" \
--headless \
--isolated \
--logFile /tmp/mcp-test.log
Results:
- Server started: Chrome DevTools MCP Server v0.20.3
- Connected to Chrome: ✅
- Watchdog started: ✅
- Telemetry initialized: ✅
Usage Examples
Basic Usage
# Run MCP server with headless Chrome
/tmp/run-chrome-devtools-mcp.sh --headless --isolated
# Connect to existing Chrome instance
/tmp/run-chrome-devtools-mcp.sh --browserUrl http://127.0.0.1:9222
# Slim mode (3 basic tools only)
/tmp/run-chrome-devtools-mcp.sh --headless --slim
MCP Client Configuration
{
"mcpServers": {
"chrome-devtools": {
"command": "/tmp/run-chrome-devtools-mcp.sh",
"args": ["--headless", "--isolated"]
}
}
}
Available Tools
The MCP server exposes the following tool categories: - Navigation: Go to URLs, navigate history - Network: Monitor network requests - Console: Check console messages - Screenshots: Capture page screenshots - Performance: Record performance traces - Emulation: Device emulation, geolocation - Debugging: Set breakpoints, inspect elements
Configuration Options
| Option | Default | Description |
|---|---|---|
--headless |
false | Run Chrome without UI |
--isolated |
false | Create temporary user-data-dir |
--slim |
false | Expose only 3 basic tools |
--channel |
stable | Chrome channel (stable, beta, dev, canary) |
--viewport |
- | Viewport size (e.g., 1280x720) |
--logFile |
- | Path to debug log file |
--no-usage-statistics |
false | Opt-out of telemetry |
Technical Details
System Requirements Met
- Node.js: ✅ v22.12.0 (required: v20.19.0+)
- Chrome: ✅ Chromium 146.0.7680.76 via Puppeteer
- npm: ✅ v10.9.0
- Disk Space: ~600 MB used
Package Information
- Name: chrome-devtools-mcp
- Version: 0.20.3
- Repository: ChromeDevTools/chrome-devtools-mcp
- License: Apache-2.0
Dependencies (Key Packages)
- puppeteer: 24.39.1
- @modelcontextprotocol/sdk: 1.27.1
- chrome-devtools-frontend: 1.0.1599001
- lighthouse: 13.0.3
- typescript: ^5.9.2
Troubleshooting
Issue: Node.js version too old
Solution: Use the downloaded Node.js v22:
Issue: Chrome not found
Solution: Use Puppeteer's bundled Chromium:
Issue: Server exits immediately
Cause: MCP servers require stdio communication
Solution: Use MCP client to start the server (don't use & to background)
Next Steps for Integration
- Test with MCP Client
- Install Claude Desktop, Cursor, or other MCP-compatible client
- Configure client to use the wrapper script
-
Test basic navigation and screenshot tools
-
End-to-End Testing
- Navigate to test websites
- Capture screenshots
- Monitor network requests
-
Test console message capture
-
Performance Testing
- Record performance traces
- Analyze Lighthouse scores
-
Check CrUX field data (optional)
-
Production Deployment
- Move installation to permanent location (e.g.,
/opt/chrome-devtools-mcp) - Create systemd service for persistent server
- Configure logging and monitoring
Success Metrics
| Metric | Target | Achieved |
|---|---|---|
| Installation | Complete | ✅ |
| Build | No errors | ✅ |
| Version Check | Works | ✅ |
| Help Command | Displays | ✅ |
| Server Start | Starts | ✅ |
| Chrome Connect | Success | ✅ |
| Log Output | Captured | ✅ |
Cleanup (Optional)
To reclaim disk space if needed:
# Remove Node.js v22 download
rm -rf /tmp/node-v22.12.0-linux-x64*
# Remove build cache
rm -rf /tmp/chrome-devtools-mcp/build
# Keep source for reference
# /tmp/chrome-devtools-mcp/ (can be archived)
Conclusion
✅ Chrome DevTools MCP Server v0.20.3 successfully installed and verified
The system is now ready for end-to-end testing with browser automation, debugging, and performance analysis capabilities using the Model Context Protocol.
Installation Location: /tmp/chrome-devtools-mcp/
Wrapper Script: /tmp/run-chrome-devtools-mcp.sh
Node.js Runtime: /tmp/node-v22.12.0-linux-x64/
Chrome Browser: /home/ai/.cache/puppeteer/chrome/linux-146.0.7680.76/chrome-linux64/chrome