playwright-mcp-dev
Explains how to add and debug playwright MCP tools and CLI commands.
Works with
--- name: playwright-mcp-dev description: Explains how to add and debug playwright MCP tools and CLI commands. license: Apache-2.0 --- # MCP ## Adding MCP Tools - Create a new tool in `packages/playwright/src/mcp/browser/tools/your-tool.ts` - Register the tool in `packages/playwright/src/mcp/browser/tools.ts` - Add ToolCapability in `packages/playwright/src/mcp/config.d.ts` - Place new tests in `tests/mcp/mcp-<category>.spec.ts` ## Building - Assume watch is running at all times, run lint to see type errors ## Testing - Run tests as `npm run ctest-mcp <category>` - Do not run test --debug # CLI ## Adding commands - CLI commands are based on MCP tools. Implement the corresponding MCP tool as per `Adding MCP Tools` section above, if needed. - Add new CLI category for tool if needed: - Add Category in `packages/playwright/src/mcp/terminal/command.ts` - Update doc generator `packages/playwright/src/mcp/terminal/helpGenerator.ts` - Register command in `packages/playwright/src/mcp/terminal/commands.ts` - Update skill file at `packages/playwright/src/skill/SKILL.md` and references if necessary in `packages/playwright/src/skill/references/` - Place new tests in `tests/mcp/cli-<category>.spec.ts` ## Adding CLI options or Config options When you need to add something to config. - `packages/playwright/src/mcp/program.ts` - add CLI option and doc - `packages/playwright/src/mcp/config.d.ts` - add and document the option - `packages/playwright/src/mcp/config.ts` - modify FullConfig if needed - and CLIOptions if needed - add it to configFromEnv ## Building - Assume watch is running at all times, run lint to see type errors ## Testing - Run tests as `npm run ctest-mcp cli-<category>` - Do not run test --debug # Lint - run `npm run flint` to lint everything before commit # SKILL File The skill file is located at `packages/playwright/src/skill/SKILL.md`. It contains documentation for all available CLI commands and MCP tools. Update it whenever you add new commands or tools. At any point in time you can run "npm run playwright-cli -- --help" to see the latest available commands and use them to update the skill file.
More Testing skills
tdd
mattpocock/skills
Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
setup-pre-commit
mattpocock/skills
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.

