Yandex Browser MCP Server
Enables comprehensive control and automation of Yandex Browser, including tab management, content extraction, and console log monitoring. It supports element interaction, form filling, and JavaScript execution through the Model Context Protocol.
README
Yandex Browser Tabs MCP Server v2.0
MCP (Model Context Protocol) сервер для управления вкладками Яндекс Браузера с расширенной функциональностью.
🚀 Новые возможности в версии 2.0
📊 Прямой доступ к консоли браузера
- Перехват всех логов консоли (log, warn, error, info)
- Сохранение истории консоли
- Фильтрация логов по типу
🎯 Быстрый скроллинг
- Скролл к элементу с плавной анимацией
- Скролл в любом направлении на заданное расстояние
- Поддержка smooth и instant режимов
📄 Получение информации без скриншотов
- Извлечение текста со страницы или элемента
- Получение HTML контента (inner/outer)
- Чтение атрибутов элементов
- Получение метаинформации страницы
🎮 Расширенное взаимодействие
- Hover эффекты
- Нажатие клавиш и комбинаций
- Заполнение форм
- Ожидание появления элементов
📋 Установка
# Клонируйте репозиторий
git clone <repository-url>
cd yandex-browser-mcp
# Установите зависимости
npm install
# Соберите проект
npm run build
🔧 Использование
1. Запустите Яндекс Браузер в режиме отладки
Используйте один из предоставленных батников:
start-yandex-debug.bat
Или вручную:
"C:\Users\%USERNAME%\AppData\Local\Yandex\YandexBrowser\Application\browser.exe" --remote-debugging-port=9222
2. Подключите MCP сервер к Claude Desktop
Добавьте в конфигурацию Claude Desktop:
{
"mcpServers": {
"yandex-browser": {
"command": "node",
"args": ["C:\\Users\\Professional\\Desktop\\yandex-browser-mcp\\build\\index.js"]
}
}
}
📚 Полный список функций
Базовые функции
connect_to_browser
Подключиться к уже открытому Яндекс Браузеру
connect_to_browser({ port?: number })
list_tabs
Получить список всех открытых вкладок
list_tabs({})
navigate
Перейти по URL в указанной вкладке
navigate({
url: string,
tabIndex?: number,
waitForSelector?: string
})
Взаимодействие с элементами
click
Кликнуть по элементу
click({ selector: string, tabIndex?: number })
type
Ввести текст в поле
type({
selector: string,
text: string,
tabIndex?: number,
delay?: number
})
hover
Навести курсор на элемент
hover({ selector: string, tabIndex?: number })
key_press
Нажать клавишу или комбинацию
key_press({
key: string,
modifiers?: ['Control' | 'Shift' | 'Alt' | 'Meta'][],
tabIndex?: number
})
Скроллинг
scroll
Прокрутить страницу или к элементу
scroll({
tabIndex?: number,
direction?: 'up' | 'down' | 'left' | 'right',
distance?: number,
selector?: string,
smooth?: boolean
})
Получение информации
get_text
Получить текстовое содержимое
get_text({ selector?: string, tabIndex?: number })
get_html
Получить HTML содержимое
get_html({
selector?: string,
outerHTML?: boolean,
tabIndex?: number
})
get_attributes
Получить атрибуты элемента
get_attributes({
selector: string,
attributes?: string[],
tabIndex?: number
})
get_page_info
Получить информацию о странице
get_page_info({ tabIndex?: number })
// Возвращает: URL, title, description, viewport, metaTags
get_console_logs
Получить логи консоли браузера
get_console_logs({
tabIndex?: number,
type?: 'all' | 'log' | 'warn' | 'error' | 'info',
limit?: number
})
Работа с формами
fill_form
Заполнить форму данными
fill_form({
formSelector?: string,
fields: { [selector: string]: any },
tabIndex?: number
})
Утилиты
wait_for_element
Ждать появления элемента
wait_for_element({
selector: string,
tabIndex?: number,
timeout?: number,
visible?: boolean
})
screenshot
Сделать скриншот
screenshot({
name: string,
tabIndex?: number,
fullPage?: boolean,
selector?: string
})
evaluate
Выполнить JavaScript код
evaluate({ script: string, tabIndex?: number })
execute_test
Выполнить тест (выбрать ответы и отправить)
execute_test({
tabIndex: number,
testSelectors: string[],
submitButtonSelector: string
})
💡 Примеры использования
Пример: Мониторинг консоли и извлечение данных
// Подключаемся к браузеру
connect_to_browser({})
// Переходим на страницу
navigate({ url: "https://example.com" })
// Получаем логи консоли
get_console_logs({ type: 'error' })
// Извлекаем текст
get_text({ selector: '.main-content' })
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.