Об этом проекте

Playwright MCP — это сервер Model Context Protocol (MCP), который предоставляет автоматизацию браузера через Playwright. Вместо использования скриншотов или моделей, настроенных на зрение, он позволяет LLM-клиентам взаимодействовать с веб-страницами с помощью структурированных accessibility-снимков, которые проект описывает как быстрые, лёгкие, удобные для LLM и детерминированные. В README проводится сравнение MCP-сервера с отдельным подходом Playwright CLI и SKILLs. Отмечается, что агенты кодирования часто предпочитают CLI-ориентированные рабочие процессы, потому что они более эффективны по токенам, в то время как MCP остаётся полезным для агентных циклов, требующих постоянного состояния, богатой интроспекции и итеративного рассуждения над структурой страницы, таких как исследовательская автоматизация, самовосстанавливающиеся тесты или длительные автономные рабочие процессы. Требования: Node.js 18 или новее и MCP-клиент, такой как VS Code, Cursor, Windsurf, Claude Desktop, Goose, Grok, Junie и другие. Установка обычно выполняется с помощью npx @playwright/mcp@latest, и в README приведены примеры настройки для многих клиентов, включая VS Code, Cursor, Claude Code, Claude Desktop, Cline, Codex, Copilot, Factory, Gemini CLI, Goose, Grok, Junie, Kiro, LM Studio, opencode, Qodo Gen, Warp и Windsurf. Конфигурация обширна. Параметры командной строки и соответствующие переменные окружения охватывают выбор браузера (chrome, firefox, webkit, msedge), headless-режим, размер окна просмотра, эмуляцию устройств, эмуляцию мобильных устройств, настройки прокси, конечные точки CDP, таймауты, уровни консоли, атрибуты test-id, разрешения, выходные каталоги, файлы секретов, сохранение сессий, режимы и области снимков, блокировку сервис-воркеров, обработку ошибок HTTPS, переключение песочницы и многое другое. Файл конфигурации JSON также может быть передан с помощью --config. Обработка пользовательских профилей поддерживает постоянный профиль, хранящийся в специфичных для платформы кэш-каталогах, ключом которых является хэш рабочей области, изолированные сессии, отбрасывающие состояние хранилища при закрытии, и подключение к существующему браузеру через расширение Playwright Chrome. Начальное состояние может быть задано через каталог пользовательских данных, файл состояния хранилища, TypeScript-файл init-page, выполняемый на объекте страницы Playwright, или JavaScript-файлы init-script, выполняемые до скриптов страницы.