Integrations
Provides browser automation capabilities on Linux systems without a display by running Playwright in a client-server manner, allowing for headed browser operations in display-less environments.
Драматург MCP
Сервер Model Context Protocol (MCP), который обеспечивает возможности автоматизации браузера с помощью Playwright . Этот сервер позволяет LLM взаимодействовать с веб-страницами посредством структурированных снимков доступности, обходя необходимость в снимках экрана или визуально настроенных моделях.
Основные характеристики
- Быстрый и легкий : использует дерево доступности Playwright, а не пиксельный ввод.
- Совместимость с LLM : не требуются модели машинного зрения, работает исключительно со структурированными данными.
- Детерминированное применение инструмента : позволяет избежать неоднозначности, характерной для подходов, основанных на снимках экрана.
Варианты использования
- Веб-навигация и заполнение форм
- Извлечение данных из структурированного контента
- Автоматизированное тестирование под руководством LLM
- Универсальное взаимодействие с браузером для агентов
Пример конфигурации
Оглавление
- Установка в VS Code
- Командная строка
- Профиль пользователя
- Файл конфигурации
- Работает на Linux
- Докер
- Программное использование
- Режимы работы инструмента
Установка в VS Code
Вы можете установить сервер Playwright MCP с помощью VS Code CLI:
После установки сервер Playwright MCP будет доступен для использования с вашим агентом GitHub Copilot в VS Code.
Командная строка
Сервер Playwright MCP поддерживает следующие параметры командной строки:
--browser <browser>
: Браузер или канал Chrome для использования. Возможные значения:chrome
,firefox
,webkit
,msedge
- Каналы Chrome:
chrome-beta
,chrome-canary
,chrome-dev
- Пограничные каналы:
msedge-beta
,msedge-canary
,msedge-dev
- По умолчанию:
chrome
--caps <caps>
: Список возможностей, которые нужно включить, разделенный запятыми, возможные значения: вкладки, pdf, история, ожидание, файлы, установка. По умолчанию — все.--cdp-endpoint <endpoint>
: конечная точка CDP для подключения--executable-path <path>
: Путь к исполняемому файлу браузера--headless
: запустить браузер в режиме headless (по умолчанию headless)--device
: Эмулировать мобильное устройство--user-data-dir <path>
: Путь к каталогу пользовательских данных--port <port>
: Порт для прослушивания транспорта SSE--host <host>
: Хост для привязки сервера. По умолчанию localhost. Используйте 0.0.0.0 для привязки ко всем интерфейсам.--allowed-origins <origins>
: Список источников, разделенных точкой с запятой, которые браузер может запросить. По умолчанию разрешено все. Источники, соответствующие как--allowed-origins
, так и--blocked-origins
будут заблокированы.--blocked-origins <origins>
: Список источников, разделенных точкой с запятой, для блокировки браузера при запросе. Источники, соответствующие как--allowed-origins
, так и--blocked-origins
будут заблокированы.--vision
: Запустить сервер, использующий снимки экрана (по умолчанию используются снимки экрана Aria)--output-dir
: Каталог для выходных файлов--config <path>
: Путь к файлу конфигурации
Профиль пользователя
Playwright MCP запустит браузер с новым профилем, расположенным по адресу
Вся информация о входе в систему будет храниться в этом профиле. Вы можете удалить ее между сеансами, если хотите очистить состояние «офлайн».
Файл конфигурации
Сервер Playwright MCP можно настроить с помощью файла конфигурации JSON. Вот полный формат конфигурации:
Вы можете указать файл конфигурации с помощью параметра командной строки --config
:
Работает на Linux
При запуске браузера Headed в системе без дисплея или из рабочих процессов IDE запустите сервер MCP из среды с DISPLAY и передайте флаг --port
, чтобы включить транспорт SSE.
Затем в конфигурации клиента MCP задайте url
-адрес конечной точки SSE:
Докер
ПРИМЕЧАНИЕ: На данный момент реализация Docker поддерживает только безголовый Chromium.
Вы можете создать образ Docker самостоятельно.
Программное использование
Режимы работы инструмента
Инструменты доступны в двух режимах:
- Режим моментальных снимков (по умолчанию): использует моментальные снимки доступности для повышения производительности и надежности.
- Режим Vision : использует снимки экрана для визуального взаимодействия.
Чтобы использовать Vision Mode, добавьте флаг --vision
при запуске сервера:
Режим Vision лучше всего работает с компьютерными моделями, которые способны взаимодействовать с элементами, используя координатное пространство XY, судя по предоставленному снимку экрана.
Взаимодействия на основе моментальных снимков
- снимок_браузера
- Название: Снимок страницы
- Описание: Сделать снимок доступности текущей страницы, это лучше, чем снимок экрана
- Параметры: Нет
- Только для чтения: правда
- браузер_щелчок
- Название: Щелчок
- Описание: Выполнить щелчок на веб-странице.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомref
(string): Точная ссылка на целевой элемент из снимка страницы
- Только для чтения: ложно
- браузер_перетаскивание
- Название: Перетаскивание мышью
- Описание: Выполнение перетаскивания между двумя элементами.
- Параметры:
startElement
(строка): понятное человеку описание исходного элемента, используемое для получения разрешения на взаимодействие с элементом.startRef
(string): Точная ссылка на исходный элемент из снимка страницыendElement
(строка): понятное человеку описание целевого элемента, используемое для получения разрешения на взаимодействие с элементом.endRef
(строка): точная ссылка на целевой элемент из снимка страницы
- Только для чтения: ложно
- браузер_hover
- Название: Наведение мыши
- Описание: Наведите курсор на элемент на странице.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомref
(string): Точная ссылка на целевой элемент из снимка страницы
- Только для чтения: правда
- тип_браузера
- Название: Введите текст
- Описание: Введите текст в редактируемый элемент.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомref
(string): Точная ссылка на целевой элемент из снимка страницыtext
(строка): Текст для ввода в элемент.submit
(логическое значение, необязательно): следует ли отправить введенный текст (нажмите Enter после этого)slowly
(boolean, необязательно): Вводить ли по одному символу за раз. Полезно для запуска обработчиков клавиш на странице. По умолчанию весь текст заполняется сразу.
- Только для чтения: ложно
- выбор_опции_браузера
- Название: Выберите вариант
- Описание: Выберите вариант в раскрывающемся списке.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомref
(string): Точная ссылка на целевой элемент из снимка страницыvalues
(массив): Массив значений для выбора в раскрывающемся списке. Это может быть одно значение или несколько значений.
- Только для чтения: ложно
- браузер_сделать_скриншот
- Название: Сделать снимок экрана
- Описание: Сделать снимок экрана текущей страницы. Вы не можете выполнять действия на основе снимка экрана, используйте для действий browser_snapshot.
- Параметры:
raw
(boolean, необязательно): Возвращать ли без сжатия (в формате PNG). Значение по умолчанию — false, что возвращает изображение JPEG.element
(строка, необязательно): понятное человеку описание элемента, используемое для получения разрешения на снимок экрана элемента. Если не указано, снимок экрана будет сделан из области просмотра. Если элемент указан, необходимо указать также ссылку.ref
(строка, необязательно): Точная ссылка на целевой элемент из снимка страницы. Если не указано, снимок экрана будет сделан из области просмотра. Если указано ref, элемент также должен быть указан.
- Только для чтения: правда
Взаимодействия на основе видения
- захват_экрана_браузера
- Название: Сделать снимок экрана
- Описание: Сделать снимок экрана текущей страницы.
- Параметры: Нет
- Только для чтения: правда
- экран_браузера_перемещение_мыши
- Название: Перемещение мыши
- Описание: Переместить мышь в указанную позицию.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомx
(число): координата Xy
(число): координата Y
- Только для чтения: правда
- щелчок_по_экрану_браузера
- Название: Щелчок
- Описание: Щелкните левой кнопкой мыши.
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомx
(число): координата Xy
(число): координата Y
- Только для чтения: ложно
- перетаскивание_экрана_браузера
- Название: Перетаскивание мышью
- Описание: Перетащите левой кнопкой мыши
- Параметры:
element
(строка): понятное человеку описание элемента, используемое для получения разрешения на взаимодействие с элементомstartX
(число): Начальная координата XstartY
(число): начальная координата YendX
(число): Конечная координата XendY
(число): Конечная координата Y
- Только для чтения: ложно
- тип_экрана_браузера
- Название: Введите текст
- Описание: Введите текст
- Параметры:
text
(строка): Текст для ввода в элемент.submit
(логическое значение, необязательно): следует ли отправить введенный текст (нажмите Enter после этого)
- Только для чтения: ложно
Управление вкладками
- список_вкладок_браузера
- Название: Список вкладок
- Описание: Список вкладок браузера
- Параметры: Нет
- Только для чтения: правда
- браузер_вкладка_новая
- Заголовок: Открыть новую вкладку
- Описание: Открыть новую вкладку
- Параметры:
url
(строка, необязательно): URL для перехода на новую вкладку. Если не указано, новая вкладка будет пустой.
- Только для чтения: правда
- выбор_вкладки_браузера
- Название: Выберите вкладку
- Описание: Выберите вкладку по индексу
- Параметры:
index
(номер): индекс вкладки для выбора.
- Только для чтения: правда
- закрыть_вкладку_браузера
- Заголовок: Закрыть вкладку
- Описание: Закрыть вкладку
- Параметры:
index
(число, необязательно): индекс вкладки для закрытия. Закрывает текущую вкладку, если не указано.
- Только для чтения: ложно
Навигация
- браузер_навигация
- Название: Перейти к URL-адресу
- Описание: Перейдите по URL-адресу
- Параметры:
url
(строка): URL-адрес для перехода
- Только для чтения: ложно
- браузер_навигация_назад
- Название: Вернуться назад
- Описание: Вернуться на предыдущую страницу
- Параметры: Нет
- Только для чтения: правда
- браузер_навигация_вперед
- Название: Идти вперед
- Описание: Перейти на следующую страницу
- Параметры: Нет
- Только для чтения: правда
Клавиатура
- браузер_нажмите_клавишу
- Название: Нажмите клавишу
- Описание: Нажмите клавишу на клавиатуре.
- Параметры:
key
(строка): название клавиши, которую нужно нажать, или символ, который нужно сгенерировать, например,ArrowLeft``a
- Только для чтения: ложно
Консоль
- сообщения_консоли_браузера
- Название: Получить консольные сообщения
- Описание: Возвращает все сообщения консоли.
- Параметры: Нет
- Только для чтения: правда
Файлы и медиа
- загрузка_файла_браузера
- Название: Загрузить файлы
- Описание: Загрузите один или несколько файлов.
- Параметры:
paths
(массив): Абсолютные пути к файлам для загрузки. Может быть одним файлом или несколькими файлами.
- Только для чтения: ложно
- браузер_pdf_сохранить
- Название: Сохранить как PDF
- Описание: Сохранить страницу как PDF
- Параметры: Нет
- Только для чтения: правда
Коммунальные услуги
- браузер_закрыть
- Заголовок: Закрыть браузер
- Описание: Закрыть страницу
- Параметры: Нет
- Только для чтения: правда
- браузер_ожидание
- Название: Подождите
- Описание: Ожидание в течение указанного времени в секундах.
- Параметры:
time
(число): время ожидания в секундах
- Только для чтения: правда
- изменение_размера_браузера
- Название: Изменение размера окна браузера
- Описание: Изменение размера окна браузера.
- Параметры:
width
(число): Ширина окна браузера.height
(число): Высота окна браузера.
- Только для чтения: правда
- браузер_установить
- Заголовок: Установка браузера, указанного в конфиге
- Описание: Установите браузер, указанный в конфигурации. Вызовите его, если вы получили ошибку о том, что браузер не установлен.
- Параметры: Нет
- Только для чтения: ложно
- диалог_обработки_браузера
- Название: Обработка диалога
- Описание: Обработка диалога.
- Параметры:
accept
(логическое значение): принимать ли диалог.promptText
(строка, необязательно): Текст подсказки в случае диалогового окна подсказки.
- Только для чтения: ложно
- запросы_браузера_сети
- Название: Список сетевых запросов
- Описание: Возвращает все сетевые запросы с момента загрузки страницы.
- Параметры: Нет
- Только для чтения: правда
Тестирование
- браузер_генерировать_драматург_тест
- Название: Сгенерируйте тест драматурга
- Описание: Создать тест драматурга для заданного сценария.
- Параметры:
name
(строка): Название тестаdescription
(строка): Описание тестаsteps
(массив): шаги теста
- Только для чтения: правда
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер протокола контекста модели, который позволяет магистрам уровня магистра взаимодействовать с веб-страницами посредством структурированных снимков доступности без необходимости использования моделей зрения или снимков экрана.
- Основные характеристики
- Варианты использования
- Пример конфигурации
- Оглавление
- Установка в VS Code
- Командная строка
- Профиль пользователя
- Файл конфигурации
- Работает на Linux
- Докер
- Программное использование
- Режимы работы инструмента
- Взаимодействия на основе моментальных снимков
- Взаимодействия на основе видения
- Управление вкладками
- Навигация
- Клавиатура
- Консоль
- Файлы и медиа
- Коммунальные услуги
- Тестирование
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment.Last updated -3PythonApache 2.0
- -securityAlicense-qualityA Model Context Protocol server that allows LLMs to interact with web content through standardized tools, currently supporting web scraping functionality.Last updated -PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables LLMs to fetch and process web content in multiple formats (HTML, JSON, Markdown, text) with automatic format detection.Last updated -TypeScript
- AsecurityAlicenseAqualityA Model Context Protocol server that enables LLMs to interact with web pages, take screenshots, generate test code, scrape web pages, and execute JavaScript in a real browser environment.Last updated -29101TypeScriptMIT License