Головна / Статті

MCP, CLI та навички разом: стек підключення для агентів у продакшені.

Навички, CLI та MCP кожен вирішують різні проблеми з підключенням. Дізнайтеся, коли використовувати кожен з них, а також про прогресивне відкриття, режим коду та план розвитку MCP на 2026 рік.

Видавець: REACTAPP.TOP5 хв читання1106 слів

Джерела: How to Build Production-Ready AI Agents: MCP, CLI, and Skills — the Right Tool for the Right Job

Демонстраційні версії визначили 2024 рік, агенти для програмування — 2025 рік, а 2026 рік стане роком, коли агенти з загальними знаннями та здатністю до виконання завдань почнуть використовуватися в промислових умовах. За даними, протокол Model Context Protocol досяг приблизно 110 мільйонів щомісячних завантажень, досягнувши цього рубежу швидше, ніж React. Проте, оскільки агенти беруть на себе робочі процеси в корпораціях, які включають багато додатків типу SaaS та спільних дисків, постійно підкреслюється один момент: з’єднаність — це не щось єдине. Будь-хто, хто стверджує, що існує єдина відповідь, чи то використання комп’ютера, MCP чи командна лінія, перебільшує. Сильні агенти не обирають один із варіантів — вони використовують усю структуру з’єднаності одночасно.

Три шари

Навички, CLI та MCP кожен вирішують різну проблему та будуються по-різному.

  • Навички містять доменні знання. Це повторно використовувані процедурні інструкції, зазвичай у форматі файлів Markdown, які навчають модель використовувати інструменти. Вони передаються між клієнтами та забезпечують контекст, необхідний для виконання складних завдань. Їх пишуть люди або генерують агенти, і вони завантажуються з локальних каталогів, таких як .claude/skills/, або з віддалених репозиторіїв.
  • CLI, або використання комп’ютера, — це локальна обробка у стилі Unix. Він добре піддається комбінуванню, використовує мало токенів (близько 200 на відповідь) та користується перенавчанням моделі на інструментах на кшталт git, gh та curl. Інструменти CLI отримуються шляхом встановлення звичайних бінарних файлів за допомогою менеджера пакетів.
  • MCP — це з’єднувальна тканина. Він забезпечує розширену семантику, незалежність від платформи та корпоративні функції, такі як OAuth, політики управління та журнали аудиту. Сервер визначається у коді, наприклад server.py або server.ts, разом із інструментами, ресурсами та запитами, і використовує протокол JSON-RPC 2.0 через HTTP або SSE.
  • Коли MCP — правильний вибір

    Використовуйте MCP, коли вам потрібна розширена семантика, авторизація та незалежність від платформи. Він застосовує підхід, заснований на схемі, для вибору інструментів, з вбудованими механізмами управління та журналами аудиту. Вартістю є контекст: наївна налаштування, яка завантажує всі схеми інструментів заздалегідь, можуть спожити від 44 000 до 55 000 токенів, а кожна відповідь — це повний типований об’єкт JSON, що чудово підходить для програмного аналізу, але вимагає багато токенів.

    Для тих, хто пише сервери, рекомендація полягає у використанні описових імен функцій та параметрів, а також у додаванні до кожного параметра опису. Моделі працюють краще та швидше, коли точно знають, що від них очікується.

    # Annotated Tool Definitions
    from typing import Annotated
    from datetime import date
    from enum import Enum
    
    class Category(str, Enum):
        TRAVEL = "travel"
        MEALS = "meals"
        OFFICE = "office"
    
    def submit_expense(
        amount: Annotated[float, "The expense amount in USD"],
        date: Annotated[date, "Date of the expense in YYYY-MM-DD format"],
        category: Annotated[Category, "The expense category"]
    ) -> str:
        """Submits a new expense report for approval."""
        pass
    

    Коли CLI — правильний вибір

    Якщо інструмент вже є у даних попереднього навчання моделі, як-от Git чи GitHub CLI, виконання через командну лінію є дуже ефективним. Модель може поєднувати команди за допомогою трубок та перенаправлень та дешево обробляти помилки. Замість отримання величезного JSON-даного вона може фільтрувати його за допомогою jq та отримувати лише те, що їй потрібно — компактну відповідь приблизно з 200 токенів.

    Поступове відкриття

    Найбільшим покращенням для більшості агентів є поступове відкриття. Замість того, щоб завантажувати всі інструменти у вікно контексту, відкладіть завантаження до моменту, коли моделі дійсно вони знадобляться. Надайте їй можливість tool_search, щоб вона могла динамічно шукати інструменти, і використання контексту може зменшитися приблизно в п’ять разів.

    Програмні виклики інструментів

    Коли модель має координувати кілька інструментів, не змушуйте її викликати їх по черзі, адже кожен крок збільшує затримку обробки. Використовуйте програмні методи виклику інструментів, що також називаються режимом коду. Надайте REPL, такий як ізольоване середовище V8 або пісочниця Python, і дозвольте моделі написати скрипт, який об’єднує ці інструменти. Скрипт пишеться один раз та виконує всю послідовність операцій, що значно зменшує затримку.

    // Programmatic Tool Calling (Code Mode)
    // Instead of multiple sequential LLM turns, the model writes this script once:
    const issue = await mcp.call_tool("linear_get_issue", { id: "ENG-5121" });
    const prs = await mcp.call_tool("github_list_prs", { repo: "frontend" });
    
    // Use structured output to enforce types
    const expectedType = z.object({ title: z.string(), status: z.string() }).passthrough();
    const typedIssue = await extract("claude-haiku-4-5", expectedType, issue);py
    

    Створення для агентів

    Автори серверів повинні припинити пряме відповідність REST API та серверів MCP та з самого початку проектувати рішення для агентів. Допоможуть три звички: створюйте інструменти з чіткою метою, як інтерфейс для людини; робіть доступними середовища виконання, як це робить Cloudflare MCP, щоб моделі могли організовувати складні робочі процеси за допомогою коду; а також розробляйте додатки MCP: використовуйте семантику MCP для передачі ресурсів UI — HTML, JavaScript та CSS — через мережу, щоб сервер міг відображати власний інтерфейс у клієнті.

    Що чекає MCP

    Екосистема швидко розвивається, щоб задовольнити потреби корпорацій та забезпечити масштабування, і план на 2026 рік включає три основні напрямки.

    • Кращий ядро: новий безстановий механізм передачі даних, запропонований Google, має полегшити розгортання серверів MCP на Kubernetes та Cloud Run; також очікуються версії 2.0 SDK для TypeScript та Python.
    • Інтеграція всюди: функція Cross-App Access дозволить здійснювати одноразове входження на сервери MCP через постачальника ідентичності компанії, а сервери можна буде автоматично знаходити за допомогою файлу у .well-known/mcp-server-card/server.json.
    • Поза межами поточних можливостей: технологія Skills over MCP дозволить серверам передавати доменні знання разом із їхніми інструментами через кінцеві точки skills/list та skills/get.

    Вибір серед них

    Рішення залежить від контексту та вимог: MCP — коли потрібен контроль та розширені семантики; CLI — коли модель вже знає інструмент та важливі токени; Skills — для надання процедурних знань, які їх об’єднують.

    Висновки

    Жоден інструмент не є беззаперечно кращим, і представлення MCP як альтернативи CLI ухиляється від суті проблеми. Для продакшн-агентів потрібні кілька рівнів інтеграції. Критика MCP — а саме надмірне використання токенів, проблеми з автентифікацією та нерівномірна якість серверів — вказує на реальні проблеми, але це інженерні проблеми, які можна вирішити, і екосистема вже адаптується. Функції поступового відкриття та режим коду допомагають зменшити кількість токенів та затримки, тож стандарт можна налаштовувати, а не відкидати. Відмова від MCP в корпоративних проектах призводить до ще гірших проблем: фрагментованої автентифікації, відсутності журналу аудиту та залежності від постачальника. Очікуйте, що найсильніші агенти будуть поєднувати функції Skills для отримання знань, MCP для контрольованих з’єднань та CLI для дешевої локальної обробки.