C каждой розетки про MCP, но давайте по-человечески

от автора

Предыстория: Последние месяцы Model Context Protocol (MCP) — буквально из каждого утюга. YouTube, Twitter, конференции, документации — все жужжат:

«MCP это прорыв»,
«Новый стандарт дебага»,
«Интеграция AI в тесты нового поколения»…

Звучит круто. Но, как часто бывает, всё сложно, перегружено и на птичьем языке. Я решил подойти с другой стороны. Это не мой, это ответ GPT, на понятном языке и с небольшими правками с моей стороны. Без заумных фраз, зато с примерами, мясом и аналогиями. Запрос был простым:

  • Объясни по-пацански, что это вообще такое?

  • Как это реально помогает, а не просто выглядит модно?

  • Зачем это мне, если я просто хочу понять, почему упал тест?

🧁 Кому пирожочек, кому по шансончику

Вот кстати лайфхак, если ты хочешь реально врубиться в сложную тему:

Попроси объяснить её «по-пацански» или «как бабуля объясняет своему сладкому пирожочку» — кому как ближе.

Так и выходит честный и внятный разбор. Такой, где ты понимаешь не только «что», но и «зачем».

Ну а теперь давайте посмотрим, что же это за зверь такой — MCP и почему без него ИИ дебаг — как слепой с гранатой.

👇 Поехали.

С русским у ИИ всё ещё плоховато ;)

С русским у ИИ всё ещё плоховато 😉

Окей, брат, ща объясню по-простому, как для своих. Надеюсь ты в теме Playwright, автотесты, дебаг — так что давай разберёмся, что такое Model Context Protocol (MCP) и зачем он нужен.

💡 Что такое Model Context Protocol?

Представь: у тебя есть тест, он падает, и ты такой: «Ёпт, что опять не так? Почему?»

Вот тут и врывается Model Context Protocol — это такая протуха (или протокол, если по-серьёзке), которая позволяет LLM (типа GPT) лучше понять контекст упавшего теста:

  • какие были шаги,

  • какие селекторы,

  • какие логи,

  • какой был HTML,

  • какая ошибка.

🔧 MCP — это способ передать ИИ всё мясо, а не только кость.

Ты ж не дашь другу чинить движок, если он даже не знает, что за машина, да? Так и тут: MCP помогает дать ИИ полный расклад, чтобы он нормально помог.

📦 Пример: без MCP и с MCP

🚫 Без MCP: Ты кидаешь в GPT вот это:

Error: Timeout 30000ms exceeded. waiting for selector "#submit-btn" 

GPT такой: «Ну… может кнопка не появилась… проверь таймаут».
— Пацанский ответ, но поверхностный.

✅ С MCP GPT получает:

{   "selector": "#submit-btn",   "action": "click",   "htmlSnapshot": "<div><button id='submit-btn' disabled>Send</button></div>",   "logs": ["click intercepted by disabled button"],   "testTitle": "should submit the form",   "location": "tests/form.spec.ts:23" } 

GPT: «Братан, кнопка-то есть, но disabled. Надо дождаться, когда она станет активной. Проверь, может данные формы невалидны.»

Вот это уже умная помощь, а не гадание.

🧠 MCP ≠ магия, MCP = структура

Это просто формат, как упаковать и передать инфу об окружении теста:

  • DOM

  • ошибки

  • события

  • шаги теста

  • параметры вызова

🤖 Где это юзается?

  • Microsoft Playwright MCP — это официальная реализация этого протокола.

  • Скоро будет использоваться в тулзах типа playwright-ai-auto-debug — (пока только в PR висит).

  • Используется в плагинах, чтобы ИИ шарил, что реально произошло, а не гадал на кофейной гуще.

🛠 Пример из реального дебага

Ты вызываешь:

await page.click('#submit-btn'); 

Получаешь ошибку:

TimeoutError: waiting for selector "#submit-btn" 

А в MCP улетает:

{   "selector": "#submit-btn",   "action": "click",   "pageContent": "...",   "trace": "...",   "playwrightVersion": "1.43.1",   "screenshot": "base64image",   "logs": [     "selector matched 0 elements",     "DOM mutated",     "navigation happened"   ] } 

ИИ теперь говорит:
👉 «Элемент был, но пропал после навигации — тебе надо подождать navigation или использовать waitForSelector заново.»

🧢 Итого по-пацански:

MCP — это…

По-простому

Протокол передачи инфы для LLM

«Брат, вот тебе все улики, разбери»

Помогает ИИ реально дебажить

Не просто советы, а по факту

Структурный формат

Типа как .har, но для Playwright + тестов

Основа умного авто-дебага

Без него GPT как слепой котёнок

📌 Подписывайтесь на мой Telegram-канал про тестирование, AI и IT в целом! — там делюсь мыслями, новостями и практическими примерами из жизни!


ссылка на оригинал статьи https://habr.com/ru/articles/920882/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *