Claude Code Plugins

Community-maintained marketplace

Feedback

Control Chrome browser directly via DevTools Protocol using the use_browser MCP tool. Use when you need browser automation - authenticated sessions, multi-tab management, form filling, content extraction, web scraping. Provides navigate, click, type, extract, screenshot, eval, and tab management actions. Use this instead of WebFetch for interactive sites requiring authentication or JavaScript execution.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name browsing
description Control Chrome browser directly via DevTools Protocol using the use_browser MCP tool. Use when you need browser automation - authenticated sessions, multi-tab management, form filling, content extraction, web scraping. Provides navigate, click, type, extract, screenshot, eval, and tab management actions. Use this instead of WebFetch for interactive sites requiring authentication or JavaScript execution.
when_to_use When sites require authentication or login. When JavaScript execution is needed. When automating form filling. When extracting content from interactive sites. When WebFetch fails or is insufficient. When multi-step browser workflows are required.
allowed-tools mcp__chrome__use_browser

Browser Automation with Chrome

Overview

Control Chrome via DevTools Protocol using the use_browser MCP tool. Single unified interface with auto-starting Chrome.

Important: When using this skill, announce: "I'm using the browsing skill to control Chrome."

When to Use This Skill

Use this skill when:

  • Controlling authenticated browser sessions
  • Managing multiple tabs in running browser
  • Filling forms and clicking buttons
  • Extracting content from JavaScript-heavy sites
  • Web scraping requiring interaction
  • Sites that don't work with simple HTTP requests

Use WebFetch instead when:

  • Simple HTTP GET requests are sufficient
  • No authentication or interaction needed
  • Static content extraction

Use Playwright MCP instead when:

  • Need fresh isolated browser instances
  • Generating screenshots or PDFs at scale
  • Prefer higher-level abstractions

The use_browser MCP Tool

Single MCP tool with action-based interface. Chrome auto-starts on first use.

Parameters

  • action (required): Operation to perform
  • tab_index (optional): Tab to operate on (default: 0)
  • selector (optional): CSS selector for element operations
  • payload (optional): Action-specific data
  • timeout (optional): Timeout in ms for await operations (default: 5000)

Quick Start Pattern

Navigate and extract content:

{action: "navigate", payload: "https://example.com"}
{action: "await_element", selector: "h1"}
{action: "extract", payload: "text", selector: "h1"}

Fill and submit form:

{action: "navigate", payload: "https://example.com/login"}
{action: "await_element", selector: "input[name=email]"}
{action: "type", selector: "input[name=email]", payload: "user@example.com"}
{action: "type", selector: "input[name=password]", payload: "password123\n"}
{action: "await_text", payload: "Welcome"}

Note: \n at end of password submits the form.

Actions Reference

Navigation Actions

navigate

Navigate to URL.

  • payload: URL string
  • Example: {action: "navigate", payload: "https://example.com"}

await_element

Wait for element to appear in DOM.

  • selector: CSS selector
  • timeout: Max wait time in ms (default: 5000)
  • Example: {action: "await_element", selector: ".loaded", timeout: 10000}

await_text

Wait for text to appear anywhere on page.

  • payload: Text to wait for
  • timeout: Max wait time in ms
  • Example: {action: "await_text", payload: "Welcome", timeout: 10000}

Interaction Actions

click

Click element.

  • selector: CSS selector
  • Example: {action: "click", selector: "button.submit"}

type

Type text into input field. Append \n to submit form.

  • selector: CSS selector
  • payload: Text to type
  • Example: {action: "type", selector: "#email", payload: "user@example.com"}
  • Example (submit): {action: "type", selector: "#password", payload: "pass123\n"}

select

Select dropdown option.

  • selector: CSS selector for