ИИ-агенты 05.06.2026 23 просмотров

Model Context Protocol (MCP): стандарт инструментов для ИИ-агентов

#mcp #anthropic #ii-агенты #tools #архитектура
Model Context Protocol (MCP): стандарт инструментов для ИИ-агентов
Model Context Protocol (MCP): как подключить GitHub, БД и API к Claude и другим LLM. Архитектура MCP-серверов для AI-агентов в 2026.

Model Context Protocol (MCP) — открытый стандарт Anthropic (2024–2026), который стал de facto способом подключать ИИ-агентов к внешним системам. Если раньше каждый фреймворк изобретал свой формат tools, MCP даёт единый «USB-C для агентов»: один протокол — сотни готовых интеграций.

Запросы «ai агенты» (10 791) и «система ии агентов» (550) всё чаще упираются в интеграции. MCP — главный тренд prod-архитектуры 2026.

Проблема до MCP

Подход Минус
Custom REST wrapper на каждый сервис N интеграций × M моделей
Function calling только OpenAI Vendor lock-in
LangChain tools Привязка к экосистеме
n8n HTTP nodes Нет стандартного discovery ресурсов

MCP разделяет хост (Claude Desktop, Cursor, custom agent) и MCP-сервер (GitHub, Postgres, Slack, filesystem).

Архитектура MCP

┌─────────────┐     JSON-RPC      ┌──────────────┐
│  MCP Host   │ ◄──────────────► │ MCP Server   │
│ (LLM agent) │   stdio / SSE    │ (GitHub API) │
└─────────────┘                  └──────────────┘
       │
       ▼
   Claude / GPT / local LLM

MCP Host — приложение с моделью: Claude Desktop, IDE, ваш Python-агент.

MCP Server — процесс, который экспонирует:
- Tools — функции (create_issue, run_query)
- Resources — читаемые данные (file://, db://schema)
- Prompts — шаблоны промптов

Транспорт: stdio (локально) или SSE over HTTP (удалённо).

Быстрый старт: MCP + Claude Desktop

  1. Установите Claude Desktop
  2. Добавьте сервер в claude_desktop_config.json:
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/project"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_..." }
    }
  }
}
  1. Перезапустите Claude — агент видит tools и resources автоматически.

MCP-сервер для своего API (Python)

Минимальный сервер на официальном SDK:

from mcp.server import Server
from mcp.server.stdio import stdio_server
import mcp.types as types

app = Server("crm-mcp")

@app.list_tools()
async def list_tools():
    return [types.Tool(
        name="get_deal",
        description="Получить сделку по ID из CRM",
        inputSchema={
            "type": "object",
            "properties": {"deal_id": {"type": "string"}},
            "required": ["deal_id"]
        }
    )]

@app.call_tool()
async def call_tool(name: str, arguments: dict):
    if name == "get_deal":
        deal = await crm.fetch(arguments["deal_id"])
        return [types.TextContent(type="text", text=str(deal))]
    raise ValueError(f"Unknown tool: {name}")

async def main():
    async with stdio_server() as (read, write):
        await app.run(read, write, app.create_initialization_options())

if __name__ == "__main__":
    import asyncio
    asyncio.run(main())

Агент на LangGraph или OpenAI Agents SDK подключает тот же MCP-сервер — переиспользование без переписывания tools.

Популярные MCP-серверы (2026)

Сервер Назначение
@modelcontextprotocol/server-github Issues, PR, repos
@modelcontextprotocol/server-postgres SQL read/write
@modelcontextprotocol/server-slack Каналы, сообщения
@modelcontextprotocol/server-puppeteer Browser automation
mcp-server-fetch HTTP + парсинг
Custom n8n MCP Workflow как tool

Сравнение с Tool Use в Claude: MCP — уровень инфраструктуры, tool use — вызов на стороне модели.

MCP vs Google A2A vs Function Calling

MCP A2A (Google) Function Calling
Уровень Host ↔ Server Agent ↔ Agent Model ↔ Function
Стандарт Anthropic, open Google 2025 OpenAI / все
Discovery list_tools, resources Agent cards JSON schema
Мультиагент Через несколько hosts Нативно Оркестратор

В prod часто комбинируют: MCP для data plane, A2A или supervisor для multi-agent, function calling внутри одного агента.

Безопасность MCP

  • MCP-сервер работает с правами процесса — изолировать в контейнере
  • Токены только через env, не в промпте
  • Whitelist tools на host: не отдавать run_shell без sandbox
  • Аудит: логировать каждый call_tool

Подробнее про атаки: prompt injection в продакшене.

MCP + n8n + локальный LLM

Связка для self-hosted:
1. Ollama — модель (Ollama + n8n)
2. MCP-сервер Postgres / REST
3. n8n как orchestrator или custom host

Запрос «n8n агенты» (759) — n8n в 2026 добавляет AI Agent nodes с поддержкой внешних tool providers; MCP ускоряет подключение CRM и GitHub без кастомных HTTP nodes на каждый endpoint.

Когда MCP не нужен

  • Один HTTP API и GPT — хватит Function Calling
  • Простой FAQ-бот без tools
  • Жёсткий serverless без long-running MCP process → используйте SSE MCP или прямые API

Roadmap внедрения

  1. Неделя 1: filesystem + GitHub MCP в Claude Desktop — оценить UX
  2. Неделя 2: свой MCP-сервер для 3–5 CRM/API методов
  3. Неделя 3: подключить host в LangGraph / OpenAI Agents SDK
  4. Неделя 4: мониторинг, rate limits, observability

Вывод

MCP — ключевой тренд для систем ии агентов в 2026: стандартизирует tools и resources, снижает стоимость интеграций. Если строите prod-платформу агентов — закладывайте MCP-слой до N-го кастомного коннектора.

Смотрите также:
- LangGraph: многошаговые агенты
- OpenAI Agents SDK 2026

Полезные материалы по теме