mikrotik-mcp

mikrotik-mcp

jeff-nasseriMIT
191 звёзд43 форков
MikroTik MCP — это сервер для интеграции AI-ассистентов с роутерами MikroTik. Он подключается к устройству по SSH и позволяет управлять RouterOS через команды на естественном языке. Вам не нужно помнить синтаксис RouterOS — просто опишите задачу, и сервер выполнит нужные действия. Сервер особенно полезен сетевым инженерам и DevOps, которые хотят автоматизировать рутинные задачи: настройку VLAN, управление файрволом, изменение DNS и DHCP, организацию VPN-туннелей WireGuard. MikroTik MCP работает через протокол MCP (Model Context Protocol), поэтому совместим с Claude Desktop и другими MCP-клиентами. Решение основано на официальном SDK и активно развивается: на GitHub вас встречает 191 звезда и полная документация.

Установка

uvx mcp-server-mikrotik

Характеристики

Общее

  • СтатусСообщество
  • Разработчикjeff-nasseri
  • ЛицензияMIT

Технологии

  • Языки
    Python
  • Транспорт
    stdio

Описание

Возможности

  • Управление правилами файрвола: создание, редактирование и удаление фильтров, NAT и Mangle
  • Настройка VLAN на интерфейсах: добавление, изменение тегов, привязка к подсетям
  • Управление DHCP-сервером и клиентом: создание пулов, аренда адресов, статические назначения
  • Конфигурация DNS: настройка статических записей, кэширование, пересылка запросов
  • Работа с WireGuard: создание интерфейсов, добавление пиров, управление маршрутами
  • Настройка маршрутизации: добавление статических маршрутов, изменение таблиц маршрутизации
  • Управление интерфейсами: включение/отключение, настройка IP-адресов, бриджи
  • Управление ARP-таблицей и статическими ARP-записями
  • Настройка базовых параметров системы: идентификация, NTP, логирование
  • Выполнение произвольных RouterOS команд через SSH
  • Просмотр состояния системы: uptime, ресурсы, активные соединения

Как подключить

Установите сервер с помощью uvx (входит в состав инструментария uv для Python):

uvx mcp-server-mikrotik

Затем добавьте конфигурацию в MCP-клиент. Пример для Claude Desktop:

{ "mcpServers": { "mikrotik-mcp": { "command": "uvx", "args": ["mcp-server-mikrotik"], "env": { "MIKROTIK_HOST": "192.168.88.1", "MIKROTIK_USERNAME": "admin", "MIKROTIK_PASSWORD": "ваш_пароль", "MIKROTIK_PORT": "22" } } } }

Если вы используете SSH-ключи, можно указать путь к приватному ключу через переменную MIKROTIK_PRIVATE_KEY_PATH. Перезапустите клиент — теперь он может управлять вашим MikroTik.

Примеры запросов

  • «Создай VLAN 100 на интерфейсе bridge и назначь ему IP 10.0.100.1/24»
  • «Добавь правило файрвола, которое разрешает трафик на порт 443 из подсети 10.0.0.0/16»
  • «Покажи все активные DHCP-аренды на роутере»
  • «Настрой WireGuard-интерфейс wg0 с портом 51820 и добавь пира с публичным ключом»
  • «Установи статический маршрут до 10.10.10.0/24 через шлюз 192.168.1.1»

Технические детали

  • Язык программирования: Python
  • Транспорт: stdio
  • Лицензия: MIT
  • Совместимые клиенты: Claude Desktop, MCP Inspector, любые MCP-клиенты с поддержкой stdio-транспорта
  • Разработчик: jeff-nasseri
  • Репозиторий: GitHub — jeff-nasseri/mikrotik-mcp
  • Документация: mikrotik-mcp.com

Поделиться