Model Context Protocol server for Kubernetes developer operations
The server defines 25 tools with complete schemas and basic descriptions. However, the descriptions are generic and lack LLM-optimized guidance. Most parameter descriptions simply repeat the parameter name or offer minimal context. Parameter schemas lack detail (no enums, ranges, or examples for semantic clarity). Output schemas are completely undocumented, LLMs cannot see what fields to expect from these tools. Error handling is absent from all tool definitions. The server is domain-complete for Kubernetes read operations but lacks production-grade tool definition quality. Average tool description length is ~60 characters, well below the baseline of 194 characters for A-grade tools. No tool includes recovery guidance, examples of when to use it, or chaining hints.
Describe details of a Kubernetes configmap
Describe details of a Kubernetes deployment
Describe details of a Kubernetes node
Describe details of a Kubernetes pod
Describe details of a Kubernetes secret
Describe details of a Kubernetes service
Get Kubernetes events for troubleshooting
Output schemas completely undocumented. No tool specifies what fields LLMs should expect in the response (e.g., pod name, status, namespace in list-pods output). This forces LLMs to make assumptions about response structure, leading to parsing errors and failed downstream chaining.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 55 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Get logs from a Kubernetes pod
List all Kubernetes resources in a namespace
List Kubernetes configmaps in a namespace
List Kubernetes cronjobs in a namespace
List Kubernetes deployments in a namespace
List Kubernetes ingresses in a namespace
List Kubernetes jobs in a namespace
List all Kubernetes namespaces
List all Kubernetes nodes
List Kubernetes pods in a namespace
List Kubernetes persistent volumes
List Kubernetes persistent volume claims in a namespace
List Kubernetes secrets in a namespace
List Kubernetes services in a namespace
Port forward a Kubernetes service to a local port
Port forward a Kubernetes pod to a local port
Show resource usage for nodes
Show resource usage for pods
Descriptions are generic and lack LLM-optimized guidance. Average description length is ~60 characters; baseline is 194 chars (p10=34, p90=392). Descriptions do not explain WHEN to use each tool, WHAT distinguishes similar tools (e.g., list-pods vs list-all), or prerequisites (e.g., 'requires metrics-server to be installed' for top-pods).
Parameter descriptions lack semantic detail. 'namespace' parameters all say '(optional, defaults to current context namespace)' without explaining what a namespace is in Kubernetes context or how to discover valid namespaces. No guidance on when to pass vs omit the namespace.
No error handling or recovery guidance in any tool definition. Tools do not document what happens on failure (e.g., 'pod not found', 'namespace does not exist', 'metrics unavailable'). LLMs cannot determine retry strategy or fallback actions without explicit error classification.
Tool naming has minor ambiguity. 'list-all' vs 'list-pods', 'list-services', etc. does not clearly distinguish scope or when to prefer one over the other. LLMs may waste reasoning cycles deciding between similar-sounding tools.
Numeric parameters (lines, localPort, targetPort) lack range constraints. No specification of valid bounds (e.g., lines: 1-10000, localPort: 1024-65535). LLMs can pass arbitrary values that may fail at runtime.
port-forward and port-forward-pod tools have WRITE risk but no confirmation or dry-run capability. Agents could open port-forwards unintentionally without a safeguard. No warning that this affects local network state.
No pagination support documented for list-* tools. 'list-all', 'list-pods', etc. do not specify offset/limit parameters or cursor behavior. Large namespace results could blow context window without explicit pagination controls.