MCP-сервер · Разработка и DevOps
Kubernetes MCP Server
Проект сообщества (организация containers), а не вендорский сервер: MCP-сервер на Go для Kubernetes и OpenShift, который общается с API кластера напрямую, без kubectl и helm. Агент смотрит поды, логи и события, управляет ресурсами и релизами Helm.
Сверено 21 октября 2026 г.
Что умеет сервер
Kubernetes MCP Server написан на Go и поддерживает Kubernetes и OpenShift. Это проект сообщества (организация containers на GitHub), а не продукт самого Kubernetes или облачного вендора. Сервер не вызывает kubectl и helm, а работает с API-сервером кластера напрямую, поэтому внешние утилиты не нужны.
Агент может читать и менять любые ресурсы Kubernetes и OpenShift (создание или обновление, получение, список, удаление), просматривать поды и их логи, события, пространства имён и проекты OpenShift, выполнять команду в поде, запускать образ, получать метрики использования ресурсов (top), а также устанавливать, перечислять и удалять релизы Helm. Сервер сам замечает изменения в конфигурации kubeconfig и умеет работать с несколькими кластерами из неё одновременно.
Когда использовать
Подключайте сервер, когда нужно быстро разобраться в состоянии кластера из чата: почему под не стартует, что написано в логах, какие события предупреждали о проблеме, какие релизы Helm установлены. Он полезен команде на OpenShift и тем, у кого есть Tekton: отдельный набор инструментов запускает и разбирает PipelineRun и TaskRun.
Дополнительные наборы инструментов включаются параметром toolsets: по умолчанию включены config и core, а helm, kubevirt, tekton, kiali, netobserv, наблюдаемость (логи Loki, метрики Prometheus, трассы) и другие нужно добавить в конфигурации. В README советуют включать только нужные наборы: так меньше контекста и точнее выбор инструментов.
Ограничения и безопасность
Сервер действует с правами выбранного kubeconfig или учётной записи службы. Для безопасной эксплуатации в README рекомендуется отдельная ServiceAccount с доступом только на чтение, а режим read_only = true задаётся в TOML-файле конфигурации (CLI-флаги для этого больше не принимаются). Без него агент может удалять поды, выполнять команды в контейнерах и удалять релизы Helm.
В конфигурации можно закрыть доступ к чувствительным типам ресурсов через denied_resources; в примере из README так закрыт Secret. Сервер скрывает токены, ключи, пароли и облачные учётные данные в сообщениях журнала MCP. Для HTTP-режима описана авторизация OAuth/OIDC (Keycloak, Microsoft Entra ID). Для работы нужен доступ к кластеру Kubernetes.
Установка
Claude Code
Создайте небольшой файл конфигурации TOML (флаги вроде --read-only больше не принимаются):
cat > "$HOME/.config/kubernetes-mcp-server.toml" <<'EOF'
read_only = true
EOFДобавьте сервер командой claude mcp add-json (kubeconfig с доступом только на чтение создаётся по руководству «Getting Started with Kubernetes» из репозитория):
claude mcp add-json kubernetes-mcp-server \
'{"command":"npx","args":["-y","kubernetes-mcp-server@latest","--config","'"${HOME}"'/.config/kubernetes-mcp-server.toml"],"env":{"KUBECONFIG":"'${HOME}'/.kube/mcp-viewer.kubeconfig"}}' \
-s userПроверьте подключение:
claude mcp listClaude Desktop
Нужен npm. Добавьте сервер в mcpServers файла claude_desktop_config.json:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest"]
}
}
}VS Code
В VS Code и VS Code Insiders сервер добавляется командой:
# For VS Code
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
# For VS Code Insiders
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'Cursor
Отредактируйте mcp.json:
{
"mcpServers": {
"kubernetes-mcp-server": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest"]
}
}
}Goose CLI
В config.yaml Goose:
extensions:
kubernetes:
command: npx
args:
- -y
- kubernetes-mcp-server@latestЗапуск и настройка
Сервер можно запускать через npx, uvx или готовый бинарный файл со страницы релизов:
npx kubernetes-mcp-server@latest --help
uvx kubernetes-mcp-server@latest --help
./kubernetes-mcp-server --helpПостоянные настройки хранятся в TOML-файле:
kubernetes-mcp-server --config /etc/kubernetes-mcp-server/config.tomllog_level = 2
read_only = true
toolsets = ["core", "config", "helm", "kubevirt"]
# Deny access to sensitive resources
[[denied_resources]]
group = ""
version = "v1"
kind = "Secret"
[telemetry]
endpoint = "http://localhost:4317"Совместимые клиенты
- Claude Code
- Claude Desktop
- VS Code
- Cursor
- Goose CLI