#1664: Подключение функций Swarmica к LLM с помощью MCP

Отредактирована: сегодня

Симптомы

  • Можно ли подключить Swarmica как MCP сервер?
  • Можно ли научить нашу ИИ-модель (LLM) работать со Swarmica?

Решение

Да, Swarmica построена по API-first подходу, поэтому практически все операции, которые возможно выполнять через графический интерфейс можно делегировать ИИ-моделям, которые умеют работать с MCP-инструментами.

Для вашего удобства, мы предоставляем официальный MCP сервер, делающий доступными все операции, кроме операций удаления сущностей, доступными по MCP протоколу.

Чтобы использовать официальный MCP сервер, выполните следующие шаги:

  1. Зайдите на сервер, где установлена Swarmica под учетной записью с правами root и зайдите в папку, где установлено ПО:
    cd /root/swarmica
    
  2. В файле /root/swarmica/.env удостоверьтесь, что есть переменная SW_MCP_VERSION=main
  3. Создайте резервную копию файла /root/swarmica/docker-compose.yml:
    cp docker-compose.yml{,.backup}
    
  4. С помощью текстового редактора откройте этот файл и в раздел services добавьте mcp:
      mcp:
        image: reg.gl.swd.im/swarmica/mcp:${SW_MCP_VERSION}
        restart: always
        depends_on:
         - django
        env_file:
         - .env
        labels:
          - "traefik.enable=true"
          - "traefik.http.services.mcp.loadbalancer.server.port=8001"
          - "traefik.http.routers.mcp-router.rule=Host(`${SW_HOSTNAME}`)&&PathPrefix(`/mcp`)"
          - "traefik.http.routers.mcp-router.priority=20"
          - "traefik.http.routers.mcp-router.entrypoints=web-secure"
          - "traefik.http.routers.mcp-router.middlewares=secure-headers,compression"
          - "traefik.http.routers.mcp-router.service=mcp"
          - "traefik.http.routers.mcp-router.tls.certresolver=letsencrypt"  
    
    Если у вас используется установка за балансировщиком, терминирующим HTTPS соединение, используйте следующие настройки:
      mcp:
        image: reg.gl.swd.im/swarmica/mcp:${SW_MCP_VERSION}
        restart: always
        depends_on:
         - django
        env_file:
         - .env
        labels:
          - "traefik.enable=true"
          - "traefik.http.services.mcp.loadbalancer.server.port=8001"
          - "traefik.http.routers.mcp-router.rule=Host(`${SW_HOSTNAME}`)&&PathPrefix(`/mcp`)"
          - "traefik.http.routers.mcp-router.priority=20"
          - "traefik.http.routers.mcp-router.entrypoints=web"
          - "traefik.http.routers.mcp-router.middlewares=compression"
          - "traefik.http.routers.mcp-router.service=mcp"
    
  5. Скачайте образы контейнеров и запустите сервис:
    docker compose pull
    docker compose up -d
    

Теперь по адресу https://ваш_адрес_swarmica/mcp будет доступен инструментарий MCP для подключения к вашей LLM.

Подключение Swarmica MCP к LLM

Данный MCP можно подключить к ИИ, поддерживающим подключение внешних инструментов по протоколу MCP.

Чтобы использовать доступные API с нужным уровнем привилегий, необходимо создать API токен в разделе Настройки > Интеграции > API и интеграции > + Создать новый:

  • Для всех операций - с ролью "Администратор"
  • Для всех операций, за исключением выполнения настроек - с ролью "Менеджер"
  • Для операций уровня "Агент поддержки" - с ролью "Агент"
  • Для read-only операций - с ролью "Сотрудник"

Инструкции для различных ИИ-инструментов:

  1. Подключение Swarmica MCP к Claude
  2. Подключение Swarmica MCP к Yandex GPT
  3. Подключение Swarmica MCP к Deepseek

Что такое MCP?

MCP (Model Context Protocol) – это протокол расширения контекста для больших языковых моделей ИИ (LLM), который помогает им "научиться" дополнительным операциям.