K8Scortex Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited K8Scortex Mcp (Agent Skill) and scored it 45/100 (orange). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 475 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 475 flagged
A base64 string of 128+ characters appears in a documentation file. Encoded prompt injection hides the hostile instruction in base64 — invisible to keyword filters — and relies on the agent's ability to decode it at runtime. There is no normal authoring reason to embed a multi-hundred-byte base64 blob in skill docs.
*.sig, SIGNATURES) outside the documentation.Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A production-grade Model Context Protocol (MCP) server that gives developers, AI agents, and automation pipelines a single, secure, natural-language interface to Kubernetes — across any cloud, any cluster, any team.
cluster parameternpx k8scortex-mcpOr install globally:
npm install -g k8scortex-mcpkubectl configured with a valid context# Clone
git clone https://github.com/apatilgtn/k8scortex-mcp.git
cd k8scortex-mcp
# Install
npm install
# Build
npm run build
# Run (local dev mode — auth bypassed)
DISABLE_AUTH=true PORT=3001 npm run devnpx @modelcontextprotocol/inspector sse http://localhost:3001/mcpAdd to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"k8scortex": {
"command": "node",
"args": ["<path-to>/k8scortex-mcp/dist/stdio.js"],
"env": {
"DISABLE_AUTH": "true",
"KUBECONFIG": "~/.kube/config"
}
}
}
}Restart Claude Desktop. Ask: "List all pods in the default namespace".
K8sCortex intentionally keeps writes curated and governed, while allowing flexible read access for diagnostics.
| Domain | Tool | Description |
|---|---|---|
| Workload | list_pods | List pods with status and IP |
| Workload | get_pod_logs | Fetch container logs |
| Workload | describe_deployment | Full deployment spec |
| Workload | list_statefulsets | List StatefulSets with rollout status |
| Workload | describe_statefulset | Detailed StatefulSet spec/status |
| Workload | list_daemonsets | List DaemonSets with scheduling status |
| Workload | describe_daemonset | Detailed DaemonSet spec/status |
| Workload | list_nodes | Cluster nodes with Ready status |
| Deploy | scale_deployment | Scale replicas (dry-run default) |
| Deploy | restart_pod | Delete pod to trigger restart |
| Config | get_configmap | Read ConfigMap data |
| Config | describe_namespace_quota | Resource quota usage |
| Config | list_events | Recent namespace events |
| Config | list_persistent_volume_claims | PVC status, bound volume, storage class, capacity |
| Config | get_effective_permissions | ServiceAccount SubjectAccessReview matrix |
| Generic Read | list_k8s_resources | Generic list for arbitrary resource kinds |
| Generic Read | get_k8s_resource | Generic get for arbitrary resource kinds |
| Observe | get_hpa_status | HPA metrics and scaling |
| Observe | list_warning_events | Warning events for triage |
| Observe | get_node_pressure | Node memory/disk/PID pressure |
| Multi | list_clusters | All registered clusters |
| Multi | get_cluster_info | Node count, versions, architecture |
For the evolving full catalog, see docs/developer-guide.md.
The largest functional risk in Kubernetes MCP is dead-end visibility on non-curated resources (for example StatefulSets, DaemonSets, PVCs, or CRDs). KubeNexus addresses this by combining:
This keeps the governance posture strong while preserving practical troubleshooting coverage.
K8sCortex is designed as a governed platform interface, not an unrestricted Kubernetes super-client.
Claude / Prism Agent / CI-CD
│
▼
┌──────────────────────────────┐
│ K8sCortex MCP Server │
│ OIDC → RBAC → Tool → Audit │
│ │ │
│ Cluster Store (Key Vault) │
└──────────┬───────────────────┘
│
┌──────┼──────┐
▼ ▼ ▼
AKS EKS GKEdeveloper → platform-engineer)src/
├── index.ts # Express SSE server
├── stdio.ts # Stdio entry point (Claude Desktop)
├── auth.ts # OIDC middleware
├── roles.ts # RBAC role hierarchy
├── audit.ts # Audit logger
├── context.ts # AsyncLocalStorage user context
├── cluster-store.ts # Dynamic K8s client factory
├── kubernetes.ts # Client re-export
└── tools/
├── workload.ts # list_pods, get_pod_logs, describe_deployment, list_nodes
├── deployment.ts # scale_deployment, restart_pod
├── configuration.ts # get_configmap, describe_namespace_quota, list_events
├── observability.ts # get_hpa_status, list_warning_events, get_node_pressure
└── multicluster.ts # list_clusters, get_cluster_info
kubernetes/ # Production manifests
├── namespace.yaml
├── deployment.yaml
├── service.yaml
├── rbac.yaml
├── network-policy.yaml
├── hpa.yaml
├── secret-provider-class.yaml
└── alerts.yaml # Prometheus alerting rules
docs/
├── developer-guide.md # End-user documentation
├── operator-runbook.md # Platform team operations
├── slos.md # Service level objectives
└── adrs/ # Architecture decision records
├── ADR-001-tool-taxonomy.md
├── ADR-002-idp-integration.md
├── ADR-003-role-model.md
└── ADR-004-credential-management.mdK8sCortex_Cloud_Testing_Publishing_Plan.docxK8sCortex_Project_Plan.docxK8sCortex_Project_Plan_v3.docxK8sCortex_Project_Plan_v4.docxInternal — Platform Engineering
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.