Skip to main content
Glama

network-mcp

Автономный HTTP MCP-сервер для управления домашней сетью через UniFi Dream Machine.

Текущая реализация контроллера использует локальный API пользовательского интерфейса/контроллера UniFi Network, поскольку он поддерживает прямое поведение блокировки клиентов, необходимое для управления устройствами по текстовым именам. Остальная часть приложения зависит от небольшого интерфейса NetworkController, чтобы его можно было заменить или дополнить официальным UniFi Network API позже.

Установка

bun install
cp .env.example .env
bun run start

По умолчанию сервис прослушивает адрес 127.0.0.1:4123.

Related MCP server: Unifi AP MCP

Docker

Для размещённой/домашней настройки запустите его с помощью Docker Compose:

cp .env.example .env
docker compose up -d --build

Файл compose привязывает сервис к 0.0.0.0 внутри контейнера, публикует его только на loopback-интерфейсе хоста по адресу 127.0.0.1:4123 и сохраняет данные LowDB в ./data.

Пересоберите/перезапустите после изменений кода:

docker compose up -d --build

Просмотр журналов:

docker compose logs -f network-mcp

Журналы выводятся в формате JSON в stdout с помощью Winston. Установите LOG_LEVEL=debug, чтобы включить тайминги запросов UniFi и диагностику MCP-запросов.

Конечные точки

  • GET /health

  • POST /mcp

  • GET /mcp

  • DELETE /mcp

Если задан MCP_AUTH_TOKEN, для /mcp требуется:

Authorization: Bearer <token>

Конфигурация OpenCode

Добавьте удалённый MCP-сервер в /home/zac/.config/opencode/opencode.json:

{
  "mcp": {
    "home-network": {
      "type": "remote",
      "url": "http://127.0.0.1:4123/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:HOME_NETWORK_MCP_TOKEN}"
      }
    }
  }
}

Перезапустите размещённый сервис OpenCode после изменения конфигурации MCP.

Инструменты

  • list_clients

  • find_device

  • add_tag

  • remove_tag

  • list_tags

  • add_displayname

  • block_device

  • unblock_device

  • block_by_tag

  • unblock_by_tag

  • show_blocked

  • unblock_all

  • recent_actions

MAC-адреса являются каноническим ключом устройства. Теги и отображаемые имена хранятся локально в LowDB по пути DB_PATH.

Related MCP Connectors

Related MCP Servers