KubeStellar MCP

io.github.kubestellar由 GitHub 账号 kubestellar 发布v0.9.23-nightly.20261112更新于 Nov 12, 2026

AI-powered Kubernetes diagnostics, RBAC analysis, security checks, and app deployment via MCP

概览

AI 生成的概览

本地 MCP 服务器,让 AI 助手通过 kubeconfig 检查、诊断并在多个 Kubernetes 集群上部署工作负载。

可以做什么
  • 列出集群、检查集群健康、节点、kubeconfig 审计以及版本与升级检查
  • 读取工作负载:Pod、Deployment、Service、事件、Pod 描述与日志
  • 分析 RBAC:角色、集群角色、绑定、can-i 检查与主体权限分析
  • 执行诊断:Pod 与 Deployment 问题、资源限制、安全配置错误、Gatekeeper 归属策略、GitOps 漂移
  • 部署与运维应用:部署、扩缩容、打补丁、按集群能力选择放置位置、GitOps 同步与协调
  • 管理 Helm 发布、Kustomize 构建、kubectl apply、资源删除与标签
适用场景
适合在管理一个或多个 Kubernetes 集群时使用,让助手回答应用运行在哪里、Pod 为何异常、某个服务账号有哪些权限等问题,或直接在对话中执行部署与 GitOps 同步。
运行要求
以本地二进制形式运行(kubestellar-ops 与 kubestellar-deploy),可通过 Homebrew、GitHub Releases 安装,或用 Go 1.26+ 从源码构建,并以 --mcp-server 参数通过 stdio 启动。需要 kubeconfig(可用 KUBECONFIG 指定)以及与你所需操作相匹配的 Kubernetes RBAC 权限;CLI 的自然语言 query 命令需要 ANTHROPIC_API_KEY。
安装前请注意
deploy 二进制可创建、更新、打补丁和删除集群资源,包括 Helm 卸载与资源删除,一次误操作就可能改动或移除生产工作负载。它以你 kubeconfig 的身份操作,若只做诊断应把 RBAC 限制为只读。README 还建议将其全部工具加入免确认白名单,这会取消写入前的确认。

安装

在 SourceWeft 中

  1. 打开 控制台中的 KubeStellar MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

kubestellar-mcp

AI-powered multi-cluster Kubernetes tools for Claude Code.

Single-cluster UX for multi-cluster reality - work with your apps, not your clusters.

Why KubeStellar

kubestellar-mcp is the AI entry point to the KubeStellar platform — a CNCF Sandbox ecosystem for multi-cluster Kubernetes orchestration.

Sub-projectRole
kubestellarCore engine — BindingPolicy, WDS, ITS, WEC workload propagation
consoleWeb dashboard — 300+ cards, AI missions, GPU and LLM-d monitoring
console-marketplace153+ community card presets (GPU/AI/ML, ArgoCD, OPA, Falco, security)
console-kbAI knowledge base — community missions and operational runbooks
kubestellar-mcpThis repo — MCP server for Claude, Cursor, Windsurf, VS Code

kubestellar-mcp lets AI agents inspect and operate clusters through natural language. For visual dashboards and AI missions, see KubeStellar Console.

Components

BinaryDescription
kubestellar-opsMulti-cluster diagnostics, RBAC analysis, security checks
kubestellar-deployApp-centric deployment, GitOps, smart workload placement

Documentation

Additional documentation lives in docs/:

  • docs/index.md - expanded setup, plugin workflow, CLI usage, and operational guidance
  • docs/ARCHITECTURE.md - architecture overview and contributor guide for the two MCP servers, request lifecycle, and how to add new tools

If you are contributing new MCP capabilities, start with docs/ARCHITECTURE.md; it is the best guide to how the servers are organized and where new tools should be added.

Operations

Installation

Homebrew (Recommended)

bash
brew tap kubestellar/tap
# Install diagnostics toolsbrew install kubestellar-ops
# Install deployment toolsbrew install kubestellar-deploy
# Or install bothbrew install kubestellar-ops kubestellar-deploy

From Releases

Download from GitHub Releases.

From Source

Prerequisites: Go 1.26+ (go version to verify)

bash
git clone https://github.com/kubestellar/kubestellar-mcp.gitcd kubestellar-mcp
# Build both binariesgo build -o bin/kubestellar-ops ./cmd/kubestellar-opsgo build -o bin/kubestellar-deploy ./cmd/kubestellar-deploy
sudo mv bin/kubestellar-* /usr/local/bin/

Claude Code Plugins

Step 1: Add the KubeStellar Marketplace

In Claude Code, run:

/plugin marketplace add kubestellar/claude-plugins

Step 2: Install the Plugins

/plugin install kubestellar-ops/plugin install kubestellar-deploy

Or:

  1. Go to /plugin → Marketplaces tab → click Update on kubestellar marketplace
  2. Go to /plugin → Discover tab → Install kubestellar-ops and/or kubestellar-deploy

Step 3: Verify

Run /mcp in Claude Code - you should see:

plugin:kubestellar-ops:kubestellar-ops · ✓ connectedplugin:kubestellar-deploy:kubestellar-deploy · ✓ connected

Allow Tools Without Prompts

Add to ~/.claude/settings.json:

json
{  "permissions": {    "allow": [      "mcp__plugin_kubestellar-ops_kubestellar-ops__*",      "mcp__plugin_kubestellar-deploy_kubestellar-deploy__*"    ]  }}

Or run in Claude Code:

/allowed-tools add mcp__plugin_kubestellar-ops_kubestellar-ops__*/allowed-tools add mcp__plugin_kubestellar-deploy_kubestellar-deploy__*

Other AI Clients (VS Code, Cursor, Windsurf)

You can run either binary as a generic MCP stdio server with kubestellar-ops --mcp-server or kubestellar-deploy --mcp-server. Any MCP-compatible client can use the binary over stdio.

VS Code (GitHub Copilot)

Create .vscode/mcp.json:

json
{  "servers": {    "kubestellar-ops": {      "command": "kubestellar-ops",      "args": ["--mcp-server"]    }  }}

Cursor

Create .cursor/mcp.json:

json
{  "mcpServers": {    "kubestellar-ops": {      "command": "kubestellar-ops",      "args": ["--mcp-server"]    }  }}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

json
{  "mcpServers": {    "kubestellar-ops": {      "command": "kubestellar-ops",      "args": ["--mcp-server"]    }  }}

OpenCode

OpenCode is an open-source AI coding agent. Add the following to your project's opencode.json or opencode.jsonc:

json
{  "$schema": "https://opencode.ai/config.json",  "mcp": {    "kubestellar-ops": {      "type": "local",      "command": ["kubestellar-ops", "--mcp-server"],      "enabled": true    },    "kubestellar-deploy": {      "type": "local",      "command": ["kubestellar-deploy", "--mcp-server"],      "enabled": true    }  }}

After adding, run opencode mcp list and verify both servers show as connected.

For your AI agent — Copy and paste this message into your OpenCode session to have it configure the MCP tools automatically:

Install kubestellar-ops and kubestellar-deploy:
  # macOS — Homebrew  brew tap kubestellar/tap  brew install kubestellar-ops kubestellar-deploy
  # Linux — download from GitHub Releases  curl -LO https://github.com/kubestellar/kubestellar-mcp/releases/latest/download/kubestellar-ops_linux_amd64.tar.gz  curl -LO https://github.com/kubestellar/kubestellar-mcp/releases/latest/download/kubestellar-deploy_linux_amd64.tar.gz  tar xzf kubestellar-ops_linux_amd64.tar.gz  tar xzf kubestellar-deploy_linux_amd64.tar.gz  sudo mv kubestellar-ops kubestellar-deploy /usr/local/bin/
  # Or build from source (any OS, requires Go 1.26+)  git clone https://github.com/kubestellar/kubestellar-mcp.git  cd kubestellar-mcp  go build -o /usr/local/bin/kubestellar-ops ./cmd/kubestellar-ops  go build -o /usr/local/bin/kubestellar-deploy ./cmd/kubestellar-deploy
Then create opencode.jsonc in the project root with:  {    "$schema": "https://opencode.ai/config.json",    "mcp": {      "kubestellar-ops": {        "type": "local",        "command": ["kubestellar-ops", "--mcp-server"],        "enabled": true      },      "kubestellar-deploy": {        "type": "local",        "command": ["kubestellar-deploy", "--mcp-server"],        "enabled": true      }    }  }
Verify with: opencode mcp list

Generic MCP Client (stdio)

bash
kubestellar-ops --mcp-serverkubestellar-deploy --mcp-server

Kubernetes RBAC

The MCP binaries use your active kubeconfig by default. If you run them in-cluster, bind the same permissions to the pod ServiceAccount.

Use caseTypical permissions
kubestellar-ops read-onlyget, list, watch on namespaces, nodes, pods, pods/log, services, endpoints, deployments, replica sets, statefulsets, daemonsets, jobs, cronjobs, events, resourcequotas, limitranges, roles, rolebindings, clusterroles, and clusterrolebindings
kubestellar-deploy writeEverything above, plus create, update, patch, and delete on the resource types you plan to manage

Example read-only ClusterRole:

yaml
apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRolemetadata:  name: kubestellar-mcp-readonlyrules:  - apiGroups: [""]    resources: ["namespaces", "nodes", "pods", "pods/log", "services", "endpoints", "events", "resourcequotas", "limitranges"]    verbs: ["get", "list", "watch"]  - apiGroups: ["apps", "batch"]    resources: ["deployments", "replicasets", "statefulsets", "daemonsets", "jobs", "cronjobs"]    verbs: ["get", "list", "watch"]  - apiGroups: ["rbac.authorization.k8s.io"]    resources: ["roles", "rolebindings", "clusterroles", "clusterrolebindings"]    verbs: ["get", "list", "watch"]

For write workflows, add create, update, patch, and delete to the resource rules you actually need.

Troubleshooting

Plugin not showing

  • Restart Claude Code, VS Code, Cursor, or Windsurf after installing or upgrading the binary.
  • Verify the binary is on your PATH with which kubestellar-ops.
  • If it is not found, reinstall it or move it into a directory already on your PATH.

Permission / RBAC errors

  • Run kubectl auth can-i --list to see what your current identity can access.
  • Compare the output with the permissions described in the Kubernetes RBAC section above.
  • If needed, update your Role, ClusterRole, or binding before retrying the MCP client.

kubeconfig problems

  • Confirm the active context with kubectl config current-context.
  • Check whether KUBECONFIG is set and points to the kubeconfig file you expect.
  • If the wrong cluster is selected, switch contexts or update the environment variable and retry.

Manual smoke test

  • You can verify the MCP server starts without opening an AI client.
  • Run the initialize request below and confirm you get a JSON-RPC response back.
bash
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"capabilities":{}}}' | ./bin/kubestellar-ops --mcp-server

Updating

Update the CLI tools via Homebrew:

bash
brew updatebrew upgrade kubestellar-ops kubestellar-deploy

Update the plugins in Claude Code:

/plugin update kubestellar-ops/plugin update kubestellar-deploy

kubestellar-ops

Multi-cluster Kubernetes diagnostics, RBAC analysis, and security checks.

Example Usage

  • "List my Kubernetes clusters"
  • "Find pods with issues across all clusters"
  • "Check for security misconfigurations"
  • "What permissions does the admin service account have?"
  • "Show me warning events in kube-system"

Features

CategoryTools
Clusterlist_clusters, get_cluster_health, get_nodes, audit_kubeconfig
Workloadsget_pods, get_deployments, get_services, get_events, describe_pod, get_pod_logs
RBACget_roles, get_cluster_roles, get_role_bindings, can_i, analyze_subject_permissions
Diagnosticsfind_pod_issues, find_deployment_issues, check_resource_limits, check_security_issues
Gatekeepercheck_gatekeeper, install_ownership_policy, list_ownership_violations
Upgradesdetect_cluster_type, get_cluster_version_info, check_helm_release_upgrades
GitOpsdetect_drift

Slash Commands

CommandDescription
/k8s-healthCheck health of all clusters
/k8s-issuesFind pod and deployment issues
/k8s-securityCheck for security misconfigurations
/k8s-rbacAnalyze RBAC permissions
/k8s-analyzeComprehensive namespace analysis
/k8s-audit-kubeconfigAudit kubeconfig clusters and recommend cleanup
/k8s-ownershipManage ownership tracking with OPA Gatekeeper
/k8s-upgrade-checkCheck for available upgrades
/k8s-upgradeUpgrade cluster (master and nodes)

kubestellar-deploy

App-centric multi-cluster deployment and operations.

Example Usage

  • "Where is nginx running?"
  • "Get logs from my api service"
  • "Deploy my ML model to clusters with GPUs"
  • "Are my clusters in sync with git?"
  • "Scale my app to 5 replicas across all clusters"

Features

CategoryTools
App Discoveryget_app_instances, get_app_status, get_app_logs
Deploymentdeploy_app, scale_app, patch_app
Placementlist_cluster_capabilities, find_clusters_for_workload
GitOpssync_from_git, detect_drift, reconcile, preview_changes
Helmhelm_install, helm_uninstall, helm_list, helm_rollback
Kustomizekustomize_build, kustomize_apply, kustomize_delete
Resourceskubectl_apply, delete_resource
Labelsadd_labels, remove_labels

Slash Commands

CommandDescription
/app-statusShow status of an app across all clusters
/app-logsGet aggregated logs from an app
/deployDeploy or update an app
/gitops-syncSync clusters from git
/gitops-driftCheck for drift from git

Example Workflows

"Where is my app running?"

nginx is running on 3 clusters:  - prod-east: 3 replicas, healthy  - prod-west: 3 replicas, healthy  - staging: 1 replica, healthy

"Deploy to GPU clusters"

Found 2 clusters with nvidia.com/gpuDeployed to gpu-cluster-1, gpu-cluster-2All healthy

"Check for drift"

Drift detected:  - prod-west: ConfigMap/app-config differs  - staging: Deployment/api has extra replicas

"Install nginx-ingress with Helm"

Installing nginx-ingress to 3 clusters...  - prod-east: Installed nginx-ingress v1.10.0  - prod-west: Installed nginx-ingress v1.10.0  - staging: Installed nginx-ingress v1.10.0All releases healthy

"Apply kustomize overlay"

Building kustomize from overlays/production...Applied to 2 clusters:  - prod-east: 5 resources applied  - prod-west: 5 resources applied

"Delete the test deployment"

Deleted deployment/test from 3 clusters:  - prod-east: deleted  - prod-west: deleted  - staging: deleted

CLI Usage

kubestellar-ops

bash
# Run as MCP server (for Claude Code)kubestellar-ops --mcp-server
# List clusterskubestellar-ops clusters list
# Check cluster healthkubestellar-ops clusters health

kubestellar-deploy

bash
# Run as MCP server (deployment, GitOps, Helm, kubectl, and kustomize tools)kubestellar-deploy --mcp-server
# Show version informationkubestellar-deploy version
# Generate shell completionkubestellar-deploy completion bash

kubestellar-deploy does not currently expose standalone deployment subcommands. Outside MCP server mode, the CLI only provides informational commands such as version, completion, and help. App deployment, GitOps, Helm, kubectl, kustomize, and labeling workflows are available through the MCP tool server started with --mcp-server. To target a different Kubernetes environment, point KUBECONFIG at the desired kubeconfig (or switch the active context in that kubeconfig) before starting the binary.

Environment Variables

VariableUsed byDescription
KUBECONFIGkubestellar-ops, kubestellar-deployPath to the kubeconfig file to use instead of the default Kubernetes client lookup path
ANTHROPIC_API_KEYkubestellar-opsRequired for the query command and natural-language cluster queries backed by Claude

Related runtime flags

kubestellar-ops also inherits the standard Kubernetes client flags from kubectl, so contributors can override cluster selection and request behavior at runtime without additional environment variables. Common examples include:

  • --context to select a kubeconfig context
  • --namespace to scope namespaced operations
  • --request-timeout to override API request timeouts
  • --cluster, --user, --server, --token, and TLS flags for advanced auth/connection overrides
  • --all-clusters, --target-cluster, and --mcp-server for KubeStellar-specific behavior

kubestellar-deploy currently exposes --mcp-server as its runtime flag and does not require any additional environment variables beyond Kubernetes client configuration.

Related Projects

Contributing

Contributions are welcome! Please read our contributing guidelines.

License

Apache License 2.0 - see LICENSE for details.

来源:README.md,提交 e9458f5

工具

0
SourceWeft 曾在隔离沙箱中以无凭据方式启动该软件包一次,以列出其工具,但未能完成:该软件包类型无法在沙箱中运行。

版本历史

36
  1. v0.9.23-nightly.20261112最新Nov 12, 2026
  2. v0.9.23-nightly.20261111Nov 11, 2026
  3. v0.9.22Nov 8, 2026
  4. v0.9.22-nightly.20261107Nov 7, 2026
  5. v0.9.22-nightly.20261103Nov 3, 2026
  6. v0.9.21Nov 1, 2026
  7. v0.9.21-nightly.20261030Oct 30, 2026
  8. v0.9.21-nightly.20261029Oct 29, 2026
  9. v0.9.21-nightly.20261026Oct 26, 2026
  10. v0.9.20-nightly.20261024Oct 24, 2026
  11. v0.9.20-nightly.20261023Oct 23, 2026
  12. v0.9.20-nightly.20261022Oct 22, 2026
  13. v0.9.20-nightly.20261021Oct 21, 2026
  14. v0.9.20-nightly.20261020Oct 20, 2026
  15. v0.9.20-nightly.20261019Oct 19, 2026
  16. v0.9.19Oct 18, 2026
  17. v0.9.19-nightly.20261017Oct 17, 2026
  18. v0.9.19-nightly.20261016Oct 16, 2026
  19. v0.9.19-nightly.20261014Oct 14, 2026
  20. v0.9.19-nightly.20261013Oct 13, 2026
  21. v0.9.19-nightly.20261012Oct 12, 2026
  22. v0.9.18Oct 11, 2026
  23. v0.9.18-nightly.20261010Oct 10, 2026
  24. v0.9.18-nightly.20261009Oct 9, 2026
  25. v0.9.18-nightly.20261008Oct 8, 2026
  26. v0.9.18-nightly.20261007Oct 7, 2026
  27. v0.9.18-nightly.20261006Oct 6, 2026
  28. v0.9.18-nightly.20261005Oct 5, 2026
  29. v0.9.17Oct 4, 2026
  30. v0.9.17-nightly.20261003Oct 3, 2026
  31. v0.9.17-nightly.20261002Oct 2, 2026
  32. v0.9.17-nightly.20261001Oct 1, 2026
  33. v0.9.17-nightly.20260928Sep 28, 2026
  34. v0.9.16-nightly.20260927Sep 27, 2026
  35. v0.9.16-nightly.20260926Sep 26, 2026
  36. v0.9.16-nightly.20260925Sep 25, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分