KubeCraft MCP Server
Full support for Amazon EKS clusters, enabling management and monitoring of EKS resources via the Kubernetes API.
Integration with ArgoCD for managing applications, projects, sync, rollback, and visualization of ArgoCD resources.
Support for Canonical Kubernetes (MicroK8s) clusters, providing full visibility and control.
Detection of Cilium CNI and service mesh, with network policy analysis and visualization capabilities.
Integration with Flux CD for managing sources, kustomizations, Helm releases, and unified GitOps visualization.
Tools for listing, installing, uninstalling, and retrieving values of Helm releases in the cluster.
Detection of Istio service mesh, enabling network analysis and service mesh diagnostics.
Full support for K3s lightweight Kubernetes clusters, compatible with standard Kubernetes APIs.
Comprehensive management of Kubernetes clusters including resources, diagnostics, security, compliance, storage, networking, and visualization.
Detection of Linkerd service mesh, providing network analysis and service mesh health insights.
GPU workload management, cluster readiness checks, allocation visualization, and nvidia-smi access.
Server statistics and observability via OpenTelemetry for monitoring the MCP server itself.
Direct querying of Prometheus for metrics and observability data from the cluster.
Support for Rancher-managed Kubernetes clusters, including K3s and standard Rancher integration.
Full support for Red Hat OpenShift clusters, including OpenShift-specific resources like routes, projects, and builds.
Integration with Tekton for listing pipelines, runs, tasks, and visualization of Tekton resources.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KubeCraft MCP Servershow me pods in default namespace with their resource usage"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
KubeCraft MCP Server
A Model Context Protocol (MCP) server that gives AI assistants (Claude, Cursor, etc.) full visibility and control over Kubernetes clusters.
Features (140 tools)
Category | Tools | Count |
Cluster Info |
| 4 |
Resources |
| 11 |
Diagnostics |
| 3 |
Management |
| 9 |
Platform / Posture |
| 6 |
Security Posture |
| 4 |
Workloads |
| 9 |
Cluster Intelligence |
| 3 |
Advanced Storage |
| 3 |
Advanced Networking |
| 12 |
Ingress Audit |
| 4 |
Access Control (RBAC YAML) |
| 3 |
Compliance Reporting |
| 1 |
CRDs & Operators |
| 10 |
Visualization |
| 5 |
Rendered Diagrams |
| 8 |
3D Visualization |
| 1 |
Multi-Cluster |
| 3 |
Pod Exec |
| 1 |
Helm |
| 4 |
Cost Analysis |
| 2 |
OpenShift |
| 4 |
ArgoCD |
| 8 |
Flux CD |
| 5 |
Tekton |
| 5 |
GitOps Overview |
| 1 |
GPU / Accelerators |
| 6 |
Observability |
| 3 |
License |
| 2 |
Further roadmap items (HTTP MCP transport, deeper GitOps) are in docs/ROADMAP.md.
Related MCP server: Kubernetes MCP Server
Diagram & Visual Rendering
KubeCraft returns visual content using multiple MCP content types, with automatic browser fallback for clients that don't render visuals inline.
Content | MCP response type | Inline rendering | Fallback |
PNG diagrams ( |
| Cursor renders inline | Auto-opens saved PNG in default viewer; also saved to |
3D topology ( |
| Future clients that support | Auto-opens HTML in default browser; also saved to |
Mermaid text ( |
| Cursor + Claude Desktop render natively | Copy Mermaid block to any Mermaid renderer |
Auto-open behavior: When KUBECRAFT_OUTPUT_DIR is configured and writable, rendered PNGs and 3D HTML files are saved to disk and automatically opened in the user's default browser or image viewer. Inside Docker containers, auto-open works only when the container can reach the host display (e.g. via X11 forwarding or host networking); otherwise, open the saved files from the host-mounted output directory.
Kubernetes Distribution Compatibility
KubeCraft uses the standard Kubernetes Python client and communicates directly with the K8s API server — no kubectl or other CLI wrappers required.
Distribution | Status | Notes |
Vanilla K8s / KinD | Fully supported | Primary dev/test target |
Amazon EKS | Fully supported | kubeconfig via |
Azure AKS | Fully supported | kubeconfig via |
Google GKE | Fully supported | kubeconfig via |
Canonical K8s / MicroK8s | Fully supported | CNCF certified, standard APIs |
k3s / Rancher | Fully supported | Lightweight but fully conformant |
Red Hat OpenShift | Fully supported | Standard K8s tools + OCP-specific tools for Routes, Projects, BuildConfigs |
Quick Start
Build the Docker image
docker build -t kubecraft-mcp:latest .Configure in Cursor
Create or edit .cursor/mcp.json in your project:
{
"mcpServers": {
"kubecraft": {
"command": "docker",
"args": [
"run", "--rm", "-i", "--network=host",
"-v", "/home/<user>/.kube:/home/mcp/.kube:ro",
"-e", "KUBECONFIG=/home/mcp/.kube/config",
"kubecraft-mcp:latest"
]
}
}
}Windows (WSL kubeconfig):
{
"mcpServers": {
"kubecraft": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-v", "C:\\Users\\<user>\\.kube:/home/mcp/.kube:ro",
"-e", "KUBECONFIG=/home/mcp/.kube/config",
"kubecraft-mcp:latest"
]
}
}
}3D topology viewer (HTTP link): The Viewer URL works only while the Kubecraft process is running. If you run a one-off python -c locally, the server exits immediately and the link will show connection refused. On Docker Desktop (Windows/macOS), --network=host does not publish the container's loopback to your host browser like it does on Linux; prefer opening the saved HTML file from KUBECRAFT_OUTPUT_DIR, or publish a fixed port, for example add to args: "run", "--rm", "-i", "-p", "8765:8765", plus -e, KUBECRAFT_VIEWER_BIND=0.0.0.0:8765, -e, KUBECRAFT_VIEWER_EXPOSE=1, then use http://127.0.0.1:8765 plus the path from the tool output (copy it exactly; the token is case-sensitive).
Configure in Claude Desktop
Claude Desktop doesn't render MCP ImageContent or EmbeddedResource inline, so diagrams are saved to a shared folder on your machine and automatically opened in your default browser/viewer. Open (or create)
%APPDATA%\Claude\claude_desktop_config.json (Windows) or
~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
Windows:
{
"mcpServers": {
"kubecraft": {
"command": "docker",
"args": [
"run", "--rm", "-i", "--network=host",
"-v", "C:\\Users\\<user>\\.kube:/home/mcp/.kube:ro",
"-v", "C:\\Users\\<user>\\kubecraft-diagrams:/output",
"-e", "KUBECONFIG=/home/mcp/.kube/config",
"-e", "KUBECRAFT_OUTPUT_DIR=/output",
"kubecraft-mcp:latest"
]
}
}
}Rendered PNG diagrams and 3D topology HTML files will appear in C:\Users\<user>\kubecraft-diagrams\ and auto-open in your browser.
macOS / Linux:
{
"mcpServers": {
"kubecraft": {
"command": "docker",
"args": [
"run", "--rm", "-i", "--network=host",
"-v", "/home/<user>/.kube:/home/mcp/.kube:ro",
"-v", "/home/<user>/kubecraft-diagrams:/output",
"-e", "KUBECONFIG=/home/mcp/.kube/config",
"-e", "KUBECRAFT_OUTPUT_DIR=/output",
"kubecraft-mcp:latest"
]
}
}
}Configure in Claude Code
claude mcp add kubecraft \
-- docker run --rm -i --network=host \
-v ~/.kube:/home/mcp/.kube:ro \
-e KUBECONFIG=/home/mcp/.kube/config \
kubecraft-mcp:latestBuilt-in Chat UI (Web mode)
KubeCraft ships with a full React/TypeScript chat UI bundled in the same Docker image. It exposes the entire 115-tool surface as a conversational interface backed by your choice of LLM (Claude, OpenAI, or Azure OpenAI) — the LLM decides when to call MCP tools and the UI streams the results back with markdown, embedded PNG diagrams, and an interactive 3D topology viewer.
Pages
Chat — streaming conversation with expandable tool-invocation cards, image/HTML embedding, kubeconfig context switcher in the header. Per-message Copy and Edit actions (hover any message); Suggestions picker right next to the input opens a searchable popover of the full template library.
Templates — curated catalog of 159 prompt templates spanning all 27 tool categories. Sidebar filter by category, full-text search across title / prompt / tool name / tags. Click Use to drop a template into the chat input.
Saved — bookmark your own reusable questions; one click sends them to chat.
History — every past conversation, resumable.
Audit — every MCP tool call ever executed (compliance trail).
Settings — provider config, license registration, full tool inventory.
Compliance reporting
KubeCraft's generate_compliance_report tool produces audit-ready PDF and Word documents mapped to the major compliance frameworks. Run it from chat with one prompt like "Generate a SOC 2 compliance audit report and export PDF + Word".
Frameworks supported:
Framework | Mapping |
CIS Kubernetes Benchmark v1.9 | Direct control-ID mapping (5.1.x RBAC, 5.2.x PSS, 5.3.x networking, 5.4.x secrets, etc.) |
SOC 2 Trust Service Criteria | CC6.x logical access · CC7.x system operations · CC8.x change management |
ISO 27001:2022 | Annex A (A.5 access control · A.8 operations / cryptography / network security) |
NIST 800-53 Rev. 5 | AC, AU, CM, IA, RA, SC, SI control families |
PCI-DSS v4.0 | Req 1, 2, 6, 7, 8, 10 |
HIPAA Security Rule | §164.312 Technical Safeguards (a) Access · (b) Audit · (c) Integrity · (e) Transmission |
comprehensive | All of the above in one report — every finding lists its mapping in each framework |
What the report contains:
Executive summary — color-coded status counts + a 0-100 compliance score with interpretation
Findings summary table — every control with status, control ID, and one-line summary
Detailed findings — per-control: status, evidence excerpt, cross-framework mappings, remediation guidance
Methodology — which tools were used to gather evidence, which findings need manual review
Evidence sources (run automatically, read-only):
inspect_rbac · summarize_pod_security_standards · analyze_network_reachability · find_unprotected_workloads · audit_secret_hygiene · summarize_image_vulnerabilities · scan_deprecations · audit_ingress_tls · audit_loadbalancers · get_node_health · list_pod_disruption_budgets
Multi-cluster: Set multi_cluster=true to loop over every kubeconfig context and produce one combined report — each finding is prefixed with the originating cluster name.
Output: Files are saved under KUBECRAFT_OUTPUT_DIR/compliance/ as kubecraft-compliance-{framework}-{timestamp}.{md,pdf,docx}. When the web UI is running, the chat response includes a Download link served by /api/v1/files/... (path-traversal protected, scoped to the output dir).
Note: This is an evidence-aggregation tool, not a substitute for a qualified auditor. Findings flagged 🔍 manual review require human verification (e.g., kube-apiserver flags, organizational controls outside the cluster).
Output beautification
Assistant replies and tool outputs are rendered with GitHub-flavored markdown, including:
Mermaid diagrams — fenced
```mermaidblocks (returned byvisualize_*tools) are rendered as interactive SVG with a toolbar: Copy source, Copy as PNG, Download PNG, Toggle source, Fullscreen. Mermaid is lazy-loaded so the bundle stays slim for users who never see a diagram.PNG renders — every
render_*tool output (cluster topology, namespace, network, app architecture, premium architecture, GPU dashboard / metrics / sparkline) gets the same toolbar: Copy PNG, Download, Open in new tab, Fullscreen. Click the image to open it fullscreen; click the backdrop or press Esc to dismiss.3D HTML topology (
render_3d_topology) gets a matching panel: Open viewer (in-page iframe overlay), New tab (standalone Blob URL), Download (.htmlfile), Copy (HTML source). Includes a size readout (e.g. "342 KB · self-contained Three.js HTML").Syntax-highlighted fenced code blocks (highlight.js, common-language bundle)
Per-codeblock Copy button on hover
JSON auto-pretty-print when fenced as
```jsonWide tables with sticky headers + horizontal scroll wrapper
Status emojis (
✅ ❌ ⚠️ 🟢 🟡 🔴 ⏳) automatically rendered as tinted chips for fast scanning
Run web mode
Linux / WSL2 (recommended — uses host networking so the container can reach 127.0.0.1 clusters like kind/k3d/minikube):
docker run --rm --network=host \
-v ~/.kube:/home/mcp/.kube:ro \
-e KUBECONFIG=/home/mcp/.kube/config \
-e KUBECRAFT_MODE=http \
-e KUBECRAFT_LLM_PROVIDER=anthropic \
-e ANTHROPIC_API_KEY=sk-ant-... \
kubecraft-mcp:latestOpen http://localhost:8080.
Docker Desktop (Windows / macOS — --network=host is a no-op there; use host.docker.internal to reach a localhost cluster):
docker run --rm -p 8080:8080 --add-host=host.docker.internal:host-gateway \
-v ~/.kube:/home/mcp/.kube:ro \
-e KUBECONFIG=/home/mcp/.kube/config \
-e KUBECRAFT_MODE=http \
-e ANTHROPIC_API_KEY=sk-ant-... \
kubecraft-mcp:latestThen rewrite your kubeconfig to use host.docker.internal instead of 127.0.0.1 for the cluster URL — see Troubleshooting below.
The same image still runs MCP stdio mode by default — KUBECRAFT_MODE=http (or --http) opts into the web UI.
Provider configuration
Provider | Env vars |
Anthropic Claude (default) |
|
OpenAI |
|
Azure OpenAI |
|
The Settings page shows whether the active provider is configured and lists every supported provider.
Tool surface limits per provider
KubeCraft exposes 130+ tools, but OpenAI and Azure OpenAI cap tools at 128 entries per request (Anthropic has no practical limit). KubeCraft handles this transparently with a smart tool selector (kubecraft_mcp/llm/tool_selector.py):
Anthropic — receives every tool, every turn. No filtering.
OpenAI / Azure OpenAI — receives a relevant subset of ≤128 tools per turn, chosen by:
Always-include core (~15 tools): cluster discovery, diagnostics,
apply_manifest, etc.Category routing: keyword classifier on your most recent prompt + last few user messages → matches against a tool/category map.
Priority padding: any remaining slots are filled by global priority order (most universally useful tools first).
You'll see the selected count in the server log on every turn (e.g. Tool subset for openai: 128/130 tools). If the LLM ever says it can't find a tool you expected, rephrase with stronger keywords ("audit my RBAC for risky bindings" rather than "check permissions") to surface the right category.
Develop the UI locally
The UI lives at ui/ inside this repo (not a separate project). For local dev:
# Terminal 1 — Python backend
KUBECRAFT_MODE=http ANTHROPIC_API_KEY=... python -m kubecraft_mcp
# Terminal 2 — Vite dev server (proxies /api/* to :8080)
cd ui && npm install && npm run dev
# → http://localhost:5173For production builds, the Dockerfile bundles npm run build output into /app/ui/dist, served by FastAPI under /. No separate dev server needed.
Environment Variables
Variable | Description |
| Path to kubeconfig file |
| Directory for saving diagrams and 3D HTML files. Saved files are auto-opened in the default browser/viewer. Pre-created as |
| Optional bind for built-in 3D viewer URL. Loopback: |
| Set to |
| Cost analysis CPU rate (default: $0.031/vCPU-hr) |
| Cost analysis memory rate (default: $0.004/GiB-hr) |
| OpenTelemetry OTLP endpoint for trace export |
| ArgoCD server URL for sync/rollback actions (e.g. |
| ArgoCD API token for authenticated REST operations |
| Prometheus base URL for |
| Optional Bearer token for Prometheus |
| Optional basic auth for Prometheus (used instead of token when both are set) |
| Loki base URL for |
| Optional Bearer token for Loki |
| Optional basic auth for Loki |
| Optional |
| License key (overrides file-based license) |
| Email address for license registration |
|
|
| Bind address for web mode (default |
| Port for web mode (default |
| Optional label shown in the UI header to distinguish multiple deployments |
|
|
| Override the default model for the active provider |
| API key for Anthropic Claude provider |
| Optional Anthropic API base URL (proxies, mirrors) |
| API key for OpenAI provider |
| Optional OpenAI base URL (compatible endpoints, proxies) |
| Azure OpenAI configuration (deployment-based; |
| Comma-separated CORS allow-list for web mode (default |
Project Structure
kubecraft-mcp-server/
├── Dockerfile
├── pyproject.toml
├── kubecraft_mcp/
│ ├── server.py # MCP server entry point (140 tools)
│ ├── licensing.py # 30-day trial + commercial license management
│ ├── observability.py # OpenTelemetry tracing + server stats
│ ├── k8s/
│ │ ├── client.py # Kubernetes API client wrapper
│ │ ├── formatters.py # Resource formatting utilities
│ │ ├── mermaid.py # Mermaid diagram generation
│ │ ├── metrics_backend.py # Prometheus/Loki query backend
│ │ ├── renderer.py # Pillow-based PNG dashboard renderer
│ │ ├── topology_3d.py # Three.js 3D topology viewer + auto-open
│ │ ├── gpu_utils.py # GPU extended-resource detection helpers
│ │ ├── gpu_renderer.py # Pillow PNG dashboards for GPU allocation / metrics
│ │ └── logo_gen.py # Programmatic KubeCraft logo generator
│ └── tools/
│ ├── cluster.py # Cluster-level tools
│ ├── cleanup.py # Unused resource cleanup report
│ ├── cost.py # Cost analysis and rightsizing
│ ├── deprecation.py # API deprecation scanner
│ ├── diagnostics.py # Pod diagnostics and logs
│ ├── exec.py # Pod exec (command execution)
│ ├── gateway_api.py # Gateway API (HTTPRoute, GRPCRoute)
│ ├── gpu.py # GPU workloads, readiness, Prometheus, nvidia-smi
│ ├── health.py # Composite cluster health score
│ ├── helm.py # Helm integration
│ ├── management.py # Scale, restart, cordon, apply
│ ├── multicluster.py # Multi-cluster context management
│ ├── openshift.py # OpenShift-specific tools
│ ├── platform_posture.py # Storage, cert-manager, NetworkPolicy, endpoints
│ ├── policy_budgets.py # PodDisruptionBudget listing
│ ├── policy_engines.py # Kyverno / Gatekeeper policy summaries
│ ├── rbac_inspector.py # RBAC role/binding inspection
│ ├── access_control.py # RBAC YAML generators: grant_namespace_access, grant_resource_access, revoke_access
│ ├── compliance.py # Compliance audit report generator (CIS/SOC2/ISO27001/NIST/PCI/HIPAA → Markdown/PDF/DOCX)
│ ├── operators.py # CRD & operator essentials (10 tools)
│ ├── ingress_audit.py # Per-Ingress endpoint health + TLS cert decoding
│ ├── network_advanced.py # IngressClasses, service mesh, CNI, CoreDNS, reachability + Mermaid graph + pod reachability simulator
│ ├── render.py # Image rendering (PNG + 3D HTML + auto-open)
│ ├── resources.py # Resource listing and describe
│ ├── security_posture.py # PSS, SA audit, image vulns, secret hygiene
│ ├── storage_advanced.py # CSI drivers, VolumeSnapshots, storage capacity
│ ├── visualization.py # Mermaid text diagram tools
│ ├── wave3_observability.py # Prometheus and Loki query tools
│ ├── workloads.py # DaemonSet, StatefulSet, CronJob/Job, disruption
│ ├── argocd.py # ArgoCD integration (CRD + REST API)
│ ├── flux.py # Flux CD integration (CRD-based)
│ └── tekton.py # Tekton CI/CD integration (CRD-based)
├── kubecraft_mcp/llm/ # Multi-provider LLM bridge (web mode)
│ ├── base.py # Provider ABC + streaming event types
│ ├── tool_bridge.py # MCP tool → Anthropic/OpenAI tool_use translation
│ ├── anthropic_provider.py # Claude (default) — drives the tool_use loop
│ ├── openai_provider.py # OpenAI function calling
│ └── azure_provider.py # Azure OpenAI (deployment-based)
├── kubecraft_mcp/web/ # FastAPI HTTP/SSE server bundled with the chat UI
│ ├── app.py # FastAPI factory + uvicorn entry point
│ ├── storage.py # SQLite (sessions, messages, audit, saved)
│ ├── tool_runner.py # Async wrapper that executes any registered MCP tool
│ ├── static.py # Serves the built UI from /app/ui/dist
│ ├── templates_data.py # Curated template library (159 prompts × 27 categories)
│ └── routes/
│ ├── chat.py # POST /api/v1/ask (SSE streaming + tool orchestration)
│ ├── sessions.py # Session CRUD
│ ├── config.py # /api/v1/config (provider, instance metadata)
│ ├── audit.py # /api/v1/audit (tool invocation log)
│ ├── saved.py # Saved questions + suggested-questions starter prompts
│ ├── templates.py # /api/v1/templates (curated library)
│ ├── files.py # /api/v1/files (download exported reports / artifacts)
│ └── kubecraft.py # /api/v1/contexts, /api/v1/license, /api/v1/tools
├── kubecraft_mcp/__main__.py # Dispatcher: stdio (default) | http (KUBECRAFT_MODE=http)
├── ui/ # React/TypeScript chat UI (Vite + Tailwind + Zustand)
│ ├── src/
│ │ ├── App.tsx # Routes: /chat, /templates, /saved, /history, /audit, /settings
│ │ ├── pages/ # ChatPage, TemplatesPage, SavedPage, HistoryPage, AuditPage, SettingsPage
│ │ ├── components/ # Header, MessageCard, MarkdownView (highlight.js), ToolInvocationCard, SuggestionsPicker, ContextPicker, CopyButton
│ │ ├── store/chat.ts # Zustand chat store with streaming reducers
│ │ └── lib/{api,stream,format,copy,icons}.ts(x)
│ ├── package.json
│ ├── vite.config.ts # Proxies /api/* → :8080 in dev
│ └── tailwind.config.js # KubeCraft brand palette
└── .cursor/
└── mcp.json # Cursor MCP configurationTroubleshooting
Windows: "Permission denied" on /output (diagrams not saved)
If you see warnings like Permission denied: '/output/index.html' in the MCP server logs, diagrams still work inline but the optional file-save to your host directory fails. This is a Docker Desktop volume-mount permissions issue.
Fix: Ensure the host directory exists before starting the container:
mkdir C:\Users\<user>\kubecraft-diagramsThen confirm your config maps it correctly:
"-v", "C:\\Users\\<user>\\kubecraft-diagrams:/output"If the error persists, check that Docker Desktop has file-sharing access to the drive (Settings → Resources → File sharing). Alternatively, use a named Docker volume:
"-v", "kubecraft-output:/output"Note: Diagrams are always returned inline via MCP regardless of whether the file-save succeeds. The file-save is a convenience for hosts like Claude Desktop that don't render MCP images natively.
Diagrams don't auto-open in browser
Auto-open uses webbrowser.open() which requires the container to reach the host display. Inside Docker, this only works with X11 forwarding or host networking on Linux. On Windows/macOS Docker Desktop, open the saved files from your host-mounted KUBECRAFT_OUTPUT_DIR directory instead, or use the dashboard at <KUBECRAFT_OUTPUT_DIR>/index.html (auto-refreshes every 5 seconds).
Kubernetes API server unreachable (connection refused)
If tools fail with errors like:
HTTPSConnectionPool(host='127.0.0.1', port=53842): Max retries exceeded ...
[Errno 111] Connection refused…the cause is that your kubeconfig points to a localhost endpoint on the host (typical for kind, k3d, minikube, or kubectl proxy), but inside the container 127.0.0.1 is the container's own loopback — which has nothing listening.
Diagnose first:
kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}'
# → e.g. https://127.0.0.1:53842 ← that's the smoking gunFix on Linux / WSL2 — use host networking:
docker run --rm --network=host -e KUBECRAFT_MODE=http ... kubecraft-mcp:latest--network=host shares the container's network namespace with the host so 127.0.0.1:53842 resolves correctly. Note: with --network=host you don't need -p 8080:8080 (and Docker will reject combining the two).
Fix on Docker Desktop (Windows / macOS) — --network=host is a no-op:
⚠️ TLS gotcha: kind/k3d/minikube apiserver certificates have SANs only for
127.0.0.1,localhost, andkubernetes. After rewriting the URL tohost.docker.internal, Python rejects the cert withSSL: CERTIFICATE_VERIFY_FAILED — Hostname mismatch. You must therefore also disable TLS verification in the container-only kubeconfig copy. This is acceptable for local dev because these certs are self-signed anyway — but never do it for production clusters.
Add the host-gateway alias when you
docker run:docker run --rm -p 8080:8080 --add-host=host.docker.internal:host-gateway ...Make a container-only kubeconfig copy that rewrites the URL and turns off TLS verification:
# On the host: sed -e 's|https://127\.0\.0\.1:|https://host.docker.internal:|' \ -e '/certificate-authority-data:/d' \ ~/.kube/config > ~/.kube/config.docker sed -i 's|^\(\s*\)server: https://host.docker.internal|\1insecure-skip-tls-verify: true\n\1server: https://host.docker.internal|' \ ~/.kube/config.dockerMount the rewritten file:
docker run --rm -p 8080:8080 --add-host=host.docker.internal:host-gateway \ -v ~/.kube/config.docker:/home/mcp/.kube/config:ro \ -e KUBECRAFT_MODE=http -e ANTHROPIC_API_KEY=... \ kubecraft-mcp:latest
💡 WSL2 users: skip this section. WSL2's Docker engine supports
--network=hostnatively — use the Linux fix above. You keep proper TLS verification and your kubeconfig stays untouched.
Fix for remote clusters (EKS / AKS / GKE / OpenShift):
These already have routable hostnames, so this issue only affects local clusters. If you see it against a remote cluster, check whether your kubeconfig has been overridden by a kubectl proxy session.
Requirements
Docker
A kubeconfig with access to your target cluster
Cursor, Claude Desktop, Claude Code, or any MCP-compatible AI assistant
License
KubeCraft MCP Server is a commercial product by CloudCraft Labs.
30-day free trial — no credit card required
$200/year after trial — one license, unlimited clusters
Use
get_license_infoandregister_licensetools to manage your license
Available Tools
73 toolsargocd_detectDetect ArgoCDA
Detect whether ArgoCD is installed and report application/project counts and REST API config status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It accurately discloses that the tool checks installation, reports application/project counts, and REST API config status. However, it does not mention that it is read-only or has no side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the key verb and resource. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, no output schema, and no annotations, the description is adequately complete. It explains detection and reporting scope. Could be slightly more detailed on output format, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters with 100% schema coverage, so baseline is 4. No parameters to describe, so the description adds no param info, but this is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('detect') and resource ('ArgoCD installation'), and distinguishes from siblings like argocd_list_apps by focusing on installation presence and aggregated counts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for checking ArgoCD presence but does not explicitly state when to use this tool versus alternatives like argocd_list_apps or detect_operators. No guidance on when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
argocd_list_appsList ArgoCD ApplicationsB
List ArgoCD Applications with sync status, health, source repo, revision, and target namespace.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | ArgoCD namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only states what is listed but does not mention side effects, authentication requirements, rate limits, or pagination behavior. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the key action and resource. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema), the description is fairly complete in terms of purpose and return fields. However, it lacks usage context, error handling, and explicit completeness for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter fully described). The description adds that omitting namespace returns all namespaces, which adds a bit of context beyond the schema. However, no further elaboration on parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'List', the resource 'ArgoCD Applications', and includes specific fields returned (sync status, health, source repo, revision, target namespace). This distinguishes it from siblings like argocd_list_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as argocd_detect or argocd_list_projects. The description lacks context for usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
argocd_list_projectsList ArgoCD ProjectsA
List ArgoCD AppProjects with allowed source repos, destination namespaces, and role count.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states what the tool lists but discloses no behavioral traits (e.g., read-only, auth needs, rate limits). Minimal transparency beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 12 words, front-loaded with verb and resource. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless list tool, the description specifies output fields. Missing details like pagination, error conditions, or authentication requirements, but not critical for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline 4 applies per rules. Description mentions returned fields (source repos, dest namespaces, role count), which adds value but does not relate to parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'ArgoCD AppProjects', and specifies included fields (source repos, destination namespaces, role count). It distinguishes from siblings like argocd_list_apps (lists apps) and argocd_detect (detects presence).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool over alternatives. No prerequisites, context, or exclusions provided despite many sibling tools with overlapping domains.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
count_custom_resourcesCount Custom ResourcesA
Cluster-wide CR census: count instances of every CRD. Catches operator bloat — thousands of abandoned CronJobs, sprawling VirtualServices, stale ApplicationSets. Returns top N by count.
| Name | Required | Description | Default |
|---|---|---|---|
| group | No | Optional API group filter | |
| top_n | No | Show top N CRDs by count (default 50) | |
| min_count | No | Hide CRDs with fewer than N instances (default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses it's a cluster-wide scan that returns top N by count, but lacks details on performance, permissions, or whether it filters by namespace. The phrase 'Catches operator bloat' hints at behavioral intent but is not explicit about side effects or requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, focused sentences. First sentence states purpose, second gives usage context with concrete examples, third clarifies output format. No waste; front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a reporting tool with no output schema, the description explains the return is top N by count and gives usage context. It could benefit from specifying the output format (e.g., list of names with counts) but is sufficient for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all params described). The description adds 'Returns top N by count' reinforcing top_n's role, and mentions bloat detection which aligns with min_count. However, it doesn't provide additional meaning beyond what the schema already states, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb+resource: 'count instances of every CRD'. It distinguishes from siblings like list_crds (which lists CRDs without counts) by focusing on counting and returning top N. The phrase 'Cluster-wide CR census' reinforces scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use: 'Catches operator bloat' with examples (abandoned CronJobs, sprawling VirtualServices, stale ApplicationSets). This implies it's for detecting resource proliferation. No explicit exclusions or alternatives, but the sibling list shows related tools have different purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describe_crdDescribe a CRDA
Detail on a single CRD: full version list, conversion strategy, printer columns, subresources, validation summary, instance count per version, and risk flags (no schema, preserveUnknownFields, multi-version with no conversion webhook).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | CRD name (e.g. `applications.argoproj.io`) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It lists what is included (version list, conversion strategy, etc.) but does not disclose behavioral traits like read-only nature, performance implications, or authentication needs. The mention of 'risk flags' adds some behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that lists many details, making it slightly dense but still clear. It could be split into two sentences for readability, but it remains concise and front-loaded with the main action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the tool (multiple aspects listed) and no output schema, the description provides a fairly complete list of what is included. However, it does not specify the return format (e.g., JSON) or elaborate on the risk flags, leaving some gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description provides an example. The tool description does not add extra meaning beyond the schema, which is acceptable since the schema already explains the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides detailed information on a single CRD, listing specific aspects like version list, conversion strategy, printer columns, subresources, validation summary, instance count, and risk flags. It distinguishes from sibling tools like list_crds which only lists CRDs, and describe_resource which is generic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when detailed CRD info is needed, but does not explicitly state when not to use it or provide alternative tools. For example, if only instance counts are needed, count_custom_resources might be more appropriate, but no guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describe_resourceDescribe ResourceA
Return the full spec of a Kubernetes resource as YAML or JSON. Supported kinds: pod, service, deployment, replicaset, statefulset, daemonset, configmap, secret, ingress, namespace, node, persistentvolumeclaim.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Resource kind (e.g. 'pod', 'deployment') | |
| name | Yes | Resource name | |
| output | No | Output format (default: yaml) | yaml |
| namespace | No | Namespace (not needed for cluster-scoped resources) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. States it returns full spec as YAML/JSON and lists supported kinds, but omits error handling (e.g., resource not found), permissions, namespace behavior for cluster-scoped vs namespaced resources, and output format default. Partial disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with a list. Front-loaded main action. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately covers purpose and supported kinds. Lacks return format details, namespace scoping clarification, and error behavior. Given moderate complexity and no output schema, more detail would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage, baseline 3. Description adds value with an exhaustive list of supported kinds, helping the agent select valid values for 'kind'. Slightly beyond the example in schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Return' and resource 'full spec of a Kubernetes resource'. Lists 15 supported kinds explicitly, distinguishing it from sibling tools that list resources (e.g., list_pods) by focusing on a single resource's complete spec.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage: use when you need the full spec of a specific resource. No explicit when-to-use or when-not-to-use vs alternatives like get_cluster_info or list_resources.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_cniDetect CNI PluginA
Detect the cluster CNI plugin from node annotations, known DaemonSets (Calico, Cilium, Flannel, AWS VPC CNI, Azure CNI, Weave, Antrea, etc.), and pod CIDRs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must convey behavior. It explains the detection sources (annotations, DaemonSets, pod CIDRs), providing transparency into the logic. However, it doesn't mention side effects or permissions needed, which are minimal for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no filler, front-loaded with key information. Every word is essential.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and no output schema, the description adequately explains the detection method. It could mention the expected return value (e.g., CNI name) but is still complete enough for an agent to understand the tool's purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4. The description adds context about what the tool does, which is sufficient for a param-less tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a clear verb ('Detect'), resource ('cluster CNI plugin'), and methods ('from node annotations, known DaemonSets...'), distinguishing it from sibling detection tools like detect_operators or detect_service_mesh.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The purpose is implied, but missing when-not-to-use or prerequisite information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_operatorsDetect OperatorsA
Detect operators running on the cluster by combining signals: known API groups, OLM ClusterServiceVersions, Deployment naming patterns (*-operator, *-controller, *-manager), and operator-style labels. Reports each operator's source, managed CRDs, ServiceAccount, deployment health.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the detection methodology (signals) and output fields (source, managed CRDs, ServiceAccount, health). Does not explicitly state read-only nature or behavior when no operators found, but overall transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first describes detection method, second lists output fields. No unnecessary words, front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, description adequately covers what the tool does and what it reports. Could specify return format but lists key fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, schema coverage 100%, so baseline is 4. Description adds no param info as none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it detects operators using specific signals (API groups, OLM CSV, naming patterns, labels) and reports detailed fields. This distinguishes it from sibling detection tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for operator detection but does not explicitly guide when to use this tool vs alternatives like list_deployments or other detection tools. No exclusions or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_service_meshDetect Service MeshA
Detect installed service meshes (Istio, Linkerd, Cilium, Contour, Kuma, Consul Connect) by API groups. For Istio/Linkerd: shows namespace injection labels and sidecar container counts from a pod sample.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavior. It states detection by API groups and extra details for two meshes, but omits whether the operation is read-only, what permissions are needed, or what the output format is. This leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that front-load the purpose. Every sentence provides essential information—listing meshes and specifying additional output for two cases. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (zero parameters, no output schema), the description is moderately complete. It explains detection method and partial output details, but lacks a description of the return format and does not cover all supported meshes equally. A bit more context on output would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the baseline is 4. The description adds meaning beyond the schema by listing supported meshes and indicating added details for Istio/Linkerd, which compensates for the lack of parameter explanations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Detect' and resource 'installed service meshes', listing specific supported meshes like Istio, Linkerd, etc. It distinguishes itself from sibling detect tools (e.g., detect_cni) by targeting a different resource domain.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to check for service meshes, but it does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or prerequisites. The context of sibling detect tools helps, but explicit guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_corednsDiagnose CoreDNSA
Check CoreDNS deployment health: replica readiness, Corefile configuration (plugins, forwarding), kube-dns Service ClusterIP and endpoint count. Flags single-replica or degraded states.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description characterizes the tool as a checker ('Check', 'Flags') but does not explicitly state it is read-only or disclose any side effects. While it adds value beyond the empty annotations, it could be more explicit about permissions or potential impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the core purpose, and includes specific details without redundancy. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no parameters, the description covers key aspects of CoreDNS health but could benefit from mentioning expected output format or how flags are surfaced. Still, it is sufficient for a simple health check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters with 100% schema coverage. The description adds meaning by explaining the exact aspects checked, providing context that the schema alone cannot convey. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks CoreDNS deployment health, listing specific aspects like replica readiness, Corefile configuration, kube-dns Service ClusterIP, and endpoint count. This distinguishes it from siblings like dns_lookup or diagnose_pod.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for CoreDNS health diagnostics but does not explicitly state when to use this tool versus alternatives like dns_lookup or diagnose_pod. No exclusions or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
diagnose_podDiagnose PodA
Comprehensive pod diagnosis: status, conditions, container states, events, and recent logs in one call.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Pod name | |
| namespace | No | Namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the types of data returned but does not mention potential permissions, rate limits, or side effects. It is adequate but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, highly efficient, front-loaded with the key term 'comprehensive'. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description usefully lists the components returned (status, conditions, container states, events, logs). Lacks details on pagination or error handling, but sufficient for a diagnostic tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are explained in the schema. The description adds no additional meaning beyond what is already in the parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool performs comprehensive pod diagnosis, listing specific aspects like status, conditions, container states, events, and logs. This effectively distinguishes it from sibling tools such as get_pod_logs and get_events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use this tool (for a full overview) but does not explicitly state when not to use it or provide alternatives. Given numerous sibling tools, more explicit guidance would be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dns_lookupDNS Lookup (cluster view)A
Resolve a hostname from inside the cluster by execing nslookup/getent/python in a running pod. Compares cluster-DNS view to external DNS to detect split-horizon issues.
| Name | Required | Description | Default |
|---|---|---|---|
| hostname | Yes | Hostname to resolve | |
| record_type | No | DNS record type (default A) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals the method (execing nslookup/getent/python in a pod) and the comparison logic, which is helpful. However, with no annotations provided, the description carries the full burden. It does not mention potential side effects (e.g., resource usage, pod selection) or permission requirements, leaving some behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, concise and front-loaded. The first sentence states the core function, and the second provides the key distinguishing use case. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the description explains the tool's purpose and method, it omits details about the output format (e.g., does it return IPs, textual comparison results, etc.). Since there is no output schema, the description should fill this gap. The absence of output details makes it less complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with hostname and record_type already described. The description adds no extra meaning beyond the schema (e.g., format constraints, examples, or usage tips). Therefore, it meets the baseline but does not enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool resolves a hostname from inside the cluster using nslookup/getent/python in a running pod, and compares cluster-DNS to external DNS to detect split-horizon issues. It distinguishes itself from sibling tools like diagnose_coredns by focusing on this specific comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions detecting split-horizon issues, which gives a context for use, but it does not explicitly state when to use this tool versus alternatives (e.g., diagnose_coredns) or provide when-not-to-use guidance. The usage context is implied but not fully spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flux_detectDetect Flux CDA
Detect whether Flux CD is installed and report source/kustomization/helmrelease counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It clearly indicates a read-only operation (detect and report) with no hint of destructive side effects. The phrase 'report counts' suggests it does not modify state. This is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, every word adds value. Perfectly concise and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description adequately covers the core functionality. It could be more explicit about the output structure (e.g., 'returns JSON with boolean and counts'), but given the low complexity, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100% trivially. The description does not need to add parameter meaning. The baseline for 0-param tools is 4, and the description does not contradict or mislead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'detect' and resource 'Flux CD', and specifies the output (reports counts of sources, kustomizations, helmreleases). This distinguishes it from sibling tools like flux_list_sources which only list without detection or aggregated counts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus sibling tools like argocd_detect or flux_list_*. The description implies it's for checking Flux installation and getting summary counts, but does not state alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flux_list_helmreleasesList Flux HelmReleasesB
List Flux HelmReleases with ready status, chart name, version, release name, and values summary.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It implies read-only listing but doesn't explicitly state safety, non-destructiveness, or any constraints like pagination or rate limits. The 'values summary' phrase is vague.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the main action and lists the output fields. No unnecessary words; every part adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description covers the main purpose and output fields adequately. It could clarify 'values summary' but is otherwise sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers the single parameter 'namespace' with clear description. The tool description adds no additional meaning beyond what the schema provides. Schema description coverage is 100%, so baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Flux HelmReleases and specifies the information included: ready status, chart name, version, release name, and values summary. This distinguishes it from sibling tools like flux_list_kustomizations or flux_list_sources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives (e.g., helm_get_values for detailed values, or flux_list_kustomizations for other resources). No mention of when not to use it or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flux_list_kustomizationsList Flux KustomizationsA
List Flux Kustomizations with ready status, source reference, path, and last applied revision.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry behavioral disclosure. It implies a read operation (List) and mentions the fields returned, but does not discuss auth, rate limits, or behavior when namespace is omitted. Minimal but acceptable for a simple list.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 14 words, front-loaded with the verb and resource, no redundant information. Extremely efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description covers the core purpose and returned fields. While it omits details like pagination or default behavior, it is sufficient given the tool's low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter (namespace). The description does not add new parameter details beyond the schema. Baseline 3 is appropriate as the schema already handles parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists Flux Kustomizations, a specific resource, and enumerates the fields returned (ready status, source reference, path, last applied revision). This differentiates it from sibling tools like flux_list_sources or flux_list_helmreleases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The context is implied by the resource name, but no exclusions or alternative suggestions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
flux_list_sourcesList Flux SourcesA
List Flux GitRepositories and HelmRepositories with ready status, URL, and artifact revision.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but the description implies a safe read-only operation by stating it lists resources with status. It does not mention permissions, rate limits, or side effects. For a list tool, this is minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence that succinctly communicates the tool's purpose and output. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter (well-documented in schema) and no output schema, the description adequately explains the returned fields. It covers the essential information for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'namespace' is described in the schema (100% coverage). The description does not add additional context beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'List', the resource 'Flux GitRepositories and HelmRepositories', and the exact fields returned ('ready status, URL, and artifact revision'). This clearly distinguishes it from sibling tools like flux_list_helmreleases or generic list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives (e.g., flux_list_helmreleases, flux_list_kustomizations). The description does not mention exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cluster_infoGet Cluster InfoA
Return cluster version, node count, API server URL, and overall health status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that the tool performs a read operation and returns specific fields (version, node count, URL, health). It does not mention side effects or auth requirements, but the lack of action verbs suggests no modifications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that lists four key return items with no wasted words. It is appropriately front-loaded and every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description takes full responsibility for explaining what the tool returns. The listed fields (version, node count, API server URL, health status) provide a complete picture of cluster info for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the baseline is 4. The description adds value by explaining the return values beyond the empty schema, effectively documenting the output behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns specific cluster information (version, node count, API server URL, health status). It uses a specific verb-resource pair 'get cluster info' and is distinguishable from sibling tools like 'get_node_health' or 'list_nodes' which focus on different aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to retrieve cluster-level information, but does not explicitly state when to use it versus alternatives, nor does it mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_eventsGet EventsB
Fetch recent Kubernetes events, optionally filtered by namespace, resource, or type.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max events to return (default: 50) | |
| namespace | No | Filter by namespace (omit for all namespaces) | |
| event_type | No | Filter by event type | |
| resource_name | No | Filter to events involving this resource name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It only says 'Fetch recent Kubernetes events' without disclosing if the operation is read-only, what 'recent' means, or any side effects. There is no mention of pagination or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It could benefit from additional details like return format, but is appropriately concise for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no output schema, and no annotations, the description lacks context about return format, ordering, time range for 'recent', and what constitutes a 'resource'. The tool is relatively simple but still incomplete for an agent to use effectively without guessing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description lists the filter options aligning with schema properties. However, it adds only the word 'recent' beyond what the schema already provides via parameter descriptions and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Fetch' and resource 'Kubernetes events', and mentions optional filters (namespace, resource, type). This clearly distinguishes from sibling tools like list_pods or get_pod_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching events with filters, but does not explicitly state when to use this tool over alternatives or provide exclusions (e.g., 'For pod logs use get_pod_logs').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_gpu_promql_referenceGPU PromQL ReferenceA
Markdown reference for DCGM and common GPU-related PromQL examples (no live query). Pair with prometheus_query for execution.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It states 'no live query', indicating the tool is safe, read-only, and returns static markdown. It doesn't detail idempotency or permissions, but the key behavioral trait (no side effects) is communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that succinctly states the tool's purpose and usage. It is front-loaded with essential information, no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple reference tool with no parameters and no output schema, the description is complete. It explains the content (DCGM/GPU PromQL), the format (markdown), and the behavioral constraint (no live query). An agent can use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the schema covers 100%. The description adds meaning by specifying the content scope (DCGM and GPU PromQL examples). Baseline for 0 params is 4, and this is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool provides a markdown reference for DCGM and GPU-related PromQL examples. It specifies 'no live query', distinguishing it from execution tools. Among siblings, it stands out as a static reference, not a renderer or lister.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Pair with prometheus_query for execution', giving clear usage guidance on how to use this tool in conjunction with another. It implies that this tool is for reference, not execution, but does not explicitly exclude alternatives or provide when-not-to-use scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_license_infoLicense InformationA
Show current KubeCraft license status, type, expiry, hardware ID, email, and purchase/renewal instructions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It implies a read-only operation ('Show... status') without explicitly stating it is non-destructive. No mention of authentication, rate limits, or side effects, but the tool is simple enough that minimal disclosure is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that lists all relevant details without extraneous words. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description lists specific fields (status, type, expiry, etc.) which provides good context. Could mention output format, but not essential. Adequate for a simple status check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters (0 params), baseline 4. Description does not need to add parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it shows current KubeCraft license status, type, expiry, hardware ID, email, and purchase/renewal instructions. It uses a specific verb ('Show') and resource ('license status'), and distinguishes from sibling tool 'register_license' which handles registration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for viewing license info, but does not explicitly state when to use vs alternatives like 'register_license'. There is no guidance on prerequisites or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_node_healthGet Node HealthA
Structured node conditions (Ready, memory/disk/PID/network pressure) with unhealthy nodes first and short remediation hints. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses key behaviors: returns structured conditions, orders unhealthy first, includes remediation hints, and is read-only. Without annotations, this is good transparency. Mild ambiguity about whether it applies to all nodes or a specific node.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence packed with useful information: conditions type, order, hints, and safety. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Description adequately covers purpose and key features. Lacks explicit statement of whether it covers all nodes or a specific node, but for a zero-parameter tool, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description adds no parameter info, but none is needed. Baseline 4 justified by high coverage; no issues.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns structured node conditions (Ready, memory/disk/PID/network pressure) with unhealthy nodes first and short remediation hints. Distinguishes from sibling tools like list_nodes which likely only list nodes without detailed health.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies it's for diagnosing node health, but does not explicitly say when to use vs. alternatives (e.g., list_nodes). Lack of explicit when-not or alternative references, but context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pod_logsGet Pod LogsB
Fetch logs for a specific pod/container.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Pod name | |
| previous | No | Fetch logs from the previous container instance | |
| container | No | Container name (optional, required for multi-container pods) | |
| namespace | No | Namespace (default: 'default') | default |
| tail_lines | No | Number of lines from the end (default: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description does not disclose important behavioral traits such as output format, streaming behavior, or authentication requirements. It simply states the action without elaborating on side effects or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and to the point, making it easily scannable. It front-loads the core purpose without unnecessary details, though it could be slightly more informative without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of output schema and annotations, the description is insufficiently complete. It fails to explain return value structure, pagination, or whether logs are streamed or retrieved as a block. For a logs tool, these are critical details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all parameters. The tool description adds no additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Fetch logs') and the resource ('a specific pod/container'), making the tool's purpose immediately obvious. It differentiates from sibling tools since no other tool in the list explicitly fetches logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like diagnose_pod or list_pods. The description lacks context about prerequisites or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_resource_usageGet Resource UsageA
Fetch CPU/memory usage for pods via the metrics API (requires metrics-server).
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the dependency on the metrics-server but omits other behavioral traits like rate limits, data freshness, or response structure. The dependency clue is useful but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, directly conveys the core purpose and a key prerequisite, and is front-loaded with the action and resource. Every word is justified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description provides enough context: what it returns (CPU/memory usage), the source (metrics API), and a dependency. Minor gap: no mention of return format, but this is standard for such tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter (namespace) already well-described in the schema. The description adds no extra meaning beyond what the schema provides, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'fetch' and the resource 'CPU/memory usage for pods', and distinguishes from sibling tools like list_pods or describe_resource by specifying the metrics API source.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite ('requires metrics-server') but does not provide explicit guidance on when to use this tool versus alternatives, nor does it include exclusions or context cues for when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_server_statsGet Server StatsA
Return KubeCraft MCP server stats: total calls, errors, average latency per tool, and uptime.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It states the tool returns stats (read-only), but does not disclose auth requirements, rate limiting, or potential side effects. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 14 words, well-structured and front-loaded with action and output details. No unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple stat tool with no parameters and no output schema, description lists all return fields. Could mention whether stats are real-time or cached, but overall complete for its simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so schema coverage is 100% (vacuously). Description adds no parameter info, but none needed. Baseline 4 for no parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'return' and resource 'KubeCraft MCP server stats', and lists specific fields (total calls, errors, average latency per tool, uptime). It is distinct from sibling tools that focus on cluster resources or diagnostics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or alternatives. The description implies it is for server health monitoring, but does not specify when not to use or compare with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gpu_cluster_readinessGPU Cluster ReadinessC
Heuristic scan for GPU device plugins, GPU operator workloads, and GPU-related CRDs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully convey behavior. It only says 'heuristic scan' without explaining what actions it performs (e.g., API calls, checks), whether it has side effects, or what the output means. The term 'heuristic' implies non-exhaustive, but no specifics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that covers the essential purpose without fluff. It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no parameters, the description lacks information about output format, return values, or how to interpret results. As a diagnostic scan tool, it should indicate what a successful scan vs. issues looks like. No output schema exists to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and schema description coverage is 100% (empty). Per guidelines, baseline is 3 as the description adds no parameter meaning beyond the schema, which is already complete for zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a heuristic scan focusing on GPU device plugins, GPU operator workloads, and GPU-related CRDs. It distinguishes itself from sibling tools like list_gpu_workloads by indicating a readiness check rather than a simple listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., list_gpu_workloads, diagnose_pod). It does not mention prerequisites or context for running the scan.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
helm_get_valuesGet Helm Release ValuesB
Show user-supplied values for a specific Helm release.
| Name | Required | Description | Default |
|---|---|---|---|
| release | Yes | Helm release name | |
| namespace | No | Namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It only states 'Show user-supplied values' without disclosing whether it queries the cluster, requires read permissions, or the output format. The agent lacks insight into side effects or response structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no filler. It is appropriately front-loaded, but could be slightly expanded without losing conciseness to improve other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without annotations or output schema, the description is too brief to fully inform an agent. It omits return format, potential errors, and how it differs from sibling tools. More context is needed for a complete understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema's parameter descriptions. It neither clarifies nor extends the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the verb 'Show' and the resource 'user-supplied values for a specific Helm release', clearly communicating what the tool does. It distinguishes from sibling tools like 'helm_list' which likely lists releases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives. It does not mention prerequisites (e.g., release must exist), when not to use it, or comparison with related tools like 'helm_list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
helm_listList Helm ReleasesB
List Helm releases with status, chart, app version, and revision number.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) | |
| all_namespaces | No | List across all namespaces (default: true when namespace is omitted) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must fully disclose behavior. It only states what is listed, without mentioning scope (e.g., cluster-wide by default), or any side effects. For a simple list tool this is minimal but acceptable, yet lacks detail about what happens with missing namespace or default behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise sentence that efficiently conveys purpose and output. It is front-loaded with the verb and resource. Slight room for improvement by grouping related info, but overall well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description usefully lists the fields returned. It implies a list result. For a tool with only two simple parameters, this is sufficient, though it could mention that releases are from the current cluster context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; it mentions output fields but not parameter details. No additional value for parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'Helm releases', and specifies the output fields (status, chart, app version, revision). This distinguishes it from siblings like 'flux_list_helmreleases' which lists Flux-managed releases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'helm_get_values' or other list tools. No when-not-to-use or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_rbacInspect RBACA
Read-only RBAC review: heuristics for risky ClusterRole/Role rules (wildcards, escalate/bind/impersonate) and a sample of ClusterRoleBindings.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | If set, limit risky Role scanning to this namespace; ClusterRoles are always scanned cluster-wide |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It declares read-only nature and heuristic approach, which is good. However, it does not mention permission requirements, output format, or that bindings are a sample (not exhaustive).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys key information. It is not verbose and front-loads the read-only nature and purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description should clarify return format. It mentions 'sample of ClusterRoleBindings' but omits details about Role/ClusterRole findings. For a moderate-complexity tool, this is adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for the `namespace` parameter. The tool description adds context that Roles are limited only if namespace is set, which aligns with the schema. Baseline 3 is appropriate as little additional value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs a read-only RBAC review, specifically targeting risky ClusterRole/Role rules and a sample of ClusterRoleBindings. This distinguishes it from sibling tools, none of which focus on RBAC auditing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for security reviews but does not explicitly state when to use versus alternatives. No sibling tool duplicates RBAC functionality, so guidance is adequate but could be more direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_contextsList Kubeconfig ContextsA
List all kubeconfig contexts with cluster, user, namespace, and which is active.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It accurately portrays a read-only list operation with no destructive side effects. However, it does not disclose edge cases (e.g., missing kubeconfig, empty results) which would enhance transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with the action ('List all kubeconfig contexts'), and includes key details. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter tool with no output schema, the description fully explains what is listed and the details returned. No gaps in understanding the tool's function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so schema coverage is 100%. The description adds no parameter information (none needed), but it does list the output fields, which indirectly clarifies that the tool returns structured data. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all kubeconfig contexts, specifying the fields (cluster, user, namespace, active status). This is a specific verb+resource, and it distinguishes from sibling tools like 'switch_context' which perform different actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives like 'switch_context'. The description does not mention prerequisites, context security, or conditions for usage. Users are left to infer the tool's role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_crdsList CustomResourceDefinitionsA
Inventory every CRD with group, kind, scope, served versions, stored version, age, and an owner hint (Helm release / OLM CSV / known operator). Optional count_instances includes per-CRD instance counts (slower).
| Name | Required | Description | Default |
|---|---|---|---|
| group | No | Optional API group filter (e.g. `argoproj.io`) | |
| count_instances | No | Include per-CRD instance counts (slower) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it retrieves all CRDs with detailed fields and notes that including instance counts is slower. Since no annotations are provided, the description carries the full burden for behavioral transparency, which it meets adequately.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences concisely convey the output and the optional parameter with its trade-off. No redundant information, and it is front-loaded with the main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a listing tool with two parameters and no output schema, the description covers the return fields and the optional parameter's behavior adequately. It is complete enough for an agent to decide whether to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaning beyond the schema by describing what 'count_instances' does and that it is slower, which aids decision-making. The schema already covers both parameters, so the description enhances rather than repeats.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it inventories every CRD with specific fields (group, kind, scope, versions, age, owner hint), distinguishing it from sibling tools like 'describe_crd' which focus on a single CRD. The verb 'inventory' is specific and matches the tool's action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context about the optional 'count_instances' parameter and its performance impact. While it doesn't explicitly contrast with alternatives, the scope of listing all CRDs is well-defined, and the cost annotation guides usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cronjobsList CronJobsA
List CronJobs with schedule, suspend status, active job count, and last schedule time. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states 'Read-only', which is a key behavioral trait. Without annotations, the description carries the burden of disclosure, but it does not mention potential side effects, permission requirements, error behavior, or performance characteristics. For a simple read-only list tool, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise, front-loaded sentences. The first sentence states the purpose and return fields, the second provides usage guidance and a behavioral note. No unnecessary words, every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description sufficiently explains the return values (schedule, suspend status, etc.) and usage. It covers the essential context needed for selection and invocation, including read-only behavior and namespace handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes the namespace parameter with 'omit for all namespaces'. The description repeats this, adding no new semantic information. Since schema_description_coverage is 100%, the baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List', the resource 'CronJobs', and specifies the fields returned (schedule, suspend status, active job count, last schedule time). This adequately distinguishes the tool from sibling list tools like list_jobs or list_deployments.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Omit namespace for all namespaces', providing clear guidance on when to include or omit the namespace parameter. However, it does not explicitly state alternatives or when not to use this tool, which would be helpful given many sibling list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_csi_driversList CSI DriversA
List installed CSI drivers with their capabilities (attach, capacity tracking, pod info, fsGroup policy) and per-node registration status from CSINode objects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It states the source (CSINode objects) but does not disclose read-only nature, permission requirements, or performance characteristics. As a simple list operation, this is minimally adequate but could be improved.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and clearly states what is listed. Every word contributes meaning; no unnecessary content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no parameters, no annotations, no output schema). The description covers the purpose but lacks context about output format, possible results, or when to use. For a list tool among many siblings, more context would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters (100% coverage), so description need not explain params. It adds value by detailing the output (capabilities, registration status) beyond schema. Baseline for zero params is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists installed CSI drivers including capabilities and per-node registration status from CSINode objects. It uses a specific verb ('list') and resource ('CSI drivers'), distinguishing it from sibling list tools that target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like list_storage_overview or list_resources. The description does not mention context, prerequisites, or trade-offs, leaving the AI agent without clear usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_daemonsetsList DaemonSetsA
List DaemonSets with desired/ready/available/updated counts, node selector, and update strategy. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It explicitly states 'Read-only' and outlines the return fields, providing good behavioral context for a simple list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence front-loads the purpose and includes essential details without any waste. Highly concise and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description specifies the key fields returned, making it fairly complete for a list tool. Some details like pagination are missing but are not critical for a Kubernetes DaemonSet list.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (namespace) with full schema coverage. The description echoes the schema's 'omit for all namespaces' hint, adding minimal additional meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource (DaemonSets) and the specific information returned (counts, node selector, update strategy). It differentiates from sibling list tools by mentioning DaemonSet-specific fields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a specific usage note for the namespace parameter (omit for all namespaces) but lacks explicit guidance on when to use this tool versus alternatives. Usage context is implied for Kubernetes experts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_deploymentsList DeploymentsA
List deployments in a namespace with replica counts, strategy, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. The verb 'List' implies a read-only operation, but the description does not disclose any behavioral traits such as authentication requirements, error conditions, or pagination. It is adequate for a simple list tool but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately conveys the action and resource. It is front-loaded with the verb and resource, with no unnecessary words. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is nearly complete. It covers what the tool lists and which fields are included. Minor omissions like context of current kubeconfig or pagination are not critical for this straightforward list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'namespace', including its default value. The description adds the context 'in a namespace' but does not provide additional semantics beyond what is already in the schema. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb 'List' and resource 'deployments', and mentions the specific output fields (replica counts, strategy, age). This clearly distinguishes it from sibling list tools targeting different resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool over alternatives, nor does it provide exclusions or prerequisites. However, the context of sibling tools makes it clear that this is for listing Kubernetes deployments specifically. It is minimally viable but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_gateway_apiList Gateway API ResourcesA
If gateway.networking.k8s.io is installed, list Gateways, HTTPRoutes, and GRPCRoutes. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit to search all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral context: 'Read-only' indicates no side effects, and 'Omit namespace for all namespaces' clarifies the scope. Since no annotations are provided, the description carries full burden, and it does so effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous information. The first sentence states the condition and action; the second clarifies namespace behavior and read-only nature. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single parameter, no output schema, and a list of sibling tools, the description provides all necessary information: the specific resources, the namespace usage, and the read-only guarantee. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 100% for the single parameter. The description reinforces the namespace behavior already present in the schema, providing no additional parameter-level details. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('list'), the specific resources ('Gateways, HTTPRoutes, and GRPCRoutes'), and a condition for use ('If gateway.networking.k8s.io is installed'). This distinguishes it from sibling list tools like list_pods or list_services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool (when the CRD is installed) and implies namespace behavior. It does not mention alternatives or when not to use, but the specificity of the tool name and resources makes it clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_gpu_workloadsList GPU WorkloadsA
List pods that request or limit GPU extended resources (e.g. nvidia.com/gpu) with node, phase, requests, and limits.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description fails to disclose whether the operation is read-only or any required permissions. It only states what it lists but not behavioral traits like safety or performance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys purpose, resource, and output fields. No verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential purpose and output fields, but lacks additional context such as default namespace behavior or output structure details. Given the simplicity of the tool, it is minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full description for the only parameter 'namespace'. The description adds no additional parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists pods that request or limit GPU extended resources, with example resource (nvidia.com/gpu) and output fields (node, phase, requests, limits). This differentiates it from generic list_pods and other list tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing GPU-requesting pods, but does not provide explicit guidance on when to prefer this over list_pods or other list tools. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_hpasList HPAsA
List HorizontalPodAutoscalers with scaling target, min/max/current replicas, metrics, and current utilization.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It implies a read operation but does not mention permissions, pagination, or performance characteristics. It is adequate but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the tool's purpose without unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one optional parameter and no output schema, the description fully covers what the tool does and what fields it returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'namespace' already has full schema coverage with a clear description. The tool description adds nothing beyond that, so it meets the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'HorizontalPodAutoscalers' and lists the specific fields returned, effectively distinguishing it from sibling tools which target different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as other list tools for different resources. The description lacks explicit context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ingress_classesList Ingress ClassesA
List IngressClass resources with controller, default status, and parameter references. Identifies which IngressClass is the cluster default.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description only mentions listing and identifying defaults. Does not disclose safety or potential side effects, though for a list tool it's minimally adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no wasted words, front-loading the main purpose and key feature.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Sufficient for a simple list tool with no output schema or parameters, though could note it's a read-only operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so schema coverage is 100%. Description doesn't need to add parameter info, but could explicitly state no arguments required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists IngressClass resources and identifies the cluster default, which distinguishes it from siblings like list_ingresses.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The purpose is clear but lacks when-not or hints about context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ingressesList IngressesA
List ingress resources in a namespace with hosts, paths, and TLS config.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only states it 'list's ingresses, but fails to disclose any behavioral traits such as read-only nature, pagination, authentication needs, or side effects. This is insufficient for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that quickly and efficiently communicates the tool's purpose. Every word serves a purpose; no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool is simple (1 param, no output schema, no annotations), the description is adequate but lacks behavioral context like whether it lists all ingresses or paginates. It meets minimum viability but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single parameter 'namespace'. The tool description does not add extra meaning beyond the schema. Per guidelines, high coverage yields baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', the resource 'ingress resources', the scope 'in a namespace', and the included fields 'hosts, paths, and TLS config'. This is specific and distinguishes it from sibling tools like list_ingress_classes or list_services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing to list ingresses with specific fields, but provides no explicit guidance on when to use this tool vs alternatives, nor any exclusions or when-not scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_jobsList JobsA
List Jobs with completion status, duration, and succeeded/failed counts. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states 'Read-only', which is critical since no annotations are provided. It also outlines output fields, giving good insight into the tool's behavior. However, it omits potential details like pagination or timeout limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences totaling 17 words. Every word contributes to understanding the tool's purpose, usage, and behavior with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional param, no output schema), the description adequately covers purpose, usage hint, read-only nature, and output fields. It is nearly complete; including an explicit mention of the return format (e.g., a list) would push it to a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter (namespace) is already well-described in the input schema (100% coverage). The description adds marginal value by reiterating the behavior for omission, but does not provide additional semantic meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists Jobs and specifies the data it provides (completion status, duration, counts). It distinguishes from sibling list tools that focus on other resources (e.g., list_cronjobs) or higher-level abstractions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint ('Omit namespace for all namespaces') but does not compare to or exclude sibling tools like list_cronjobs or other list operations. No explicit when-to-use or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_namespacesList NamespacesA
List all namespaces with status, age, and labels.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description should disclose permissions, output format, or pagination. Only states it lists, missing behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no waste, front-loaded with key info. Efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a parameterless list tool without output schema. Could mention output format but not required.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist and schema coverage is 100%, so description adds no param info. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'list' and resource 'namespaces', specifies fields returned (status, age, labels). Distinguishes from sibling list tools like list_pods or list_services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or not use this tool. For a simple list, it's implied but could mention that other tools provide filtering.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_nodesList NodesA
List cluster nodes with roles, status, capacity, and allocatable resources.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It only states what is listed but does not mention whether the operation is read-only, requires specific permissions, or has any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that is front-loaded and contains no extraneous words. It efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description adequately conveys what the tool does. It could optionally mention the output format, but it is sufficiently complete given the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, so the description does not need parameter details. However, it adds meaning by specifying the output fields (roles, status, capacity, allocatable resources), which is helpful beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'list' and the resource 'cluster nodes', and specifies the returned information (roles, status, capacity, allocatable resources). It is distinct from sibling tools that list other resources like pods or services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like list_pods or list_services. The description implies it is for getting node information but does not offer context for usage decisions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pod_disruption_budgetsList PodDisruptionBudgetsA
List PDBs with minAvailable/maxUnavailable and current vs desired healthy pods. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for cluster-wide list) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly declares it is read-only and describes the data returned. With no annotations, it fully covers behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loaded with the verb and key output details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list tool with one optional parameter, the description covers purpose, usage, and safety completely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description reiterates the namespace parameter's behavior (omit for all namespaces) but does not add meaningful new detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists PDBs with specific fields (minAvailable/maxUnavailable, current vs desired healthy pods). It is a specific verb+resource and distinguishes from sibling list tools like list_pods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context: omit namespace for all namespaces. While it does not explicitly mention alternatives, the usage is self-evident for PDBs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_podsList PodsA
List pods in a namespace with status, restarts, age, and container images.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
| label_selector | No | Optional label selector (e.g. 'app=nginx') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It implies read-only behavior via 'List' but does not explicitly state idempotency, permissions, or error handling. The mention of returned fields adds some value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, 13 words. Front-loaded with verb and resource, no filler. Extremely concise and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no output schema, the description adequately explains the returned fields. It could mention that the tool is for Kubernetes, but the sibling context makes that clear. Overall, complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters. The description adds no extra meaning beyond the schema, yielding a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('List') and the resource ('pods'), and specifies the output fields ('status, restarts, age, and container images'). It distinguishes the tool from siblings like list_deployments or list_services by focusing on pods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives (e.g., diagnose_pod, describe_resource). No when-to-use or when-not-to-use context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_resource_quotasList Resource QuotasB
List ResourceQuotas showing used vs hard limits, and LimitRanges showing min/max/default resource constraints per namespace.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description does not disclose behavioral traits such as permissions needed, whether it lists all namespaces if parameter omitted, or pagination behavior. It only states what it does, not how it behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence of about 20 words, front-loaded with the key action. It is efficient but could be slightly more detailed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description provides adequate information about what it lists. However, it lacks details on output format or behavior for missing namespace, leaving some gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema documentation covers the namespace parameter fully (100% coverage). The description does not add additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists ResourceQuotas and LimitRanges, specifying the information shown (used vs hard limits, min/max/default constraints). It distinguishes from many sibling list tools focused on other resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. There are many list_ tools, but the description does not provide context on when to choose this over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_resourcesList Resources (Generic)B
Generic resource lister — fetches any Kubernetes resource by kind and API version.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Resource kind (e.g. 'CronJob', 'HorizontalPodAutoscaler') | |
| namespace | No | Namespace (omit for cluster-scoped resources) | |
| api_version | No | API version (default: 'v1', e.g. 'batch/v1', 'apps/v1') | v1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'fetches,' indicating a read operation, but provides no details on potential side effects, authentication requirements, rate limits, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the essential context 'Generic resource lister.' It is concise without wasted words, though it could be slightly more informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the schema covers all parameters and there is no output schema, the description provides the minimal context needed to understand the tool's purpose. However, it lacks details on return values, scope (cluster vs. namespace), and edge cases, making it adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage of parameter descriptions, so the baseline is 3. The description mentions 'kind' and 'API version' but adds no additional meaning beyond the schema, such as format or constraints for the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a 'Generic resource lister' and specifies the action: 'fetches any Kubernetes resource by kind and API version.' This distinguishes it from the many sibling tools that list specific resource types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it should be used when a specific lister is not available, but it does not explicitly state when to use or not use this tool, nor does it mention alternatives. The context is clear but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_servicesList ServicesA
List services in a namespace with type, cluster IP, ports, and selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It implies a read operation by listing services but does not explicitly state that it is non-destructive, nor does it disclose pagination, filtering, or permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single 12-word sentence that is front-loaded and contains no superfluous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no output schema, the description is adequate but lacks details on scope (all services in namespace?), error handling, or authentication. It does list the returned fields, which is helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the schema already provides a clear description for the 'namespace' parameter. The tool description adds no additional meaning beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', the resource 'services', and the scope 'in a namespace'. It also lists the fields returned (type, cluster IP, ports, selectors), which distinguishes it from other list_* tools in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as 'describe_resource' for detailed info or other list tools. There is no mention of prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_statefulsetsList StatefulSetsA
List StatefulSets with ready/updated/current counts, update strategy, and headless service name. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral disclosure. It states the tool is read-only and lists what it returns. However, it lacks details on authorization requirements, default behavior (e.g., default namespace if omitted), or potential limits (e.g., pagination). This is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the tool's purpose and output, followed by a usage hint. Every word is necessary, with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description covers the essential purpose, output details, and namespace behavior. It misses only minor context like default behavior or error scenarios, but overall it is sufficiently complete for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the schema already documenting the namespace parameter and its optionality. The description merely repeats 'Omit namespace for all namespaces,' adding no new meaning beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the verb 'List' and the resource 'StatefulSets', and lists the returned information (ready/updated/current counts, update strategy, headless service name). It also explains the behavior of omitting namespace, distinguishing it from sibling tools like list_deployments or list_pods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage guideline: 'Omit namespace for all namespaces.' It also marks the tool as 'Read-only,' implying safe use. However, it does not explicitly state when to use this tool versus alternatives or mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_storage_overviewList Storage OverviewA
StorageClasses, PVCs, PVs, and VolumeAttachments with phase flags (Pending/Lost, Released/Unbound). Omit namespace to list PVCs in all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | If set, only list PVCs in this namespace (other sections stay cluster-wide) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses it is read-only and lists multiple resource types with phase flags. Since no annotations are provided, the description carries the full burden and adequately conveys the safe, non-destructive nature of the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It front-loads the main resources and critical behavior, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description does not detail return format but mentions phase flags, which is helpful. For a simple list tool with one optional parameter, the description is sufficiently complete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter is already well-documented. The description adds minimal extra meaning beyond what the schema provides ('If set, only list PVCs in this namespace'), essentially paraphrasing it. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists StorageClasses, PVCs, PVs, and VolumeAttachments with phase flags. It uses a specific verb (list) and resource (storage overview) and distinguishes from sibling tools that list other resources (e.g., pods, services).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage guidance by explaining how the namespace parameter affects PVC listing ('Omit namespace to list PVCs in all namespaces'). It lacks explicit when-to-use vs alternatives, but no sibling tool covers this specific storage overview.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
openshift_detectDetect OpenShift ClusterA
Detect whether the cluster is OpenShift and return OCP version, console URL, and registered OpenShift API groups. Works on any cluster.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It mentions read-only returns but lacks explicit statements about destructiveness, authentication needs, or side effects. The return structure is partially described but could be more precise.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no unnecessary words. Every sentence serves a purpose: one for the return values, one for the scope (works on any cluster).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description partially explains the output (version, URL, API groups) but does not specify the return format, error behavior (e.g., when not OpenShift), or whether results are returned as a JSON object. Still mostly complete for a simple detection tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, and schema description coverage is 100%, so the description adds no value beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool detects if the cluster is OpenShift and specifies the returned information (OCP version, console URL, registered API groups). It distinguishes from sibling detect tools (e.g., argocd_detect) by focusing on OpenShift detection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking OpenShift presence, but does not explicitly provide when-to-use vs alternative detect tools or when not to use. Context is clear but no exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
openshift_list_buildsList OpenShift BuildConfigsA
List OpenShift BuildConfigs with build strategy, source type, git URI, and build count. Returns a compatibility notice on non-OpenShift clusters.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool returns a compatibility notice on non-OpenShift clusters, which is a key behavioral trait. However, it does not mention pagination, ordering, or any rate limits, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no superfluous content, front-loading the core functionality and a key behavior note. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter and no output schema, the description covers the essential information: what is listed (fields), and a notable behavior (compat notice). Minor details like sort order or output format are omitted, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage for the single 'namespace' parameter, so the description does not add extra meaning beyond the schema. The baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists OpenShift BuildConfigs with specific fields (build strategy, source type, git URI, build count), providing a specific verb and resource that distinguishes it from sibling tools like openshift_list_projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for listing OpenShift BuildConfigs, but does not explicitly state when to use this tool over alternatives or provide exclusions. It mentions a compatibility notice on non-OpenShift clusters, giving some context, but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
openshift_list_projectsList OpenShift ProjectsA
List OpenShift Projects with status, requester, and display name. Returns a compatibility notice on non-OpenShift clusters.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description is the sole source of behavioral info. It discloses the output fields and the compatibility notice, but does not mention read-only nature or permission requirements. Adequate but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. Every part adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and zero parameters, the description sufficiently explains the return values (status, requester, display name) and a special note about compatibility on non-OpenShift clusters. Complete for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 0 parameters (100% coverage), so the description does not need to add parameter info. Baseline score of 4 is appropriate as per guidelines for zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', the resource 'OpenShift Projects', and specifies the returned fields (status, requester, display name). It distinguishes this tool from sibling list tools by focusing on OpenShift-specific projects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like list_namespaces. The description implies it is for OpenShift projects and mentions a compatibility notice, but lacks direct usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
openshift_list_routesList OpenShift RoutesA
List OpenShift Routes with host, path, TLS termination, and target service. Returns a compatibility notice on non-OpenShift clusters.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions compatibility notice on non-OpenShift clusters, adding behavioral context. Could disclose pagination or permissions but satisfactory for a simple list tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no unnecessary words. Gets straight to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list tool with one parameter, no output schema, and no annotations, the description is fairly complete: it states what is listed and a behavioral note. Missing details on return format or pagination, but acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter 'namespace' with 100% schema coverage. Description does not add beyond schema's 'Namespace (omit for all namespaces)'. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'List' and resource 'OpenShift Routes' with key fields (host, path, TLS termination, target service). Distinct from siblings like list_services or list_resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage for listing routes but no explicit when-to-use or when-not-to-use compared to similar list tools. Lacks alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
register_licenseRegister LicenseA
Register or update your email address and optionally apply a new license key. Binds the license to the current machine's hardware fingerprint. Works even when the license is expired.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Your email address to associate with this license | ||
| license_key | No | Optional new license key to apply (replaces existing token) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits: it binds to the machine's hardware fingerprint and works even with an expired license. No annotations exist, so this description carries the full burden. It does not mention error handling or side effects, but the disclosed behaviors are significant.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, consisting of two sentences with no wasted words. It front-loads the main purpose and adds important constraints efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of annotations and output schema, the description covers the core functionality and key constraints. It lacks information about return values or success/error signals, which would improve completeness, but is still adequate for most uses.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters with 100% coverage. The description adds context about hardware binding but does not provide additional semantic details for the parameters themselves beyond what the schema offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool registers or updates email and optionally applies a license key. It specifies the binding to hardware fingerprint and that it works with expired licenses, distinguishing it from sibling tools which are all Kubernetes-related.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates usage for registration or update, covering both cases. It does not explicitly state when not to use or compare to alternatives, but no sibling license tools exist, making it clear this is the sole tool for licensing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_app_architectureRender App Architecture (PNG)A
Render the full KubeOrch-style app architecture as a PNG image. Shows Ingress → Service → Deployment → Pod plus ConfigMaps, Secrets, PVCs.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace to render (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description bears full responsibility. It states the tool generates a PNG image but does not disclose potential side effects (though likely none), performance characteristics, or output details beyond the image format. A read-only rendering is implied, but not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no redundant information. The first sentence states the action and output type; the second enumerates key components. Extremely concise and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity (1 optional parameter, no output schema), the description adequately covers the tool's behavior and output. It specifies what is rendered and in what format, though it could mention that the tool is read-only or non-destructive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (1 parameter 'namespace' already described with default and description). The tool description adds no additional meaning or context for this parameter beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool renders a KubeOrch-style app architecture as a PNG image, listing specific components (Ingress, Service, Deployment, Pod, ConfigMaps, Secrets, PVCs). This uniquely identifies its purpose among sibling tools like render_cluster_topology or render_namespace.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like render_cluster_topology or visualize_app_architecture. There is no mention of prerequisites, suitable scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_cluster_topologyRender Cluster Topology (PNG)A
Render the cluster topology diagram as a PNG image. Shows nodes, namespaces, and pod distribution as a visual image.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It states what the diagram shows but does not mention whether it queries the live cluster, performance implications, permissions required, or output format details (e.g., file vs base64). The description adds some context but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. The key information (output format and content) is front-loaded. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no annotations and no output schema, the description adequately explains what the tool does and what it shows. However, it could mention how the output is returned (e.g., as a file or inline image) to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so schema coverage is 100% trivially. The description does not need to add parameter semantics, earning a baseline of 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it renders the cluster topology diagram as a PNG image, specifying the resource (cluster topology) and output format. It distinguishes from sibling visualization tools like render_app_architecture or render_gpu_dashboard by mentioning nodes, namespaces, and pod distribution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool over alternatives. The description implies usage for viewing cluster topology visually, but does not mention when not to use it or provide sibling differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_gpu_dashboardRender GPU Allocation Dashboard (PNG)A
Render a PNG dashboard of GPU extended resources per node (allocatable) vs sum of pod requests. Requires nodes with GPU resources or workloads requesting GPUs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool renders a PNG dashboard, implying a read-only operation, but does not elaborate on side effects, authentication needs, or performance impacts. The prerequisite is mentioned, but broader behavioral traits are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first clearly states purpose and output format, the second adds a necessary prerequisite. Every sentence is essential; there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, no output schema, and no annotations, the description covers the basic purpose and a prerequisite. However, it does not explain how the output is delivered (e.g., image data vs. URL) or provide any usage examples. It is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The baseline is 3 per guidelines. The description adds no parameter information because none exist, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it renders a PNG dashboard comparing GPU extended resources per node versus pod requests. It uses specific verbs ('Render') and resource ('dashboard'), and distinguishes from siblings like 'render_gpu_metrics' and 'render_gpu_sparkline' which serve different visualization purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite ('Requires nodes with GPU resources or workloads requesting GPUs'), guiding when to use the tool. While it does not explicitly mention when not to use or list alternatives, the context is sufficient for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_gpu_metricsRender GPU Utilization Chart (PNG)A
Render a PNG bar chart from Prometheus DCGM metric DCGM_FI_DEV_GPU_UTIL. Requires KUBECRAFT_PROMETHEUS_URL and DCGM exporter.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions prerequisites but does not disclose behavioral traits such as whether it performs live queries, what happens if the metric is unavailable, or any side effects. The agent has limited understanding of tool behavior beyond the basic render action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence of 13 words. It front-loads the key purpose ('Render a PNG bar chart...') and includes necessary prerequisites without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, no output schema, and no annotations, the description is minimal but somewhat adequate. It specifies the metric source and prerequisites, but lacks details such as return format (though PNG is implied), axis labels, failure modes, or performance characteristics. It meets the minimum for a simple tool but has gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (zero parameters), so there is nothing to describe. By mentioning the environment variable KUBECRAFT_PROMETHEUS_URL, the description implicitly explains why no parameters are needed, which adds value beyond the empty schema. Baseline for zero parameters is 4, and this context justifies that score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Render'), the output format ('PNG bar chart'), and the specific data source ('Prometheus DCGM metric DCGM_FI_DEV_GPU_UTIL'). It distinguishes from sibling tools like render_gpu_dashboard or render_gpu_sparkline by being specific to a bar chart of GPU utilization.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only mentions prerequisites (environment variable and DCGM exporter) but provides no guidance on when to use this tool versus alternatives, nor any conditions or exclusions. The agent is left to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_gpu_sparklineRender GPU Metrics Sparkline (PNG)A
PNG sparkline from a Prometheus range query (default DCGM_FI_DEV_GPU_UTIL, last hour). Requires KUBECRAFT_PROMETHEUS_URL.
| Name | Required | Description | Default |
|---|---|---|---|
| step | No | Range step (default 15s) | 15s |
| query | No | PromQL for range query (default: DCGM_FI_DEV_GPU_UTIL) | |
| duration_seconds | No | Window length in seconds (default 3600, max 86400) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the tool produces a PNG image and requires a specific environment variable. This adds value beyond the schema, alerting the agent to a dependency. However, it does not mention possible errors or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys purpose and a key requirement. Every word earns its place, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 3 parameters with full schema coverage, no output schema, and no annotations, the description adequately covers the core functionality and a critical dependency. It could be more complete by explicitly stating the output format (PNG) and that it is read-only.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description mentions default metric and 'last hour' but does not add new meaning beyond the schema defaults. It does not explain the query parameter further or provide PromQL examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it renders a PNG sparkline from a Prometheus query, specifying default metric (DCGM_FI_DEV_GPU_UTIL) and time window (last hour). This distinguishes it from sibling tools like render_gpu_metrics and render_gpu_dashboard, which likely produce more detailed visualizations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions required environment variable KUBECRAFT_PROMETHEUS_URL, which is a prerequisite. However, it does not provide guidance on when to use this tool over alternatives like render_gpu_metrics or render_gpu_dashboard, nor does it specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_namespaceRender Namespace (PNG)A
Render a namespace diagram as a PNG image. Shows deployments, services, pods, and their connections.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace to render (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose whether the tool is read-only, requires specific permissions, or has any side effects. The output format (PNG) is stated, but behavioral traits are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with core purpose. No redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers basic purpose and output, but lacks usage context and behavioral transparency. For a tool with no output schema and no annotations, the description could be more complete (e.g., indicating read-only nature).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single parameter (namespace). The description does not add any meaning beyond the schema (it does not mention the parameter). Per guidelines, baseline 3 applies due to high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool renders a namespace diagram as a PNG image, specifying the resources shown (deployments, services, pods, connections). This distinguishes it from sibling tools like list_deployments or render_app_architecture.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus alternative visualization tools (e.g., visualize_namespace). No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_networkRender Network Map (PNG)A
Render the service-to-pod network map as a PNG image. Shows how services route to backend pods via label selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It states the tool renders a PNG image of the network map, which is straightforward. However, it does not disclose how the image is returned (e.g., base64, URL) or any potential side effects, permissions, or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. The first sentence immediately communicates the core action and output format, and the second adds a clarifying detail. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should explain the return format. It mentions 'as a PNG image' but does not specify how it is delivered (e.g., inline data, URL). Given the tool's simplicity and the presence of sibling tools, this is a notable gap, but the description is otherwise adequate for basic understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single 'namespace' parameter. The tool description does not add any additional meaning or usage nuance beyond what the schema already provides ('omit for all namespaces'), so it meets the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Render), the resource (service-to-pod network map), and the output format (PNG image). It provides enough specificity to distinguish it from sibling tools like list_services or summarize_network_policies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives such as visualize_network, list_services, or list_pods. It does not mention prerequisites, expected outcomes, or suitable scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
summarize_network_policiesSummarize NetworkPoliciesA
List NetworkPolicies with pod selector summary, ingress/egress rule counts, and a possible default-deny ingress heuristic. Omit namespace for all namespaces. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Kubernetes namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It declares read-only behavior and mentions a heuristic for default-deny ingress. However, it does not discuss permissions, rate limits, or any side effects, which would elevate it further.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main action and output. Every word adds value; no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one optional parameter and no output schema, the description adequately covers purpose, parameter usage, and output structure. It could mention if there are any limitations (e.g., only lists from current context) but is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter. The description adds value by explaining the summary content (pod selector, rule counts, heuristic) beyond the schema's namespace description. This compensates for not detailing parameter format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists NetworkPolicies with pod selector summary, ingress/egress rule counts, and a default-deny heuristic. It distinguishes from sibling tools like 'list_resources' and 'render_network' by specifying the resource type and summary content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives guidance on the optional namespace parameter ('Omit namespace for all namespaces'), but does not explicitly state when to use this tool over sibling tools such as 'render_network' or 'list_resources'. The usage context is implied but not fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
summarize_policy_enginesSummarize Policy EnginesA
Read-only summary: Kyverno PolicyReports / ClusterPolicyReports and Gatekeeper constraint violation counts when those API groups exist.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly states 'read-only summary', indicating safe operation. No annotations exist, so description bears full burden. Lacks detail on performance or side effects, but summary nature suggests low risk.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence clearly conveys purpose, constraints, and behavior. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no parameters, the description adequately covers core functionality. Could be enhanced by mentioning return format, but current level suffices for this simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in input schema (schema coverage 100%), so baseline is 4. Description adds meaningful context by specifying the tools summarized (Kyverno, Gatekeeper) and the output type (counts).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it summarises Kyverno and Gatekeeper policy reports and violation counts, specifying the resource and action. It differentiates from sibling tools like detection or listing utilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage when policy engines exist ('when those API groups exist'), but offers no explicit guidance on when to choose this over sibling tools like detect_operators or list_resources.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
switch_contextSwitch Kubeconfig ContextA
Switch the active kubeconfig context. All subsequent tool calls will use this cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Context name to switch to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that switching changes subsequent tool behavior, but does not mention potential failures, permissions, or session scope.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both essential, front-loading the action. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (single required parameter, no output schema), the description adequately covers the tool's purpose and effect. Could mention scope (session-specific) but is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description covers the parameter completely (100%). The description does not add extra meaning beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Switch the active kubeconfig context') and the resource (kubeconfig context). It distinguishes from sibling 'list_contexts' by focusing on switching rather than listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The statement 'All subsequent tool calls will use this cluster' implies when to use it (before cluster-specific operations) and differentiates from listing contexts. However, it lacks explicit guidance on when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tekton_detectDetect TektonA
Detect whether Tekton is installed and report pipeline/task/run counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosing behavioral traits. It implies a read-only operation ('Detect' and 'report'), but does not explicitly state that it is non-destructive or safe. Additionally, it does not specify behavior when Tekton is not installed (e.g., returns error or empty counts). The description provides basic transparency but lacks detail on side-effects or error cases.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence of 10 words that clearly communicates the action and output. Every word is necessary and front-loaded. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description is fairly complete. It states what the tool does (detect and report counts) and implies a read-only nature. However, it could benefit from additional context such as the format of the report (e.g., 'returns JSON with boolean and counts') or a hint that it is safe to use as a prerequisite. Given the simplicity, it is adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and schema description coverage is 100% (trivially). According to the rubric, when coverage is high, the baseline is 3 even without parameter info in the description. The description does not add any parameter-specific meaning, which is acceptable given the absence of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Detect whether Tekton is installed and report pipeline/task/run counts.' It uses a specific verb ('Detect') and resource ('Tekton'), and distinguishes itself from sibling tools like tekton_list_pipelines by focusing on installation detection and counting rather than listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking Tekton installation and obtaining summary counts, which is clear. However, it does not explicitly state when to use this tool over alternatives, such as using tekton_list_pipelines for detailed listings. No when-not-to-use guidance is provided, but the context is sufficient for an agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tekton_list_pipelinesList Tekton PipelinesB
List Tekton Pipelines with task count and last PipelineRun status.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as pagination, sorting, filtering, permissions, or whether it lists all pipelines across namespaces. For a list operation, basic safety is implied, but more detail is needed for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that includes both the action and the additional context (task count and last run status). No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one optional parameter and no output schema. The description explains what is listed but does not describe the return format or structure, leaving room for ambiguity about how the information is presented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with one parameter already described. The description does not add information beyond the schema's description of 'omit for all namespaces', so it meets the baseline without adding value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'List' and the resource 'Tekton Pipelines', and specifies included information: task count and last PipelineRun status. This distinguishes it from sibling tools like tekton_list_runs and tekton_list_tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as when to omit namespace or when to use tekton_list_runs for pipeline runs. The context signals show many list tools, but no comparative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tekton_list_runsList Tekton PipelineRunsA
List recent Tekton PipelineRuns with status, duration, start time, and task run count.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max runs to return (default: 20) | |
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It does not disclose behavioral traits like read-only nature, pagination, sorting order, or permissions required. The term 'recent' is vague, and there is no mention of how the tool handles namespace absence (list all namespaces) or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core purpose and immediately specifies the output fields. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity, 100% schema coverage, and no output schema, the description adequately covers the return fields. However, it could mention ordering or pagination for completeness. Still, it provides sufficient context for an agent to use the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter has a description. The tool description adds little extra semantic value beyond the schema: it only mentions output fields. Thus, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list', the resource 'Tekton PipelineRuns', and specifies the fields returned (status, duration, start time, task run count). It distinguishes effectively from sibling tools like `tekton_list_pipelines` and `tekton_list_tasks` which list different resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. The context implies that if you need PipelineRun data, use this tool, but no exclusions or comparisons with other list tools are provided. The differentiation is only through the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tekton_list_tasksList Tekton TasksA
List Tekton Tasks with step count and parameter count.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description carries the burden. It states the output includes step and parameter counts, but does not mention read-only nature, permissions, or other behaviors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Efficiently communicates purpose and added value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool (1 optional param, no output schema), the description is adequate. It explains the listing scope and extra info, but could mention namespace optionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description for 'namespace'. The tool description adds no extra parameter meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool lists Tekton Tasks and includes specific features (step count, parameter count), distinguishing it from sibling tools like tekton_list_pipelines.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance is provided. No mention of namespace behavior or alternatives among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
visualize_app_architectureVisualize App ArchitectureA
Full KubeOrch-style architecture diagram showing ALL resource types in a namespace: Ingress → Service → Deployment → Pod, plus ConfigMaps, Secrets, PVCs, and how they wire together via selectors, env refs, and volume mounts.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace to visualize (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the output as a diagram, implying a read-only, non-destructive operation, but it does not explicitly confirm safety (e.g., 'This tool does not modify any resources'). It also lacks details on permissions needed or any rate limits, though the description is clear about what the diagram includes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently packs all relevant information: the type of diagram, resource types, and connections. It is front-loaded with the key phrase 'Full KubeOrch-style architecture diagram'. It could be slightly more structured (e.g., separate output format), but it is concise without being overly wordy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description thoroughly explains what the diagram contains (resource types and wiring) but lacks information about the output format (e.g., URL, image, text) and any behavioral context like required permissions or whether it fetches live data. Since there is no output schema, this missing context reduces completeness for an agent that needs to handle the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter is 'namespace' with 100% schema description coverage (the schema includes its own description). The tool description does not add any additional semantic meaning beyond the schema; it simply mentions 'namespace' in context. With full schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool produces a 'Full KubeOrch-style architecture diagram' and enumerates all resource types (Ingress, Service, Deployment, Pod, ConfigMaps, Secrets, PVCs) and how they interconnect via selectors, env refs, and volume mounts. This is a specific verb+resource combination that distinguishes it from sibling tools like 'render_app_architecture' and 'visualize_namespace' by emphasizing the detailed wiring details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when an agent needs to understand the full application architecture within a namespace, but it does not explicitly state when to use this tool versus alternatives such as 'render_app_architecture' or 'visualize_namespace'. There is no mention of prerequisites, when-not-to-use, or explicit exclusions, leaving the agent to infer based on the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
visualize_cluster_topologyVisualize Cluster TopologyB
Generate a high-level Mermaid diagram of nodes, namespaces, and pod distribution across the cluster.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavioral traits. It states a diagram is generated, but does not mention read-only nature, required permissions, output format, or performance impact. Lacks sufficient transparency for a cluster-scoped tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no fluff. Front-loaded with the action and scope. Every word is meaningful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters, annotations, or output schema, the description is minimal. It explains the diagram's content (nodes, namespaces, pod distribution) but lacks details on diagram style, level of detail, or what 'high-level' means. Adequate but could be more informative.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the schema is fully covered (100%). The description adds no parameter-specific meaning, but the absence of parameters means no additional documentation is needed. Baseline score of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a Mermaid diagram of cluster topology covering nodes, namespaces, and pod distribution. It is specific about the resource and action, but doesn't explicitly differentiate from sibling tools like 'render_cluster_topology' or 'visualize_namespace'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus the many similar visualization tools (e.g., render_cluster_topology, visualize_namespace). The description does not mention alternatives, prerequisites, or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
visualize_fluxVisualize Flux CD (Mermaid)A
Generate a Mermaid diagram of Flux sources flowing into Kustomizations and HelmReleases with ready status colors.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Filter to specific namespace (omit for all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose behavioral traits such as whether the tool is read-only, if it queries live cluster data, potential performance impacts, or behavior when no Flux resources exist. The description is too brief for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the essential action and output. Every word adds value, with no unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple visualization tool with one optional parameter and no output schema, the description adequately explains the output (Mermaid diagram) and its content. It lacks details about output format handling but is otherwise complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in the schema already covers filtering by namespace. The tool description only restates the parameter's role without adding new semantics. Hence a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a Mermaid diagram specifically for Flux CD resources, showing sources flowing into Kustomizations and HelmReleases with ready status colors. This distinguishes it from sibling tools like flux_list_* (list resources) and other visualization tools for different domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for visualizing Flux CD flows but provides no explicit guidance on when to use this tool vs alternatives (e.g., flux_list_* or other render tools). No conditions, prerequisites, or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
visualize_namespaceVisualize NamespaceA
Generate a Mermaid diagram showing deployments, services, and pods within a namespace and their connections via selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace to visualize (default: 'default') | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully convey behavioral traits. It only states it generates a diagram, but does not clarify whether the operation is read-only, requires special permissions, or has any side effects. The absence of such information leaves ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly-worded sentence that perfectly captures the tool's purpose. Every word is necessary, and the key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (one parameter, no output schema), the description is adequate but not rich. It does not explain the format of the output (e.g., raw Mermaid code vs rendered) or provide usage context. For a visualization tool, slightly more detail would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter 'namespace' with description and default). The description does not add additional information beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Generate'), the output format ('Mermaid diagram'), and the specific resources included ('deployments, services, and pods within a namespace and their connections via selectors'). This distinguishes it from sibling visualization tools like visualize_app_architecture or render_namespace.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for visualizing namespace resources but does not explicitly state when to use this tool over alternatives (e.g., render_namespace, visualize_app_architecture). No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
visualize_networkVisualize NetworkB
Generate a Mermaid diagram mapping services to their backend pods via label selectors.
| Name | Required | Description | Default |
|---|---|---|---|
| namespace | No | Namespace (omit for all namespaces) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavioral traits. It only mentions that the tool 'generates a Mermaid diagram' but does not state that it is a read-only operation, whether it requires special permissions, or any rate limits. The lack of behavioral context leaves the agent uncertain about safety and effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the key action and resource. However, it could be slightly expanded to include usage or output details without losing brevity. Still, it is efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should explain what the generated diagram looks like or how it is presented. It does not mention the format, whether it returns raw Mermaid syntax, or any prerequisites (e.g., services must have label selectors). For a visualization tool, this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the one parameter ('namespace') with a clear description. The tool description adds context ('mapping services to their backend pods via label selectors') which helps interpret the parameter's effect but does not introduce new syntax or options. Baseline 3 is appropriate as schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Generate'), the resource ('Mermaid diagram') and the specific scope ('mapping services to their backend pods via label selectors'). It distinctly sets the tool apart from sibling tools like 'visualize_cluster_topology' and 'visualize_namespace'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'summarize_network_policies' or 'render_network'. The sibling list includes many other visualization tools, but the description does not help an agent decide when this specific tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
73 tool updates
v0.1.0- First observed
argocd_detect - First observed
argocd_list_apps - First observed
argocd_list_projects - First observed
count_custom_resources - First observed
describe_crd - First observed
describe_resource - First observed
detect_cni - First observed
detect_operators - First observed
detect_service_mesh - First observed
diagnose_coredns - First observed
diagnose_pod - First observed
dns_lookup - First observed
flux_detect - First observed
flux_list_helmreleases - First observed
flux_list_kustomizations - First observed
flux_list_sources - First observed
get_cluster_info - First observed
get_events - First observed
get_gpu_promql_reference - First observed
get_license_info - First observed
get_node_health - First observed
get_pod_logs - First observed
get_resource_usage - First observed
get_server_stats - First observed
gpu_cluster_readiness - First observed
helm_get_values - First observed
helm_list - First observed
inspect_rbac - First observed
list_contexts - First observed
list_crds - First observed
list_cronjobs - First observed
list_csi_drivers - First observed
list_daemonsets - First observed
list_deployments - First observed
list_gateway_api - First observed
list_gpu_workloads - First observed
list_hpas - First observed
list_ingress_classes - First observed
list_ingresses - First observed
list_jobs - First observed
list_namespaces - First observed
list_nodes - First observed
list_pod_disruption_budgets - First observed
list_pods - First observed
list_resource_quotas - First observed
list_resources - First observed
list_services - First observed
list_statefulsets - First observed
list_storage_overview - First observed
openshift_detect - First observed
openshift_list_builds - First observed
openshift_list_projects - First observed
openshift_list_routes - First observed
register_license - First observed
render_app_architecture - First observed
render_cluster_topology - First observed
render_gpu_dashboard - First observed
render_gpu_metrics - First observed
render_gpu_sparkline - First observed
render_namespace - First observed
render_network - First observed
summarize_network_policies - First observed
summarize_policy_engines - First observed
switch_context - First observed
tekton_detect - First observed
tekton_list_pipelines - First observed
tekton_list_runs - First observed
tekton_list_tasks - First observed
visualize_app_architecture - First observed
visualize_cluster_topology - First observed
visualize_flux - First observed
visualize_namespace - First observed
visualize_network
TDQS
Most tools have distinct purposes, but there are pairs like render_app_architecture/visualize_app_architecture, render_namespace/visualize_namespace, render_network/visualize_network, and render_cluster_topology/visualize_cluster_topology that overlap significantly, causing potential confusion for an agent.
Tool names predominantly follow verb_noun pattern (e.g., list_pods, describe_crd, diagnose_pod). Some deviations include longer prefixes like argocd_list_apps or get_gpu_promql_reference, but overall the pattern is consistent.
73 tools is heavy but justifiable for a comprehensive Kubernetes diagnostics and visualization server. Some tools could be merged (e.g., render/visualize pairs), and a few are very niche (get_gpu_promql_reference), but the count remains within a reasonable range for the scope.
The tool set is comprehensive for observability and diagnostics: it covers list, describe, diagnose, detect, render, and visualize for a wide range of resources. However, it lacks CRUD operations, which is likely intentional for a read-only diagnostic server, leaving minor gaps in lifecycle management.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
The Google GKE MCP server is a managed Model Context Protocol server that provides AI applications with tools to manage Google Kubernetes Engine (GKE) clusters and Kubernetes resources. It exposes a structured, discoverable interface that allows AI agents to interact with GKE and Kubernetes APIs, enabling them to inspect cluster configurations, retrieve Kubernetes resource YAMLs, monitor operations like cluster upgrades, diagnose issues, and optimize costs—all without needing to parse text output or use complex kubectl commands.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to interact with Kubernetes clusters through natural language, supporting core Kubernetes operations, monitoring, security, and diagnostics.94956MIT
- FlicenseNot gradedqualityDmaintenanceA Model Control Protocol server that extends AI assistants with Kubernetes operations capabilities, allowing for managing deployments, pods, services and other K8s resources.2-
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI assistants to interact with Kubernetes clusters by translating natural language into kubectl and Helm operations. It allows users to query, manage, and diagnose Kubernetes resources and cluster states through a seamless integration.20Apache 2.0
- AlicenseNot gradedqualityDmaintenanceAn MCP server that lets AI assistants safely inspect and operate on Kubernetes clusters through natural conversation.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cloudcrafttech/kubecraft-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server