MikroTik MCP
MCP-сервер для роутеров MikroTik: агент читает и меняет конфигурацию RouterOS по SSH по запросу из чата
- 309 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Агент меняет конфигурацию роутера: правила файрвола и NAT, пользователей, VLAN, маршруты
- Логин и пароль от SSH хранятся в переменных окружения или конфиге клиента
- В HTTP-режиме сервер по умолчанию слушает все интерфейсы, доступ ограничивают параметром allowed-ips
Установка
- Работает в
Ручная установка
claude mcp add io.github.wiresage/mikrotik-mcpКлиент установит mcp-server-mikrotik из PyPI и запросит MIKROTIK_HOST, MIKROTIK_USERNAME, MIKROTIK_PASSWORD.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Агент меняет конфигурацию роутера: правила файрвола и NAT, пользователей, VLAN, маршруты
- Логин и пароль от SSH хранятся в переменных окружения или конфиге клиента
- В HTTP-режиме сервер по умолчанию слушает все интерфейсы, доступ ограничивают параметром allowed-ips
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
MikroTik MCP связывает ИИ-агента с устройствами на RouterOS. Агент получает 162 инструмента почти для всех разделов RouterOS, от VLAN и файрвола до WireGuard и PoE. К роутеру сервер подключается по SSH. С версии 0.14.0 сервер работает с парком устройств: роутеры описываются в файле инвентаря, и агент выбирает нужный по названию, региону или тегу. Запустить сервер можно в режиме stdio для редактора либо как HTTP-сервер в контейнере Docker. Для осторожной работы есть режим только чтения, который оставляет инструменты без записи. Флаг `--sensitive-hiding` скрывает пароли и ключи в ответах инструментов.
Для кого. Для сетевых администраторов и инженеров, которые ведут роутеры MikroTik и хотят отдать агенту рутину и разбор конфигурации.
Подходит, если
- Нужно создать VLAN и пул DHCP на роутере одной фразой, не вспоминая синтаксис RouterOS
- Надо просмотреть правила файрвола и NAT и найти дублирующиеся или лишние
- Вы ведете парк роутеров в общем файле инвентаря и хотите сравнивать настройки устройств между собой
- Клиенту нужен конфиг WireGuard, и агент должен выпустить его инструментом generate_wireguard_client_config
- Нужен регулярный аудит конфигурации: агент сравнивает текущие правила с ожидаемыми и сообщает о расхождениях
Не подходит, если
- Нужна жесткая защита от записи: режим только чтения убирает инструменты записи лишь из списка, настоящее ограничение дает учетная запись RouterOS с минимальными правами
- Вы работаете с моделью с окном в 32 тысячи токенов: схемы 162 инструментов не поместятся без сокращения
- К устройству нельзя подключиться по SSH: сервер ходит на роутер только этим путем
- В парке другое сетевое оборудование: сервер написан только под MikroTik и RouterOS
Пример запроса к агенту
Покажи правила файрвола на роутере и найди дублирующиеся, ничего не меняйMCP
- Транспорт
- stdio, http, sse
- Авторизация
- ключ необязателен
Переменные окружения
MIKROTIK_HOSTобязательная- Адрес роутера, по умолчанию 192.168.88.1
MIKROTIK_USERNAMEобязательная- Пользователь SSH на роутере
MIKROTIK_PASSWORDсекрет- Пароль SSH, вместо него можно дать ключ через --key-filename
MIKROTIK_READ_ONLY- Значение true оставляет только инструменты без записи
Ограничения
Нужны Python 3.10 или новее, доступ к устройству по SSH и учетная запись на роутере. Флаг `--sensitive-hiding` скрывает известные пароли и ключи, но произвольные секреты в свободном тексте логов и комментариев не находит. С этим флагом отключаются инструменты download_file и generate_wireguard_client_config. Журнала для отката сервер не ведет: то, что агент записал в RouterOS, возвращают вручную или из резервной копии. Готовый образ Docker собран для linux/amd64 и linux/arm64.
Как отключить. Уберите запись сервера из конфигурации MCP-клиента и остановите контейнер, если запускали Docker. Изменения, которые агент уже внес, останутся на роутере.
Частые вопросы
Как подключить роутер MikroTik к Claude Code?
Выполните `claude mcp add io.github.wiresage/mikrotik-mcp`. Клиент возьмет описание сервера из реестра MCP, поставит пакет mcp-server-mikrotik из PyPI и спросит MIKROTIK_HOST, MIKROTIK_USERNAME и MIKROTIK_PASSWORD.
Как дать агенту доступ к роутеру только на чтение?
Запустите сервер с флагом `--read-only` или задайте MIKROTIK_READ_ONLY=true: в списке останутся инструменты, которые не меняют RouterOS и файлы. Автор советует дополнительно создать на роутере учетную запись с минимальными правами, потому что фильтр действует только на уровне списка инструментов.
Можно ли управлять несколькими роутерами сразу?
Да, опишите устройства в YAML-файле инвентаря: название, host, port, username, пароль или key_filename, регион и теги. Путь к файлу передает переменная MIKROTIK_INVENTORY_FILE, а в Docker файл монтируют как том, и пароли не попадают в docker inspect.
Как запустить MikroTik MCP в Docker?
Скачайте образ `docker pull ghcr.io/wiresage/mikrotik-mcp:latest`. Для редактора запускайте его с флагами `--rm -i` и переменными MIKROTIK_*. Для сетевого доступа задайте MIKROTIK_MCP__TRANSPORT=streamable-http, адрес будет http://localhost:8000/mcp, а проверка состояния отвечает на GET /health.
Почему MikroTik MCP съедает так много контекста?
Сервер отдает 162 инструмента. Автор сократил описания в среднем с 209 до 51 символа и добавил короткие названия, но схемы все равно занимают около 48 тысяч токенов. Если нужна часть возможностей, в файле app.py можно закомментировать импорты ненужных разделов.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыkeenetic-mcp — управление роутером Keenetic
keenetic-mcp
MCP-сервер для роутеров Keenetic: агент смотрит устройства и Wi-Fi, меняет правила через API RCI и ничего не ставит на сам роутер
MCP-сервер для диагностики Linux: ИИ-клиент читает службы, журналы и сеть локальных и удаленных систем без права записи
SSH MCP Server (classfang) — команды на сервере по SSH
SSH MCP Server (classfang)
MCP-сервер для SSH: агент выполняет команды, читает и пишет файлы по SFTP, передает файлы и запускает долгие задачи, а пароли остаются у вас
Самостоятельно размещаемый MCP-сервер для выполнения команд на удаленных серверах по SSH с токенами и ролями
Tmux MCP Server — доступ агента к сессиям tmux
Tmux MCP Server
MCP-сервер, через который агент читает панели tmux, запускает в них команды и создает сессии, а вы видите вывод
Защищенный MCP-рантайм, через который агент управляет локальными машинами, серверами и контейнерами
Коротко о README
Главная страница коротко описывает проект и показывает три демо-видео: Claude Desktop, MCP Inspector и инвентарь устройств. Установка, справочник по разделам RouterOS и примеры вынесены в документацию в папке docs и на сайт проекта.