Unified MCP server for Kubernetes orchestration. Tools for kubectl, Helm, and Kustomize.
= poly-k8s-mcp :toc: :toc-placement!:
image:https://img.shields.io/badge/RSR-compliant-gold[RSR Compliant,link=https://github.com/hyperpolymath/rhodium-standard-repositories] image:https://img.shields.io/badge/MCP-server-blue[MCP Server,link=https://github.com/modelcontextprotocol] image:https://img.shields.io/badge/license-MIT-green[License]
Unified MCP server for Kubernetes orchestration. Provides Model Context Protocol tools for managing Kubernetes clusters through kubectl, Helm, and Kustomize.
toc::[]
== Overview
poly-k8s-mcp exposes Kubernetes management capabilities through the Model Context Protocol (MCP), enabling AI assistants and other MCP clients to interact with Kubernetes clusters programmatically.
== Adapters
=== kubectl (12 tools) Core Kubernetes CLI operations:
kubectl_get- Get resources (pods, deployments, services, etc.)kubectl_describe- Show detailed resource informationkubectl_logs- View container logskubectl_apply- Apply manifestskubectl_delete- Delete resourceskubectl_exec- Execute commands in containerskubectl_scale- Scale deployments/replicasetskubectl_rollout- Manage rollouts (status, history, undo, restart)kubectl_port_forward- Forward ports (returns command to run)kubectl_context- Manage kubectl contextskubectl_top- Show resource usage (CPU/memory)kubectl_create- Create resources
=== Helm (14 tools) Kubernetes package manager:
helm_install- Install chartshelm_upgrade- Upgrade releaseshelm_uninstall- Uninstall releaseshelm_list- List releaseshelm_status- Get release statushelm_history- View release historyhelm_rollback- Rollback to previous revisionhelm_repo_add- Add chart repositorieshelm_repo_list- List repositorieshelm_repo_update- Update repository cachehelm_search- Search for chartshelm_show- Show chart informationhelm_template- Render templates locallyhelm_get- Get release information
=== Kustomize (8 tools) Kubernetes configuration management:
kustomize_build- Build kustomization into manifestskustomize_apply- Build and apply to clusterkustomize_create- Create kustomization.yamlkustomize_edit_add- Add resources/patches/configmapskustomize_edit_set- Set namespace/nameprefix/imagekustomize_edit_remove- Remove itemskustomize_cfg- Run cfg commands (cat, count, grep, tree)kustomize_version- Show version
== Requirements
- https://deno.land/[Deno] runtime
- https://kubernetes.io/docs/reference/kubectl/[kubectl] CLI
- https://helm.sh/[Helm] CLI (optional)
- https://kustomize.io/[Kustomize] CLI (optional)
== Installation
[source,bash]
git clone https://github.com/hyperpolymath/poly-k8s-mcp cd poly-k8s-mcp npm install npm run build
== Usage
Run as MCP server:
[source,bash]
deno run --allow-run --allow-read --allow-env --allow-write main.js
Or use the systemd service:
[source,bash]
systemctl --user enable poly-k8s-mcp systemctl --user start poly-k8s-mcp
== License
MIT