Model Context Protocol: Розбираємось, як це робить AI-агентів розумнішими (Інструкція від Кейсі Байта)
Привіт, друзі-гіки! Кейсі Байт тут, щоб розібрати ще одну гарячу тему, яка заполонила інтернет – Model Context Protocol, або просто MCP. Якщо ви, як і я, спочатку відчували легке замішання, не хвилюйтеся! У цій статті ми все розкладемо по поличках, як улюблену материнську плату. Тож, беріть свій улюблений напій, і поїхали!
Що таке Model Context Protocol і чому це важливо?
Уявіть, що у вас є супер-розумний помічник (наприклад, AI-агент), але він може виконувати завдання лише обмеженою кількістю інструментів. Раніше, щоб змусити його взаємодіяти з, наприклад, Gmail, Google Calendar, CRM-системою та безліччю баз даних, вам доводилося чітко прописувати кожну операцію, ресурс і схему. Звучить трохи складно, правда?
Ось тут і приходить на допомогу MCP. Це, по суті, проміжний шар між вашим AI-агентом і безліччю інструментів, з якими він хоче взаємодіяти. Він діє як універсальний перекладач, який бере запит від агента, збагачує його необхідною інформацією (ресурси, схеми, підказки тощо) і допомагає правильно використати потрібний інструмент.
Коротше кажучи, MCP робить AI-агентів набагато гнучкішими, потужнішими та інтелектуальнішими.
Як це працює: Покроковий розбір
Щоб краще зрозуміти, давайте розберемося з основними концепціями:
- Традиційний LLM (Large Language Model): У нас є вхідні дані (запитання, задача), LLM обробляє їх і надає відповідь у вигляді вихідних даних. Це як простий чат-бот.
- AI-агенти з інструментами: Тепер LLM може використовувати інструменти для виконання дій. Наприклад, він може не просто написати електронний лист, а й надіслати його за допомогою відповідного інструменту. Це вже набагато корисніше!
- Обмеження традиційних інструментів: Кожен інструмент має конкретну функцію, і всі параметри повинні бути жорстко запрограмовані. Це може бути незручним, коли потрібно взаємодіяти з багатьма різними сервісами.
- Вихід на сцену MCP: MCP server стає проміжним шаром між агентом та інструментами.
- Агент надсилає запит на MCP server (наприклад, Notion).
- MCP server надає інформацію про доступні інструменти, ресурси, схеми та підказки.
- Агент використовує цю інформацію, щоб правильно сформувати запит і виконати дію.
Приклад з життя: Надсилання електронних листів. Еволюція.
Давайте розглянемо приклад з надсиланням електронних листів, щоб проілюструвати переваги MCP.
- Раніше: Ми мали інструмент, який міг надсилати електронні листи. Щоб це зробити, ми повинні були вказати, кому, з якою темою, який тип листа і яке повідомлення. Це вимагало точного визначення операції (надсилання) та ресурсу (електронний лист).
- З MCP: Тепер агент надсилає запит на MCP server, наприклад, Gmail. MCP server повертає список доступних інструментів (наприклад, надсилання, отримання, маркування) з усіма необхідними параметрами. Це дозволяє агенту динамічно обирати та використовувати потрібний інструмент.
MCP як універсальний перекладач
Коли різні сервіси (наприклад, NN і Notion) спілкуються між собою, вони зазвичай використовують REST API – стандарт для обміну даними. Проблема в тому, що кожен сервіс може мати свій власний формат даних і методи конфігурації.
MCP діє як універсальний перекладач, який бере інформацію від LLM і збагачує її всім необхідним для взаємодії з потрібним інструментом:
- Правильна схема даних
- Заповнення потрібних параметрів
- Доступ до правильних ресурсів
Приклад: Notion як MCP сервер
Уявіть, що у вас є Notion з безліччю баз даних, кожна з яких має різні стовпці та сторінки. MCP server може надати вашому агенту інформацію про:
- Усі доступні бази даних
- Схеми кожної бази даних (імена та типи стовпців)
- Доступні дії (створення, оновлення, видалення)
З цією інформацією агент може розумно вирішити, яку базу даних і дію використовувати для виконання вашого запиту.
Архітектура “Головний агент – Дочірні агенти” як рання форма MCP
Пам’ятаєте концепцію “головного агента” з “дочірніми агентами”, кожен з яких спеціалізується на певній області (Gmail, Google Calendar, AirTable)? Цю архітектуру можна розглядати як ранню форму MCP.
Головний агент делегує завдання відповідному дочірньому агенту, який вже знає, як працювати зі своїми інструментами та параметрами.
Однак, є суттєва відмінність: Якщо Gmail додасть нову функціональність, потрібно вручну оновити код дочірнього агента. З MCP, оновлення відбувається на стороні MCP сервера, і агент автоматично дізнається про нові можливості.
MCP Protocol: Мова спілкування
MCP Protocol – це стандарт, який використовується для обміну даними між клієнтом (інтерфейсом, наприклад, NN, командний рядок) та MCP server.
Важливе застереження: Безпека
Якщо ви створюєте власний MCP server з доступом до всіх ваших ресурсів, схем і інструментів, необхідно пам’ятати про безпеку. Зловмисник, який отримає доступ до вашого MCP сервера, може отримати доступ до конфіденційної інформації.
Приклад з NN (n8n): AirTable агент
Раніше для взаємодії з AirTable потрібно було створювати багато різних інструментів (отримання записів, оновлення записів, створення записів тощо). Кожен інструмент мав свою власну операцію та параметри.
З MCP, AirTable агент може просто надсилати запит на AirTable MCP server та отримувати список доступних інструментів та їх схем. Це значно спрощує процес та зменшує кількість коду.
Агент використовує інформацію, отриману від AirTable MCP server, щоб обрати правильний інструмент (наприклад, пошук записів) і заповнити необхідні параметри (ідентифікатор бази даних, ідентифікатор таблиці, умови пошуку).
FireCrawl агент: Веб-скрейпінг з підтримкою MCP
Давайте розглянемо приклад FireCrawl агента, який використовує FireCrawl MCP server для веб-скрейпінгу.
- Запит до MCP сервера: Агент запитує MCP server про доступні інструменти.
- Отримання списку інструментів: MCP server повертає список доступних дій (скрейпінг, мапінг, краулінг тощо) з описами та схемами параметрів.
- Виконання завдання: Агент обирає інструмент (наприклад, “видобути”), заповнює необхідні параметри (наприклад, URL сайту, XPath) і виконує завдання.
У одному з експериментів, FireCrawl agent отримав завдання “витягнути назву програми лояльності з chipotle.com”. Спочатку агент спробував інструмент “FireCrawl extract”, але отримав помилку (неправильно заповнені параметри). Тоді агент спробував інструмент “FireCrawl scrape”, отримав весь код сторінки і, використовуючи свій “мозок”, самостійно знайшов назву програми лояльності (“Chipotle rewards”).
Цей приклад демонструє, як MCP дозволяє агентам бути більш адаптивними та самостійними.
Доступність MCP Node в n8n
Для тестування MCP node в NN, вам потрібно буде розгорнути власне self-hosted середовище, оскільки community nodes доступні лише в self-hosted версії.
Я залишу посилання в описі на документацію MCP node, а також список всіх доступних серверів, до яких можна підключитися.
Зачекайте… ще одна порада від Кейсі: Не всі сервери MCP сервери однозначно працюють “з коробки”. Перш ніж поринути у власний експеримент, варто перевірити з доступністю сервера.
Висновок: Майбутнє за MCP
Model Context Protocol – це значний крок вперед у розвитку AI-агентів. Він дозволяє їм бути більш гнучкими, потужними та інтелектуальними. З MCP агенти можуть легко взаємодіяти з безліччю різних сервісів та виконувати складні завдання.
Якщо ви хочете розширити можливості своїх AI-агентів, MCP – це те, на що варто звернути увагу.
Сподіваюся, ця стаття допомогла вам розібратися з Model Context Protocol. Якщо вам сподобалося, ставте лайк та підписуйтесь на канал!
І ще одне: Якщо вам цікаво, як розгорнути self-hosted середовище, встановити community node та підключитися до різних MCP серверів, дайте мені знати в коментарях! Я з радістю зніму відео на цю тему.
Дякую за перегляд! До зустрічі в наступному відео!