MCP-сервер для Яндекс Вебмастера: как LLM-агент получает доступ к данным поисковой консоли
Разработчик представил MCP-сервер, обеспечивающий интеграцию языковых моделей с API Яндекс Вебмастера. Проект сокращает десятки эндпоинтов до восьми инструментов и автоматизирует процедуру авторизации. Код на TypeScript опубликован под лицензией MIT.
Опубликован исходный код MCP-сервера, который позволяет LLM-агентам работать с данными Яндекс Вебмастера напрямую. Сервер, написанный на TypeScript, реализует протокол MCP (Model Context Protocol) и предоставляет набор инструментов для доступа к API v4 поисковой системы. Разработчик стремился упростить взаимодействие между искусственным интеллектом и сервисом, скрыв технические детали, такие как формат идентификатора сайта и OAuth-аутентификация. Это особенно важно, поскольку без такого сервера LLM-агент не способен самостоятельно ни формировать корректные запросы, ни обрабатывать ответы, требующие сопоставления с данными Яндекс Метрики.
Сервер объединяет более двадцати эндпоинтов API в восемь логических инструментов. Среди них: получение списка сайтов, анализ поисковых запросов, данные об индексации, диагностика проблем, работа с Sitemap, внешние ссылки и управление переобходом. Ключевое решение — группировка не по принципу «один вызов — один инструмент», а по принципу «один вопрос — один инструмент». Это позволяет модели выбирать нужную команду без путаницы. Например, для работы с поисковыми запросами используется два режима: top (ранжированный список) и trend (динамика по запросу или сайту), вместо нескольких отдельных функций. Каждый инструмент снабжён чёткими описаниями, предписывающими порядок использования, а обязательный инструмент get_hosts вызывается первым для получения корректного host_id, без которого все остальные запросы вернут ошибку.
Особое внимание уделено обработке OAuth-флоу Яндекс ID: агент может выполнить вход самостоятельно, без участия пользователя и без использования клиентского секрета. Автор отмечает, что API v4 документирован неплохо, но на практике всплывают нюансы. Например, все пути требуют числовой user_id, который нужно получать отдельным запросом. Также массивы передаются повторяющимися параметрами, что может усложнить разбор. Сервер реализует агрегацию и фильтрацию данных: диагностика возвращает только активные проблемы, отсортированные по тяжести, с общим счётчиком по типам. Аналогично инструмент recrawl_status показывает остаток дневной квоты вместе со списком задач, чтобы модель оценивала затраты до отправки запроса на переобход — это предотвращает необдуманное расходование лимита.
Эта разработка продолжает серию проектов того же автора по созданию MCP-серверов для российских сервисов. Ранее им был выпущен аналогичный сервер для Яндекс Метрики. Связка двух инструментов позволяет агенту отвечать на комплексные вопросы, требующие данных одновременно из Вебмастера и Метрики. Например, выявить запросы с большим числом показов и низким CTR, а затем проверить, на каких страницах пользователи не достигают цели. Такое совместное использование двух сервисов предусмотрено и самим Яндексом — в диагностике Вебмастера есть типы проблем NO_METRIKA_COUNTER и NO_METRIKA_COUNTER_BINDING. Таким образом, экосистема российских поисковых и аналитических инструментов постепенно обзаводится средствами для интеграции с современными LLM-агентами.
Для российских разработчиков и SEO-специалистов появление открытого MCP-сервера означает возможность автоматизировать рутинные задачи с помощью языковых моделей. Раньше для получения сводок по поисковым запросам или состоянию индексации приходилось вручную ходить по вкладкам интерфейса или писать отдельные скрипты. Теперь LLM-агент может самостоятельно собирать и анализировать данные, что ускоряет подготовку отчётов и диагностику проблем. Сообщество положительно восприняло проект — код на GitHub уже собрал звёзды и обсуждения. Особенно ценным нововведением считается автоматический вход через Яндекс ID, который раньше требовал ручного ввода токена и клиентского секрета, теперь агент справляется с этим сам.
Подобные интеграции существуют для западных сервисов (Google Search Console через MCP), но для Яндекса это одна из первых реализаций. Отличительной особенностью является акцент на удобство модели: инструменты спроектированы так, чтобы минимум действий приходилось на выбор между похожими функциями. Например, в get_hosts явно указано вызывать его первым для получения корректного host_id, а recrawl_status возвращает остаток дневной квоты вместе со списком задач, чтобы модель оценивала затраты до отправки запроса. Эти решения, по словам автора, основаны на опыте предыдущего проекта для Метрики, где длинный список инструментов приводил к частым ошибкам выбора. В результате пользователь получает не просто API-обёртку, а адаптированное для LLM окно в данные поисковой консоли.
В планах автора — доработка кэширования user_id, которое может ломаться при смене токенов, а также поддержка дополнительных параметров и улучшение обработки ошибок. Проект развивается как open-source, поэтому сообщество может вносить свои улучшения. В перспективе такие MCP-серверы могут стать стандартом для интеграции любых API с LLM, снижая порог входа для автоматизации сложных рабочих процессов. Открытым остаётся вопрос массового распространения: хотя сервер уже работает, внедрение в корпоративные SEO-процессы потребует дополнительных настроек безопасности и тестирования. Тем не менее первые шаги сделаны, и теперь любой желающий может попробовать запустить агента, который сам ходит в поисковую консоль и приносит готовые ответы.