From browser-devtools-mcp
Automated browser testing and debugging using Browser DevTools MCP. Use when testing web pages, debugging frontend issues, verifying UI behavior, or automating browser interactions.
How this skill is triggered — by the user, by Claude, or both
Slash command
/browser-devtools-mcp:browser-testingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Automated browser testing and debugging skill using Browser DevTools MCP.
Automated browser testing and debugging skill using Browser DevTools MCP.
Page structure: To understand what is on a page, use ARIA snapshot first (a11y_take-aria-snapshot or a11y_take-ax-tree-snapshot), not screenshot. Use screenshot only when you need to verify how something looks visually (e.g. design check, visual bug).
This skill activates when:
a11y_take-aria-snapshot) — Returns refs (e1, e2, …) and a refs map. Options: interactiveOnly, cursorInteractive (for div/span buttons), selector (scope).e1, @e1). Refs valid until next snapshot or navigation.content_take-screenshot with annotate: true overlays labels [1],[2],… mapping to e1,e2,…navigation_go-to) — returns ARIA snapshot and refs by default; use response refs for interactions without calling a11y_take-aria-snapshot againnavigation_go-back-or-forward and navigation_reload (includeSnapshot: true)e1, #submit)interaction_press-key), scroll (interaction_scroll), drag (interaction_drag)content_take-screenshot) — optional annotate, annotateContent, cursorInteractiveo11y_get-console-messages)o11y_get-http-requests)o11y_get-web-vitals)o11y_get-trace-id, o11y_set-trace-id)a11y_take-aria-snapshot) — returns refs; options: interactiveOnly, cursorInteractive, selectora11y_take-ax-tree-snapshot) — bounding box, occlusion, stylesstub_intercept-http-request)stub_mock-http-response)stub_list)stub_clear)react_get-component-for-element)react_get-element-for-component)page.evaluate() (e.g. return await page.evaluate(() => document.title)). See commands/browser/execute.md for callTool and page.page; use built-ins and callTool). On Node platform, execute runs in the session VM (callTool only).execute — Run custom JavaScript that can call multiple tools in one request via await callTool(name, input, returnOutput?). Use to batch click/fill/select/navigation and reduce round-trips. Code runs in async IIFE (no wrapper); browser platform exposes page (Playwright). Prefer when you have a fixed sequence of steps; use individual tools when you need to inspect results between steps. Also supported: browser-devtools-mcp CLI subcommand run execute, and daemon HTTP API (POST /call with toolName: "execute").a11y_take-aria-snapshot, then use refs (e1, e2) in interactions or take annotated screenshots.annotate: true when you need visual labels that match refs for vision-driven actionsnpx claudepluginhub serkan-ozal/browser-devtools-claude --plugin browser-devtools-mcpControls a live Chrome browser via puppeteer-core for automation, testing, and performance auditing. Use for clicking, typing, screenshots, DOM/AX tree, network interception, HAR export, Lighthouse audits, and device emulation.
Playwright browser automation: navigates URLs, captures screenshots and accessibility snapshots, interacts with UI elements (click, type, fill form), and reports findings with visual evidence.
Automates browser testing for web apps using Playwright MCP: navigate pages, click/fill elements, take screenshots, verify UI/console logs, debug frontend issues, validate responsive design.