Skip to content
cccskills
FreePublished on GitHub

mcp-playwright

This skill provides guidance for using Playwright MCP for browser automation. Use when navigating web pages, interacting with web elements, taking screenshots, filling forms, running browser tests, or automating any browser-based tasks.

The English summary is being prepared. Showing the original description.

Works withPlaywright

Run score Not tested

See how to install

Files included (2)

  • SKILL.md3.9 KB
  • references/tools.md5.8 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Playwright MCP

Overview

This skill enables browser automation using Playwright through MCP. Playwright provides powerful browser control capabilities including navigation, element interaction, screenshots, and form handling.

When to Use This Skill

  • Navigating and interacting with web pages
  • Taking screenshots of web content
  • Filling out forms and submitting data
  • Testing web applications
  • Extracting information from web pages
  • Automating repetitive browser tasks

Quick Start Workflow

  1. Navigate to a page: browser_navigate
  2. Take a snapshot to get element refs: browser_snapshot
  3. Interact with elements using refs from snapshot: browser_click, browser_type

Core Tools

Navigation

browser_navigate - Navigate to a URL

mcp__playwright__browser_navigate({ url: "https://example.com" })

browser_navigate_back - Go back to previous page

mcp__playwright__browser_navigate_back({})

Page Analysis

browser_snapshot - Get accessibility tree (preferred for interaction)

mcp__playwright__browser_snapshot({})

browser_take_screenshot - Capture visual screenshot

mcp__playwright__browser_take_screenshot({
  type: "png",
  fullPage: true,
  filename: "screenshot.png"
})

Element Interaction

browser_click - Click an element (requires ref from snapshot)

mcp__playwright__browser_click({
  element: "Submit button",
  ref: "button[ref='submit']"
})

browser_type - Type text into an element

mcp__playwright__browser_type({
  element: "Search input",
  ref: "input[ref='search']",
  text: "search query",
  submit: true
})

browser_hover - Hover over an element

mcp__playwright__browser_hover({
  element: "Menu item",
  ref: "li[ref='menu']"
})

Form Handling

browser_fill_form - Fill multiple form fields

mcp__playwright__browser_fill_form({
  fields: [
    { name: "Username", type: "textbox", ref: "input[name='user']", value: "john" },
    { name: "Remember", type: "checkbox", ref: "input[name='remember']", value: "true" }
  ]
})

browser_select_option - Select dropdown option

mcp__playwright__browser_select_option({
  element: "Country",
  ref: "select[ref='country']",
  values: ["JP"]
})

Waiting and Dialogs

browser_wait_for - Wait for conditions

mcp__playwright__browser_wait_for({ text: "Loading complete" })
mcp__playwright__browser_wait_for({ textGone: "Please wait..." })
mcp__playwright__browser_wait_for({ time: 2 })

browser_handle_dialog - Handle browser dialogs

mcp__playwright__browser_handle_dialog({ accept: true, promptText: "input" })

Page Management

browser_tabs - Manage tabs

mcp__playwright__browser_tabs({ action: "list" })
mcp__playwright__browser_tabs({ action: "new" })
mcp__playwright__browser_tabs({ action: "select", index: 0 })

browser_close - Close page

mcp__playwright__browser_close({})

Advanced

browser_evaluate - Execute JavaScript

mcp__playwright__browser_evaluate({ function: "() => document.title" })

browser_press_key - Press keyboard key

mcp__playwright__browser_press_key({ key: "Enter" })

Best Practices

  1. Always snapshot first: Use browser_snapshot before interacting to get element refs
  2. Use descriptive element names: Provide clear descriptions in element parameter
  3. Wait for content: Use browser_wait_for before interacting with dynamic content
  4. Handle dialogs: Check for dialog prompts and handle appropriately
  5. Clean up: Close browser when done with browser_close

References

For complete tool parameters, see references/tools.md.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Design, review, and improve Claude/Codex skills based on Anthropic's "The Complete Guide to Building Skills for Claude". Use when creating a new skill, rewriting SKILL.md frontmatter and workflows, fixing under-triggering or over-triggering, designing scripts/references/assets, building test cases, or preparing a skill for upload/distribution.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

This skill enables web searching using Brave Search API directly via curl. Use when searching for current information, news, articles, or web content. MCP server not required - calls API directly.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

Run code quality checks (ruff, mypy, pytest) and optionally simplify code. This skill should be used when the user wants to check code quality, run linters, run tests, or simplify recently modified code. Triggered by /lint, /check, or /code-quality commands.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

Perform structured code reviews focusing on correctness, readability, security, and maintainability. Use this skill when reviewing pull requests, evaluating code changes, or establishing review standards for a team.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. Focuses on recently modified code unless instructed otherwise. This skill should be used when code-quality checks pass but the code would benefit from structural cleanup — deduplication, branching simplification, naming improvements, or dead-code removal. Invoked as a subagent from /code-quality or directly via the Task tool.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality. This skill should be used after implementing features or bug fixes to clean up code, when refactoring for readability, or when reducing unnecessary complexity. It launches the code-simplifier subagent provided by the code-simplifier@claude-plugins-official plugin.

The English summary is being prepared. Showing the original description.

s-hiraoku/vscode-sidebar-terminal22Updated Oct 21, 2026

See all skills by s-hiraoku

Report a problem with this skill