Инструмент Kubectl MCP
Сервер протокола контекста модели (MCP) для Kubernetes, который позволяет помощникам на основе искусственного интеллекта, таким как Claude, Cursor и другим, взаимодействовать с кластерами Kubernetes с помощью естественного языка.
🎥 Демонстрация в реальном времени — посмотрите kubectl-mcp-tool в действии с Клодом!

Related MCP server: MCP Toolkit
🎥 Демонстрация в реальном времени — посмотрите, как работает kubectl-mcp-tool с курсором!

🎥 Демонстрация в реальном времени — посмотрите, как kubectl-mcp-tool работает с Windsurf!

Функции
Основные операции Kubernetes
[x] Подключиться к кластеру Kubernetes
[x] Список и управление модулями, службами, развертываниями и узлами
[x] Создание, удаление и описание модулей и других ресурсов
[x] Получить журналы пода и события Kubernetes
[x] Поддержка операций Helm v3 (установка, обновления, удаление)
[x] kubectl объясняет и поддерживает api-resources
[x] Выберите пространство имен для следующих команд (сохранение памяти)
[x] Перенести порт на модули
[x] Масштабирование развертываний и statefulsets
[x] Выполнение команд в контейнерах
[x] Управление ConfigMap и секретами
[x] Откат развертываний к предыдущим версиям
[x] Управление входящими и сетевыми политиками
[x] Переключение контекста между кластерами
Обработка естественного языка
[x] Обработка запросов на естественном языке для операций kubectl
[x] Контекстно-зависимые команды с памятью предыдущих операций
[x] Понятные объяснения концепций Kubernetes
[x] Интеллектуальное построение команды из намерения
[x] Возврат к kubectl, когда специализированные инструменты недоступны
[x] Поддержка фиктивных данных для офлайн/тестовых сценариев
[x] Обработка запросов с учетом пространства имен
Мониторинг
[x] Мониторинг состояния кластера
[x] Отслеживание использования ресурсов
[x] Состояние и проверка работоспособности Pod
[x] Мониторинг событий и оповещение
[x] Анализ пропускной способности и распределения узлов
[x] Отслеживание исторических показателей
[x] Статистика использования ресурсов через kubectl top
[x] Отслеживание готовности и жизнеспособности контейнера
Безопасность
[x] Проверка и верификация RBAC
[x] Аудит контекста безопасности
[x] Безопасные соединения с API Kubernetes
[x] Управление учетными данными
[x] Оценка сетевой политики
[x] Сканирование безопасности контейнеров
[x] Обеспечение соблюдения лучших практик безопасности
[x] Роль и кластерУправление ролями
[x] Создание и привязка ServiceAccount
[x] Анализ PodSecurityPolicy
[x] Аудит разрешений RBAC
[x] Проверка контекста безопасности
Диагностика
[x] Диагностика кластера и устранение неполадок
[x] Проверка конфигурации
[x] Анализ ошибок и предложения по восстановлению
[x] Мониторинг состояния соединения
[x] Анализ журналов и обнаружение закономерностей
[x] Идентификация ограничений ресурсов
[x] Диагностика проверки работоспособности Pod
[x] Распознавание типичных ошибок
[x] Проверка ресурсов на наличие неправильных конфигураций
[x] Подробная проверка жизнеспособности и готовности зонда
Расширенные функции
[x] Поддержка нескольких транспортных протоколов (stdio, SSE)
[x] Интеграция с несколькими помощниками на основе искусственного интеллекта
[x] Расширяемая структура инструментов
[x] Поддержка определения пользовательских ресурсов
[x] Операции между пространствами имен
[x] Пакетные операции над несколькими ресурсами
[x] Интеллектуальное отображение взаимосвязей ресурсов
[x] Объяснение ошибки с предложениями по восстановлению
[x] Управление громкостью и идентификация
Архитектура
Интеграция протокола контекста модели (MCP)
Инструмент Kubectl MCP реализует протокол контекста модели (MCP) , позволяя помощникам ИИ взаимодействовать с кластерами Kubernetes через стандартизированный интерфейс. Архитектура состоит из:
Сервер MCP : совместимый сервер, который обрабатывает запросы от клиентов MCP (помощников на основе искусственного интеллекта)
Реестр инструментов : регистрирует операции Kubernetes как инструменты MCP со схемами.
Транспортный уровень : поддерживает методы транспорта stdio, SSE и HTTP.
Основные операции : преобразует вызовы инструментов в операции API Kubernetes.
Форматировщик ответов : преобразует ответы Kubernetes в ответы, совместимые с MCP.
Запрос потока

Двойной режим работы
Инструмент работает в двух режимах:
Режим CLI : прямой интерфейс командной строки для выполнения операций Kubernetes.
Режим сервера : работает как сервер MCP для обработки запросов от помощников на основе искусственного интеллекта.
Установка
Подробные инструкции по установке смотрите в Руководстве по установке .
Установить kubectl-mcp-tool можно непосредственно из PyPI:
Для конкретной версии:
Пакет доступен на PyPI: https://pypi.org/project/kubectl-mcp-tool/1.1.1/
Предпосылки
Питон 3.9+
установлен и настроен kubectl CLI
Доступ к кластеру Kubernetes
pip (менеджер пакетов Python)
Глобальная установка
Установка локального развития
Проверка установки
После установки проверьте правильность работы инструмента:
Примечание: этот инструмент предназначен для работы в качестве сервера MCP, к которому подключаются помощники AI, а не как прямая замена kubectl. Основная доступная команда — kubectl-mcp serve , которая запускает сервер MCP.
Использование с помощниками на основе искусственного интеллекта
Использование MCP-сервера
MCP-сервер ( kubectl_mcp_tool.mcp_server ) — это надежная реализация, созданная на основе FastMCP SDK, которая обеспечивает улучшенную совместимость с различными помощниками на основе искусственного интеллекта:
Примечание : Если вы столкнетесь с какими-либо ошибками в реализации MCP Server, вы можете вернуться к использованию минимальной оболочки, заменив
kubectl_mcp_tool.mcp_serverнаkubectl_mcp_tool.minimal_wrapperв вашей конфигурации. Минимальная оболочка обеспечивает базовые возможности с более простой реализацией.
Прямая конфигурация
{ "mcpServers": { "kubernetes": { "command": "python", "args": ["-m", "kubectl_mcp_tool.mcp_server"], "env": { "KUBECONFIG": "/path/to/your/.kube/config", "PATH": "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin", "MCP_LOG_FILE": "/path/to/logs/debug.log", "MCP_DEBUG": "1" } } } }Ключевые переменные среды
MCP_LOG_FILE: Путь к файлу журнала (рекомендуется для предотвращения засорения stdout)MCP_DEBUG: установите значение «1» для подробного ведения журнала.MCP_TEST_MOCK_MODE: установите значение «1», чтобы использовать фиктивные данные вместо реального кластера.KUBECONFIG: Путь к файлу конфигурации KubernetesKUBECTL_MCP_LOG_LEVEL: Установите значение «DEBUG», «INFO», «WARNING» или «ERROR»
Тестирование сервера MCP Вы можете проверить правильность работы сервера с помощью:
python -m kubectl_mcp_tool.simple_pingБудет предпринята попытка подключиться к серверу и выполнить команду ping.
Кроме того, вы можете напрямую запустить сервер с помощью:
python -m kubectl_mcp_tool
Клод Десктоп
Добавьте следующее в конфигурацию Claude Desktop в ~/.config/claude/mcp.json (Windows: %APPDATA%\Claude\mcp.json ):
Курсор ИИ
Добавьте следующее в настройки Cursor AI в MCP, добавив новый глобальный сервер MCP:
Сохраните эту конфигурацию в ~/.cursor/mcp.json для глобальных настроек.
Примечание : замените
/path/to/your/.kube/configна фактический путь к вашему файлу kubeconfig. В большинстве систем это~/.kube/config.
Виндсерфинг
Добавьте следующее в конфигурацию Windsurf в ~/.config/windsurf/mcp.json (Windows: %APPDATA%\WindSurf\mcp.json ):
Автоматическая конфигурация
Для автоматической настройки всех поддерживаемых ИИ-помощников запустите предоставленный скрипт установки:
Этот скрипт:
Установите необходимые зависимости
Создайте файлы конфигурации для Claude, Cursor и WindSurf
Настройте правильные пути и переменные среды
Проверьте свое подключение Kubernetes
Предпосылки
kubectl установлен и находится в вашем PATH
Действительный файл kubeconfig
Доступ к кластеру Kubernetes
Helm v3 (опционально, для операций Helm)
Примеры
Список стручков
Развернуть приложение
Проверьте журналы Pod
Переадресация портов
Разработка
Структура проекта
Инструменты сервера MCP
Реализация MCP Server ( kubectl_mcp_tool.mcp_server ) предоставляет полный набор из 26 инструментов, которые могут использоваться помощниками ИИ для взаимодействия с кластерами Kubernetes:
Управление основными ресурсами Kubernetes
get_pods — Получить все модули в указанном пространстве имен
get_namespaces — Получить все пространства имен Kubernetes
get_services — Получить все службы в указанном пространстве имен
get_nodes — Получить все узлы в кластере
get_configmaps — получить все ConfigMaps в указанном пространстве имен
get_secrets — Получить все секреты в указанном пространстве имен
get_deployments — Получить все развертывания в указанном пространстве имен
create_deployment — Создать новое развертывание
delete_resource — удалить ресурс Kubernetes
get_api_resources — список ресурсов API Kubernetes
kubectl_explain — Объясните ресурс Kubernetes с помощью kubectl Explain
Операции рулевого управления
install_helm_chart — Установка диаграммы Helm
upgrade_helm_chart — обновление версии Helm
uninstall_helm_chart — удаление версии Helm
Операции по обеспечению безопасности
get_rbac_roles — Получить все роли RBAC в указанном пространстве имен
get_cluster_roles — Получить все роли RBAC кластера
Мониторинг и диагностика
get_events — Получить все события в указанном пространстве имен
get_resource_usage — Получить статистику использования ресурсов через kubectl top
health_check — проверка работоспособности кластера путем отправки ping-запроса на сервер API
get_pod_events — Получить события для определенного модуля
check_pod_health — проверка состояния работоспособности модуля
get_logs — Получить логи из модуля
Управление кластером
switch_context — переключение текущего контекста kubeconfig
get_current_context — Получить текущий контекст kubeconfig
port_forward — переадресация локального порта на порт модуля
scale_deployment — Масштабировать развертывание
Все инструменты возвращают структурированные данные с информацией об успешном выполнении/ошибке и соответствующими подробностями, что упрощает обработку и понимание ответов помощниками на основе искусственного интеллекта.
Внося вклад
Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.
Форк репозитория
Создайте ветку функций (
git checkout -b feature/amazing-feature)Зафиксируйте свои изменения (
git commit -m 'Add some amazing feature')Отправить в ветку (
git push origin feature/amazing-feature)Открыть запрос на извлечение
Лицензия
Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .