Skip to main content
Glama

Opera DevTools MCP

Это форк chrome-devtools-mcp (авторские права 2025 Google LLC), расширенный функциями Opera Neon AI.

npm opera-devtools-mcp package

opera-devtools-mcp позволяет вашему агенту кодирования (например, Claude, Cursor или Copilot) управлять живым браузером и проверять его. Он работает как сервер Model-Context-Protocol (MCP), предоставляя вашему AI-ассистенту кодирования доступ ко всей мощи DevTools для надежной автоматизации, глубокой отладки и анализа производительности. При подключении к Opera Neon он также открывает доступ к встроенным AI-возможностям Opera.

Справочник по инструментам | История изменений | Участие | Устранение неполадок | Принципы дизайна

Related MCP server: Chrome DevTools MCP

Ключевые возможности

  • Инструменты Opera Neon AI: Взаимодействуйте со встроенным AI Opera напрямую из вашего агента кодирования — чат, выполнение действий на странице, создание контента и проведение исследований.

  • Получайте аналитику производительности: Использует Chrome DevTools для записи трассировок и извлечения практических сведений о производительности.

  • Расширенная отладка браузера: Анализируйте сетевые запросы, делайте скриншоты и проверяйте сообщения консоли браузера (с трассировками стека, сопоставленными с исходным кодом).

  • Надежная автоматизация: Использует puppeteer для автоматизации действий в браузере и автоматически ожидает результатов действий.

Инструменты Opera Neon AI

Эти инструменты доступны только при подключении к Opera Neon через --browser-url.

Tool

Description

opera_chat

Отправьте чат-запрос встроенному AI Opera и получите ответ.

opera_do

Дайте указание встроенному AI Opera выполнить действие на текущей странице.

opera_make

Попросите встроенный AI Opera создать или сгенерировать контент.

opera_research

Попросите встроенный AI Opera исследовать тему. Поддерживает режимы исследования local, one-minute и deep.

Предупреждения

opera-devtools-mcp предоставляет содержимое экземпляра браузера MCP-клиентам, позволяя им просматривать, отлаживать и изменять любые данные в браузере или DevTools. Не передавайте конфиденциальную или личную информацию, которой вы не хотите делиться с MCP-клиентами.

Инструменты производительности могут отправлять URL-адреса трассировок в Google CrUX API для получения данных о реальном опыте пользователей. Чтобы отключить это, запустите с флагом --no-performance-crux.

Требования

Начало работы

Добавьте следующую конфигурацию в ваш MCP-клиент:

{
  "mcpServers": {
    "opera-devtools": {
      "command": "npx",
      "args": ["-y", "opera-devtools-mcp@latest"]
    }
  }
}

[!NOTE] Использование opera-devtools-mcp@latest гарантирует, что ваш MCP-клиент всегда будет использовать последнюю версию сервера Opera DevTools MCP.

Подключение к Opera Neon

Чтобы использовать инструменты Opera Neon AI, запустите Opera Neon с включенной удаленной отладкой и подключитесь через --browser-url:

{
  "mcpServers": {
    "opera-devtools": {
      "command": "npx",
      "args": [
        "-y",
        "opera-devtools-mcp@latest",
        "--browser-url=http://127.0.0.1:9222"
      ]
    }
  }
}

Запустите Opera Neon с портом удаленной отладки:

# macOS
/Applications/Opera\ Neon.app/Contents/MacOS/Opera\ Neon --remote-debugging-port=9222 --user-data-dir=/tmp/opera-profile

Конфигурация MCP-клиента

claude mcp add opera-devtools --scope user npx opera-devtools-mcp@latest

Перейдите в Cursor Settings -> MCP -> New MCP Server. Используйте конфигурацию, приведенную выше.

Следуйте руководству по настройке MCP для VS Code, используя стандартную конфигурацию выше, или используйте CLI:

code --add-mcp '{"name":"opera-devtools","command":"npx","args":["-y","opera-devtools-mcp"],"env":{}}'

Ваш первый промпт

Введите следующий промпт в вашем MCP-клиенте, чтобы проверить, что все работает:

Check the performance of https://opera.com

Ваш MCP-клиент должен открыть браузер и записать трассировку производительности.

[!NOTE] Сервер MCP запустит браузер автоматически, как только MCP-клиент использует инструмент, требующий запущенного экземпляра браузера. Само по себе подключение к серверу Opera DevTools MCP не приведет к автоматическому запуску браузера.

Инструменты

Если у вас возникнут проблемы, загляните в наше руководство по устранению неполадок.

Конфигурация

Сервер Opera DevTools MCP поддерживает следующие параметры конфигурации:

  • --autoConnect/ --auto-connect Если указан, автоматически подключается к браузеру (Chrome 144+), запущенному локально с каталогом пользовательских данных, определяемым параметром канала (канал по умолчанию — stable). Требуется, чтобы в экземпляре Chrome был запущен сервер удалённой отладки через chrome://inspect/#remote-debugging.

    • Тип: boolean

    • По умолчанию: false

  • --browserUrl/ --browser-url, -u Подключается к запущенному экземпляру Chrome с включённой отладкой (например, http://127.0.0.1:9222). Подробнее см.: https://github.com/operasoftware/opera-devtools-mcp#connecting-to-a-running-chrome-instance.

    • Тип: string

    • По умолчанию: false

  • --wsEndpoint/ --ws-endpoint, -w Конечная точка WebSocket для подключения к запущенному экземпляру Chrome (например, ws://127.0.0.1:9222/devtools/browser/). Альтернатива --browserUrl.

    • Тип: string

    • По умолчанию: false

  • --wsHeaders/ --ws-headers Пользовательские заголовки для WebSocket-подключения в формате JSON (например, '{"Authorization":"Bearer token"}'). Работает только с --wsEndpoint.

    • Тип: string

    • По умолчанию: false

  • --headless Нужно ли запускать в безголовом режиме (без графического интерфейса).

    • Тип: boolean

    • По умолчанию: false

  • --executablePath/ --executable-path, -e Путь к нестандартному исполняемому файлу Chrome.

    • Тип: string

    • По умолчанию: false

  • --isolated Если указан, создаётся временный каталог пользовательских данных, который автоматически очищается после закрытия браузера. По умолчанию — false.

    • Тип: boolean

    • По умолчанию: false

  • --userDataDir/ --user-data-dir Путь к каталогу пользовательских данных для Chrome. По умолчанию: $HOME/.cache/opera-devtools-mcp/chrome-profile$CHANNEL_SUFFIX_IF_NON_STABLE

    • Тип: string

    • По умолчанию: false

  • --channel Указывает другой канал Chrome, который следует использовать. По умолчанию используется канал stable.

    • Тип: string

    • Варианты: canary, dev, beta, stable

    • По умолчанию: false

  • --logFile/ --log-file Путь к файлу, в который записываются журналы отладки. Установите переменную окружения DEBUG в *, чтобы включить подробное журналирование. Полезно для отправки отчётов об ошибках.

    • Тип: string

    • По умолчанию: false

  • --viewport Начальный размер области просмотра для экземпляров Chrome, запускаемых сервером. Например, 1280x720. В безголовом режиме максимальный размер — 3840x2160px.

    • Тип: string

    • По умолчанию: false

  • --proxyServer/ --proxy-server Конфигурация прокси-сервера для Chrome, передаваемая как --proxy-server при запуске браузера. Подробнее см. https://www.chromium.org/developers/design-documents/network-settings/.

    • Тип: string

    • По умолчанию: false

  • --acceptInsecureCerts/ --accept-insecure-certs Если включено, игнорируются ошибки, связанные с самоподписанными и просроченными сертификатами. Использовать с осторожностью.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalPageIdRouting/ --experimental-page-id-routing Определяет, нужно ли предоставлять pageId в инструментах уровня страниц и маршрутизировать запросы по идентификатору страницы (полезно для параллельных сеансов агентов).

    • Тип: boolean

    • По умолчанию: false

  • --experimentalDevtools/ --experimental-devtools Нужно ли включать автоматизацию по целям DevTools.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalVision/ --experimental-vision Нужно ли включать инструменты, основанные на координатах, такие как click_at(x,y). Обычно требуется модель computer-use, способная определять точные координаты по скриншотам.

    • Тип: boolean

    • По умолчанию: false

  • --memoryDebugging/ --memory-debugging, -experimentalMemory Нужно ли включать инструменты отладки памяти.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalStructuredContent/ --experimental-structured-content Нужно ли выводить структурированный форматированный контент.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalIncludeAllPages/ --experimental-include-all-pages Нужно ли включать все виды страниц, такие как webview или фоновые страницы, в качестве страниц.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalScreencast/ --experimental-screencast Предоставляет экспериментальные инструменты захвата экрана (требуется ffmpeg). Установите ffmpeg https://www.ffmpeg.org/download.html и убедитесь, что он доступен в PATH сервера MCP.

    • Тип: boolean

    • По умолчанию: false

  • --experimentalFfmpegPath/ --experimental-ffmpeg-path Путь к исполняемому файлу ffmpeg для записи экрана.

    • Тип: string

    • По умолчанию: false

  • --categoryExperimentalWebmcp/ --category-experimental-webmcp Установите значение true, чтобы включить инструменты отладки WebMCP. Требуется Chrome 150+ со следующим флагом: --enable-features=WebMCP

    • Тип: boolean

    • По умолчанию: false

  • --chromeArg/ --chrome-arg Дополнительные аргументы для Chrome. Применяется только когда Chrome запускается opera-devtools-mcp.

    • Тип: array

    • По умолчанию: false

  • --blockedUrlPattern/ --blocked-url-pattern Ограничивает сетевой доступ браузера, блокируя указанные шаблоны URL (используется https://urlpattern.spec.whatwg.org/). При подключении незаметно отсоединяется от целей с заблокированными URL и блокирует запросы во время выполнения (включая навигации и подресурсы). Принимает массив шаблонов.

    • Тип: array

    • По умолчанию: false

  • --allowedUrlPattern/ --allowed-url-pattern Ограничивает сетевой доступ браузера, разрешая только указанные шаблоны URL (используется https://urlpattern.spec.whatwg.org/). Требуется Chrome 149+. При подключении незаметно отсоединяется от целей с неразрешёнными URL и блокирует запросы во время выполнения (включая навигации и подресурсы). Принимает массив шаблонов.

    • Тип: array

    • По умолчанию: false

  • --ignoreDefaultChromeArg/ --ignore-default-chrome-arg Явно отключает аргументы Chrome по умолчанию. Применяется только когда Chrome запускается opera-devtools-mcp.

    • Тип: array

    • По умолчанию: false

  • --categoryEmulation/ --category-emulation Установите значение false, чтобы исключить инструменты, связанные с эмуляцией.

    • Тип: boolean

    • По умолчанию: true

  • --categoryPerformance/ --category-performance Установите значение false, чтобы исключить инструменты, связанные с производительностью.

    • Тип: boolean

    • По умолчанию: true

  • --categoryNetwork/ --category-network Установите значение false, чтобы исключить инструменты, связанные с сетью.

    • Тип: boolean

    • По умолчанию: true

  • --categoryExtensions/ --category-extensions Установите значение true, чтобы включить инструменты, связанные с расширениями. Примечание: эта функция в настоящее время поддерживается только при pipe-подключении. Параметры autoConnect, browserUrl и wsEndpoint не поддерживаются с этой функцией до выхода Chrome 149.

    • Тип: boolean

    • По умолчанию: false

  • --categoryExperimentalThirdParty/ --category-experimental-third-party Установите значение true, чтобы включить сторонние инструменты разработчика, предоставляемые самой инспектируемой страницей.

    • Тип: boolean

    • По умолчанию: false

  • --categoryPwa/ --category-pwa Установите значение true, чтобы включить инструменты для автоматизации прогрессивных веб-приложений (установка, запуск, удаление и состояние ОС). Эта функция поддерживается только при pipe-подключении; Параметры autoConnect, browserUrl и wsEndpoint не поддерживаются.

    • Тип: boolean

    • По умолчанию: false

  • --performanceCrux/ --performance-crux Установите значение true, чтобы включить отправку URL из трассировок производительности в CrUX API для получения полевых данных производительности.

    • Тип: boolean

    • По умолчанию: false

  • --usageStatistics/ --usage-statistics Установите значение true, чтобы согласиться на сбор статистики об использовании. Google собирает данные об использовании для улучшения инструмента; обработка выполняется в соответствии с Политикой конфиденциальности Google (https://policies.google.com/privacy). Это независимо от метрик браузера Chrome. Отключается, если заданы переменные окружения OPERA_DEVTOOLS_NO_USAGE_STATISTICS или CI.

    • Тип: boolean

    • По умолчанию: false

  • --screenshotFormat/ --screenshot-format Переопределяет формат вывода по умолчанию, используемый take_screenshot, когда вызывающая сторона не указывает свой. JPEG и WebP примерно в 3–5 раз меньше PNG, что помогает уменьшить размер контекста в диалогах с ИИ. Если не задано, сохраняется текущий формат по умолчанию ("png").

    • Тип: string

    • Варианты: jpeg, png, webp

    • По умолчанию: false

  • --screenshotQuality/ --screenshot-quality Переопределяет качество сжатия по умолчанию (0-100), используемое take_screenshot для JPEG и WebP, когда вызывающая сторона не указывает его. Более низкие значения означают файлы меньшего размера. Игнорируется для PNG. Если не задано, сохраняется значение по умолчанию Puppeteer.

    • Тип: number

    • По умолчанию: false

  • --screenshotMaxWidth/ --screenshot-max-width Максимальная ширина скриншота в пикселях. Если захваченное изображение шире, перед возвратом оно масштабируется (с сохранением пропорций). Уменьшает размер контекста в разговорах с ИИ. Если не задано, изменения размера не выполняется.

    • Тип: number

    • По умолчанию: false

  • --screenshotMaxHeight/ --screenshot-max-height Максимальная высота скриншотов в пикселях. Если захваченное изображение выше, перед возвратом оно масштабируется (с сохранением пропорций). Можно комбинировать с --screenshot-max-width; при этом используется меньший коэффициент масштабирования. Если не задано, изменения размера не выполняется.

    • Тип: number

    • По умолчанию: false

  • --slim Предоставляет «облегчённый» набор из 3 инструментов, охватывающих только навигацию, выполнение скриптов и скриншоты. Полезно для основных задач с браузером.

    • Тип: boolean

    • По умолчанию: false

  • --redactNetworkHeaders/ --redact-network-headers Если true, маскирует некоторые сетевые заголовки, считающиеся конфиденциальными, перед возвратом клиенту.

    • Тип: boolean

    • По умолчанию: false

  • --allowUnrestrictedPaths/ --allow-unrestricted-paths Если задано, отключает ограничение путей по умолчанию, которое применяется, когда MCP-клиент не согласует возможность roots. По умолчанию инструменты записи файлов ограничены временным каталогом ОС, если не настроены roots. Используйте это только при подключении доверенного локального клиента, который не реализует MCP roots и требует доступ к путям вне временного каталога.

    • Тип: boolean

    • По умолчанию: false

Передавайте их через свойство args в JSON-конфигурации. Например:

{
  "mcpServers": {
    "opera-devtools": {
      "command": "npx",
      "args": [
        "opera-devtools-mcp@latest",
        "--headless=true",
        "--isolated=true"
      ]
    }
  }
}

Подключение через WebSocket с пользовательскими заголовками

{
  "mcpServers": {
    "opera-devtools": {
      "command": "npx",
      "args": [
        "opera-devtools-mcp@latest",
        "--wsEndpoint=ws://127.0.0.1:9222/devtools/browser/<id>",
        "--wsHeaders={\"Authorization\":\"Bearer YOUR_TOKEN\"}"
      ]
    }
  }
}

Основные понятия

Каталог пользовательских данных

opera-devtools-mcp запускает экземпляр браузера, используя следующий каталог пользовательских данных:

  • Linux / macOS: $HOME/.cache/chrome-devtools-mcp/chrome-profile-$CHANNEL

  • Windows: %HOMEPATH%/.cache/chrome-devtools-mcp/chrome-profile-$CHANNEL

Каталог пользовательских данных не очищается между запусками. Установите параметр isolated в значение true, чтобы использовать вместо него временный каталог пользовательских данных, который будет автоматически очищен после закрытия браузера.

Подключение к запущенному экземпляру браузера

По умолчанию сервер запускает новый экземпляр Chrome с отдельным профилем. Вместо этого можно подключиться к запущенному экземпляру через --browser-url:

{
  "mcpServers": {
    "opera-devtools": {
      "command": "npx",
      "args": [
        "opera-devtools-mcp@latest",
        "--browser-url=http://127.0.0.1:9222"
      ]
    }
  }
}

Запустите браузер с включённым портом удалённой отладки:

macOS (Chrome)

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable

macOS (Opera Neon)

/Applications/Opera\ Neon.app/Contents/MacOS/Opera\ Neon --remote-debugging-port=9222 --user-data-dir=/tmp/opera-profile

Linux

/usr/bin/google-chrome --remote-debugging-port=9222 --user-data-dir=/tmp/chrome-profile-stable

Windows

"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="%TEMP%\chrome-profile-stable"

[!WARNING] Включение порта удалённой отладки открывает порт отладки на запущенном экземпляре браузера. Любое приложение на вашей машине может подключиться к этому порту и управлять браузером. Убедитесь, что вы не просматриваете конфиденциальные сайты, пока порт отладки открыт.

Отладка Chrome на Android

Обратитесь, к эти инструкции.

Известные ограничения

См. Устранение неполадок.

Лицензия

Apache 2.0. См. LICENSE и NOTICE.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI coding assistants to control and inspect a live Chrome browser for automation, debugging, performance analysis, network monitoring, and DOM interaction through Chrome DevTools Protocol.
    2,211,104
    Apache 2.0
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI coding assistants to control and inspect a live Chrome browser for automated debugging, performance analysis, and web interaction. It leverages Puppeteer and Chrome DevTools to provide capabilities like network monitoring, console logging, and automated browser actions.

View all related MCP servers

Related MCP Connectors

  • Live browser debugging for AI assistants — DOM, console, network via MCP.

  • AI-powered browser automation — navigate, click, fill forms, and extract data from any website.

  • A paid remote MCP for AI agent browser DevTools MCP, built to return verdicts, receipts, usage logs,

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/operasoftware/opera-devtools-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server