Model Context ProtocolAnthropic SpecProduction-ready

Интеграция с Model Context Protocol (MCP)

Стандартизированное подключение языковых моделей (LLM), агентных сред (Claude Desktop, Cursor, OpenCode) к инструментам и рабочему пространству CRM Aitomaton.

1. Архитектура MCP-сервера платформы

Model Context Protocol — открытый протокол взаимодействия между большими языковыми моделями и корпоративными источниками данных. Платформа Aitomaton предоставляет встроенный MCP-сервер, позволяющий внешним ИИ-агентам безопасно читать контекст компании и выполнять действия по поручению пользователя:

Эндпоинт сервера:https://aitomaton.online/api/assistant/mcp
Протокол транспорта:JSON-RPC 2.0 (SSE + HTTP POST)
Безопасность:RBAC (ролевой доступ ядра Door v1)

2. Каталог доступных инструментов (Tools)

Каждый инструмент строго типизирован и сопровождается JSON Schema с описанием параметров:

crm_create_dealWrite

Создание сделки в CRM с привязкой к клиенту, воронке и сумме заказа.

Параметры: title (string), client_id (uuid), amount (number, optional), stage (string, optional)
crm_find_clientRead

Поиск карточки клиента по номеру телефона, имени или email в базе компании.

Параметры: query (string, min: 2 chars)
crm_book_slotWrite

Запись клиента к мастеру или специалисту в свободный слот календаря.

Параметры: resource_id (uuid), service_id (uuid), client_id (uuid), slot_start (ISO 8601)
crm_send_messageAction

Отправка сообщения клиенту через официальный канал WhatsApp Business API или Telegram.

Параметры: chat_id (uuid), text (string)
crm_query_dataRead

Выполнение структурированных запросов к таблицам данных компании (Door v1 Select).

Параметры: table (string), select (string[]), where (filter object)

3. Подключение в клиентские среды разработчика

Выберите вашу среду разработки или ИИ-ассистента для просмотра готового конфигурационного файла:

Конфигурация MCP клиентов
{
  "mcpServers": {
    "aitomaton": {
      "command": "npx",
      "args": [
        "-y",
        "@aitomaton/mcp-bridge",
        "--endpoint=https://aitomaton.online/api/assistant/mcp",
        "--api-key=ВАШ_КЛЮЧ_ДОСТУПА_CRM"
      ]
    }
  }
}
{
  "mcpServers": {
    "aitomaton-crm": {
      "url": "https://aitomaton.online/api/assistant/mcp",
      "headers": {
        "Authorization": "Bearer ВАШ_КЛЮЧ_ДОСТУПА_CRM"
      }
    }
  }
}
{
  "mcp": {
    "servers": {
      "crm": {
        "type": "sse",
        "url": "https://aitomaton.online/api/assistant/mcp",
        "env": {
          "CRM_API_KEY": "ВАШ_КЛЮЧ_ДОСТУПА_CRM"
        }
      }
    }
  }
}

4. Программное подключение через SDK

Официальные библиотеки mcp для Python и TypeScript позволяют встроить инструменты Aitomaton в ваши собственные автономные ИИ-агенты:

MCP SDK примеры
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

# Подключение к сессии MCP сервера Aitomaton
async def run_crm_agent():
    server_params = StdioServerParameters(
        command="npx",
        args=[
            "-y",
            "@aitomaton/mcp-bridge",
            "--endpoint=https://aitomaton.online/api/assistant/mcp",
            "--api-key=ВАШ_КЛЮЧ_CRM"
        ]
    )
    
    async with stdio_client(server_params) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()
            
            # Получение списка инструментов
            tools = await session.list_tools()
            print("Доступные CRM-инструменты:", [t.name for t in tools.tools])
            
            # Вызов инструмента создания сделки
            result = await session.call_tool("crm_create_deal", {
                "title": "Сделка от ИИ-агента",
                "client_phone": "+7 701 555 12 34",
                "amount": 250000
            })
            print("Результат выполнения:", result.content)
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";

const transport = new SSEClientTransport(
  new URL("https://aitomaton.online/api/assistant/mcp"),
  {
    headers: {
      Authorization: "Bearer ВАШ_КЛЮЧ_CRM"
    }
  }
);

const client = new Client(
  { name: "aitomaton-node-agent", version: "1.0.0" },
  { capabilities: { tools: {} } }
);

await client.connect(transport);
const tools = await client.listTools();
console.log("Инструменты ядра Aitomaton:", tools.tools.map(t => t.name));

const deal = await client.callTool({
  name: "crm_create_deal",
  arguments: {
    title: "Консультация по телефонии",
    client_phone: "+7 702 888 99 00"
  }
});
console.log("Сделка создана:", deal);

5. Протокол обмена (Wire Protocol JSON-RPC 2.0)

Для низкоуровневых интеграций сервер обменивается стандартными сообщениями JSON-RPC 2.0:

JSON-RPC 2.0 wire format
{
  "jsonrpc": "2.0",
  "id": "req-001",
  "method": "tools/call",
  "params": {
    "name": "crm_find_client",
    "arguments": {
      "query": "+7 701 555 12 34"
    }
  }
}
{
  "jsonrpc": "2.0",
  "id": "req-001",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"id\":\"01a1c240-b87f-716c\",\"name\":\"Алихан Смаилов\",\"phone\":\"+77015551234\",\"deals_count\":1}"
      }
    ]
  }
}