Flux MCP Server
MCP-сервер Flux CD из проекта Flux Operator: агент разбирает сбои выкаток в Kubernetes, сравнивает кластеры и по запросу применяет манифесты
- 783 ★ репозитория
- Последний коммит
- AGPL-3.0
Широкий доступ
Почему такой уровень
- Инструменты применяют манифесты, патчат и удаляют ресурсы кластера, если сервер запущен без режима только для чтения
- Сервер работает с правами из вашего kubeconfig и читает логи и метрики рабочих нагрузок
- Без маскирования значения секретов Kubernetes попадают ассистенту и его модели
Установка
- Работает в
Ручная установка
brew install controlplaneio-fluxcd/tap/flux-operator-mcpДругие способы установки описаны в руководстве на сайте проекта. Нужен рабочий kubeconfig кластера с Flux.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Инструменты применяют манифесты, патчат и удаляют ресурсы кластера, если сервер запущен без режима только для чтения
- Сервер работает с правами из вашего kubeconfig и читает логи и метрики рабочих нагрузок
- Без маскирования значения секретов Kubernetes попадают ассистенту и его модели
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Flux MCP Server — MCP-сервер, который подключает ИИ-агента к кластеру Kubernetes с Flux CD и Flux Operator. Вместо ручных команд kubectl и flux агент вызывает инструменты сервера: смотрит версию и состояние установки Flux, читает ресурсы вместе с событиями и условиями готовности, берет логи подов и метрики, проходит по цепочке владельцев от пода до Kustomization, HelmRelease или источника в Git. Так он находит звено GitOps-конвейера, на котором встала выкатка. Сервер умеет и менять кластер: запускать повторную сверку ресурса, приостанавливать и возобновлять ее, применять манифест через server-side apply, патчить и удалять ресурсы, ставить экземпляр Flux по адресу манифеста. Перед применением агент может проверить правку инструментом `diff_kubernetes_manifest`, который показывает разницу и сам ничего не записывает. Для нескольких кластеров есть инструменты `get_kubeconfig_contexts` и `set_kubeconfig_context`: они переключают контекст сессии, не трогая файл kubeconfig. Поиск по документации Flux ведут `search_flux_docs` и `read_flux_doc`. Сервер запускается командой `flux-operator-mcp serve`. По умолчанию он работает через stdio, а с флагом `--transport http` отвечает по Streamable HTTP на пути /mcp. При подключении он передает агенту встроенные инструкции. Пошаговые правила разбора сбоев автор предлагает скопировать из файла docs/mcp/instructions.md в файл правил вашего ассистента.
Для кого. Для платформенных инженеров и девопсов, которые ведут кластеры на Flux CD и хотят поручать агенту в Claude, Cursor или GitHub Copilot разбор упавших выкаток, сравнение сред и рутинные операции Flux.
Подходит, если
- HelmRelease или Kustomization не становится готовым, и нужно пройти путь от пода и событий до источника в Git
- Staging и production разошлись, и надо сравнить конфигурацию Flux и ресурсов между двумя кластерами
- Нужна схема зависимостей Flux, собранная по реальному состоянию кластера
- Срочно надо приостановить сверку проблемного ресурса, а после правки возобновить ее и запустить заново
- Перед применением манифеста хочется увидеть разницу с тем, что сейчас в кластере
Не подходит, если
- Кластер не использует Flux: сервер рассчитан на ресурсы и документацию Flux, для общей работы с Kubernetes в каталоге есть Kubernetes MCP Server
- У агента нет доступа к kubeconfig нужного кластера: сервер работает от учетных данных, которые видит в этом файле
- Нужен единый серверный адрес для всей команды без локального файла kubeconfig: локальный запуск через stdio рассчитан на одну машину
- Менять кластер должен только человек: тогда запускайте сервер строго с `--read-only` и не давайте агенту права на запись
Пример запроса к агенту
HelmRelease podinfo в namespace apps не становится готовым. Найди причину по событиям и логам, покажи цепочку от пода до источника и ничего не меняйMCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
Переменные окружения
KUBECONFIGобязательная- Абсолютный путь к файлу kubeconfig кластера, с которым работает сервер.
Ограничения
Сервер входит в проект Flux Operator и распространяется по лицензии AGPL-3.0.
Инструменты записи включены по умолчанию. Флаг `--read-only` отключает сверку, приостановку, возобновление, применение и удаление. Инструмент сравнения манифестов остается доступным, но Kubernetes проверяет его пробное применение как настоящее, поэтому нужны права `get` и `patch` на виды ресурсов манифеста. Учетной записи только для просмотра сервер вернет ошибки доступа по каждому объекту.
Значения секретов Kubernetes сервер по умолчанию маскирует. Автор предупреждает: если отключить маскирование флагом `--mask-secrets=false`, секреты уйдут ассистенту и, возможно, в обучающие данные его модели, поэтому так можно делать только в контролируемой среде с самостоятельно размещенной моделью.
Транспорт SSE удален, поддерживается только Streamable HTTP, а параметр `yaml_path` у инструмента сравнения есть лишь при локальном запуске через stdio. Путь к kubeconfig задается переменной KUBECONFIG, а флаг `--kube-as` ограничивает права сервера выбранной служебной учетной записью.
Как отключить. Удалите запись flux-operator-mcp из настроек MCP вашего ассистента и перезапустите его. Саму программу снимает команда `brew uninstall flux-operator-mcp`, если ставили через Homebrew. Если сервер развернут в кластере через ResourceSet, удалите этот ресурс.
Частые вопросы
Как запустить Flux MCP Server только для чтения?
Добавьте в args флаг `--read-only`. Тогда отключаются инструменты, которые меняют состояние кластера: сверка, приостановка, возобновление, применение и удаление. Чтение ресурсов, логов, событий и метрик остается.
Как подключить Flux MCP Server к Claude, Cursor или GitHub Copilot?
Добавьте в MCP-настройки ассистента запись с командой flux-operator-mcp и аргументом serve, а в переменной KUBECONFIG укажите абсолютный путь к файлу kubeconfig. Затем перезапустите ассистента и проверьте подключение запросом о доступных контекстах kubeconfig. Подробности для каждого ассистента есть в документации на сайте проекта.
Нужен ли Flux Operator в кластере?
Сервер описан как мост между ассистентом и кластерами, где работает Flux Operator. Если оператора нет, инструмент `install_flux_instance` ставит его вместе с экземпляром Flux по адресу манифеста; адрес может быть ссылкой HTTPS или OCI.
Как сравнить два кластера Flux через агента?
Агент переключает контекст инструментом `set_kubeconfig_context`, читает ресурсы в каждом кластере и сопоставляет их. Одновременно подключенных кластеров нет: контекст в сессии один, и он меняется без правки kubeconfig.
Можно ли ограничить права сервера отдельной учетной записью?
Да, флагом `--kube-as` со значением вида system:serviceaccount:my-namespace:my-service-account. Сервер получит только права этой служебной учетной записи, а пользователю в kubeconfig понадобится право имперсонации.
Как запустить сервер по сети, а не через stdio?
Командой `flux-operator-mcp serve --transport http --port 8080`. Клиент подключается по адресу http://localhost:8080/mcp с типом http. Сервер работает без хранения сессий, поэтому его можно масштабировать за балансировщиком без закрепления клиентов.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыMCP-сервер для Kubernetes: агент читает состояние кластера, разбирает сбои подов и запускает операции через kubectl
MCP-сервер на Go для Kubernetes и OpenShift: ресурсы, поды, логи, Helm и Tekton напрямую через API кластера
Kubernetes MCP
MCP Server Kubernetes
MCP-сервер для управления кластером Kubernetes через kubectl и Helm, с режимом без разрушающих операций
Самостоятельно размещаемый шлюз, который собирает несколько MCP-серверов в один эндпоинт с авторизацией и выбором инструментов
Официальный MCP-сервер Cloudflare: агент управляет всем API Cloudflare через поиск по спецификации и выполнение кода
SSH MCP Server (classfang) — команды на сервере по SSH
SSH MCP Server (classfang)
MCP-сервер для SSH: агент выполняет команды, читает и пишет файлы по SFTP, передает файлы и запускает долгие задачи, а пароли остаются у вас
Сравнение с похожими
Записи с тем же главным запросом: чем они отличаются.
| Запись | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| Flux MCP Server (эта запись) | да | не нужна | 783 | |
| Kubernetes MCP Server | нет | не нужна | 2 200 | общий MCP-сервер для Kubernetes и OpenShift, не привязан к Flux |
| Argo CD MCP Server | нет | API-ключ | 599 | сервер для Argo CD, другого инструмента GitOps |
Коротко о README
В репозитории проекта лежит исходный код сервера, Dockerfile, справка по быстрому старту и каталог документации с пятью страницами: установка, настройка транспорта и безопасности, советы по формулировке запросов, справочник инструментов и готовые инструкции для ассистента. Быстрый старт сводится к установке через Homebrew, добавлению записи в MCP-настройки и проверке двумя вопросами: какие контексты есть в kubeconfig и какая версия Flux работает в текущем кластере.