Install
openclaw skills install @aihlp/chrome-devtools-mcpUse Chrome DevTools MCP for safe, configurable browser automation, page inspection, debugging, screenshots, network inspection, and performance analysis.
openclaw skills install @aihlp/chrome-devtools-mcpUse this skill when an OpenClaw task requires controlled browser work through the official Chrome DevTools MCP server. Use it for page navigation, DOM inspection, console diagnostics, network diagnostics, screenshots, device emulation, and performance traces when those actions are part of the user's browser task.
This skill is a policy layer for Chrome DevTools MCP. It does not implement a new MCP server and does not replace OpenClaw MCP server configuration. The MCP server must be configured separately under OpenClaw mcp.servers before this skill can use the tools.
Do not use this skill for unauthorized access-control bypass, CAPTCHA solving, credential theft, token harvesting, session hijacking, or unattended actions outside the user's authorization. Debugging an authorized site may require inspecting cookies, storage, request headers, and authentication flows; that is allowed when it is task-relevant and configured by the user.
Required local binaries:
nodenpmOfficial MCP server command:
npx -y chrome-devtools-mcp@latest
The official primary target is current stable Chrome or newer. Chrome for Testing may be used when configured. Chromium is compatibility mode and must be selected through an explicit executable path or browser configuration.
Before using this skill, OpenClaw must have an enabled MCP server definition named chrome-devtools or an equivalent configured server selected by the user.
Default isolated stdio definition:
{
mcp: {
servers: {
"chrome-devtools": {
enabled: true,
transport: "stdio",
command: "npx",
args: [
"-y",
"chrome-devtools-mcp@latest",
"--isolated",
"--no-usage-statistics",
"--no-performance-crux"
],
connectTimeout: 20,
timeout: 120,
supportsParallelToolCalls: false
}
}
}
}
If OpenClaw reports missing transport or invalid, the MCP definition is incomplete. Add transport: "stdio", command: "npx", and the required args array, then save/publish and run openclaw mcp reload.
Read the user configuration before using this skill. The expected top-level object is chromeDevtools.
Default safe configuration:
{
"chromeDevtools": {
"mode": "isolated",
"browser": "chrome",
"executablePath": null,
"userDataDir": null,
"browserUrl": null,
"headless": false,
"isolated": true,
"allowedUrlPatterns": [],
"blockedUrlPatterns": ["file://*"],
"allowExistingSession": false,
"allowReadingCookies": true,
"allowReadingStorage": true,
"allowDownloads": true,
"allowFormSubmit": true,
"allowDestructiveActions": false,
"requireConfirmationForSubmit": true,
"requireConfirmationForPayments": true,
"requireConfirmationForAccountChanges": true,
"disableUsageStatistics": true,
"disablePerformanceCrux": true
}
}
Allowed mode values:
isolatedexecutableexisting-sessionAllowed browser values:
chromechrome-for-testingchromiumcustomUse this as the default. It creates a temporary browser profile and avoids the user's normal browser profile.
Required MCP args:
npx -y chrome-devtools-mcp@latest \
--isolated \
--no-usage-statistics \
--no-performance-crux
Use this only when the user selected a specific executable or browser type.
Required MCP args:
npx -y chrome-devtools-mcp@latest \
--executable-path=<configured_browser_path> \
--user-data-dir=<configured_profile_dir> \
--no-usage-statistics \
--no-performance-crux
Rules:
executablePath must be set.userDataDir must be a dedicated automation profile, not the user's normal profile, unless the user explicitly requests that exact profile.Use this only when the user explicitly enables existing-session work and needs current login state.
Required MCP args:
npx -y chrome-devtools-mcp@latest \
--browser-url=http://127.0.0.1:<port> \
--no-usage-statistics \
--no-performance-crux
Rules:
allowExistingSession must be true.browserUrl must be localhost-only.127.0.0.1, localhost, or [::1].If allowedUrlPatterns is empty, browse only URLs relevant to the user's task and avoid unrelated domains.
If allowedUrlPatterns is non-empty, navigate only to URLs matching the configured allowlist.
Always respect blockedUrlPatterns. The default blocked pattern is:
file://*Internal browser schemes such as chrome://*, chrome-extension://*, edge://*, and about:* may be blocked by stricter user policy, but they are not mandatory defaults because legitimate debugging sometimes requires browser diagnostics pages.
Cookie and storage inspection is normal DevTools work when debugging authentication, sessions, consent banners, feature flags, caching, or client-side application state. If allowReadingCookies is true, cookies may be inspected for the task. If allowReadingStorage is true, localStorage, sessionStorage, IndexedDB, and Cache Storage may be inspected for the task.
Do not copy, persist, transmit, publish, or summarize exact sensitive values unless the user explicitly requests that exact data. Sensitive values include authorization headers, bearer tokens, CSRF tokens, session cookies, password fields, browser credentials, private keys, browser profile files, and private account pages unrelated to the task.
When summarizing findings, redact secret values by default. Show names, domains, expiry, flags, storage keys, request status, response metadata, and diagnostic conclusions unless exact values are necessary and explicitly requested.
If allowReadingCookies is false, do not inspect cookies.
If allowReadingStorage is false, do not inspect localStorage, sessionStorage, IndexedDB, or Cache Storage.
Require explicit user confirmation before:
Form submission is allowed when allowFormSubmit is true and the task requires it, such as testing a login, search, checkout sandbox, or contact form in a controlled environment. Ask for confirmation before submitting forms that create external effects, send messages, make purchases, modify accounts, or affect production data.
If allowDestructiveActions is false, destructive actions must not be performed. Non-destructive debugging actions, including cookie/storage inspection, console review, network review, screenshots, navigation, form filling, and test submissions allowed by policy are not destructive.
chromeDevtools.mode.list_pages or create a new page.Use these commands after saving the OpenClaw MCP definition:
openclaw mcp status --verbose
openclaw mcp doctor --probe
openclaw mcp probe chrome-devtools
openclaw mcp reload
A valid server must not show missing transport. For local Chrome DevTools MCP, the expected transport is stdio.