OpenShift 4 MCP Server
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., "@OpenShift 4 MCP ServerWhy is my pod crashlooping in namespace prod?"
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.
OpenShift & Kubernetes MCP Server
A comprehensive Model Context Protocol (MCP) server that exposes 216 tools, 7 resources, and 10 runbook prompts for cluster operations — all driven by an LLM. Works with OpenShift 4 and vanilla Kubernetes; OpenShift-specific tools (Routes, BuildConfigs, SCCs, OLM, Machines, RHOAI, Virtualization) return a clear error on plain Kubernetes clusters that don't have those APIs.
Connect it to Claude (Desktop, Code, or API) and ask natural-language questions like:
"Why is my pod crashlooping in namespace prod?" "Scale the frontend deployment to 5 replicas." "Show me all firing alerts and create a 4-hour silence for the watchdog." "Live-migrate VM database-0 to another node." "Deploy llama-3 with KServe in the ds-team namespace." "What's the status of my Tekton pipeline run in namespace ci?" "Show me all Konflux components and their latest snapshot status."
Table of Contents
Related MCP server: OpenShift SRE Copilot
Features
Domain | Tools | What you can do |
Cluster | 17 | ClusterVersion, upgrade status, nodes, cordon/drain, namespaces, etcd health, events |
Workloads | 19 | Pods (logs, exec, describe), Deployments (scale, rollout, undo), StatefulSets, DaemonSets, Jobs, CronJobs, DeploymentConfigs |
Networking | 12 | Services, OpenShift Routes (TLS), Ingress, NetworkPolicies, IngressControllers |
Storage | 10 | PVs, PVCs (create/delete), StorageClasses, VolumeSnapshots |
Config | 8 | ConfigMaps, Secrets (keys only — values never exposed), ServiceAccounts |
RBAC | 13 | OCP Users/Groups, Roles, ClusterRoles, RoleBindings, |
Builds | 8 | BuildConfigs, start/log builds, ImageStreams and tags |
Operators (OLM) | 10 | CSVs, Subscriptions, CatalogSources, InstallPlans (approve), OperatorConditions |
Machines | 11 | MachineSets (scale), Machines, MachineConfigs, MachineConfigPools (pause/unpause) |
Monitoring | 10 | PromQL instant/range queries, Alertmanager alerts/silences (CRUD), PrometheusRules |
Security | 9 | SCCs (list/create/assign), OAuth config, pod security violations |
Autoscaling | 8 | HPA (create/delete), VPA recommendations, ClusterAutoscaler, MachineAutoscaler |
GitOps | 7 | ArgoCD Applications (sync, health, refresh), AppProjects, registered clusters |
Pipelines | 10 | Tekton Pipelines/PipelineRuns/Tasks/TaskRuns, start/cancel, EventListeners |
Service Mesh | 8 | SMCP status, VirtualServices, DestinationRules, PeerAuthentications, Gateways |
OpenShift AI | 13 | DSCI/DSC status, Notebooks (start/stop), KServe InferenceServices, DSP, ModelRegistry |
Virtualization | 15 | VMs (start/stop/restart/pause/create/delete), live migration, DataVolumes, snapshots |
Konflux | 11 | Applications, Components, Snapshots, IntegrationTestScenarios, ReleasePlans |
ACM | 11 | ManagedClusters, Policies, Placements, ManifestWorks (deploy to managed clusters) |
Generic | 6 |
|
MCP Resources | 7 | Live cluster URIs: |
MCP Prompts | 10 | SRE runbooks: troubleshoot pod, upgrade cluster, debug network, deploy ML model, and more |
Requirements
Python 3.11+
ocCLI in PATH (for operations that use it; many tools fall back to direct k8s API calls)virtctlin PATH (for VM pause/unpause; optional)Access to an OpenShift 4.x cluster
Installation
git clone https://github.com/your-org/openshift-mcp-server.git
cd openshift-mcp-server
python3 -m venv .venv
.venv/bin/pip install -e .Authentication
The server supports five auth modes, tried in priority order:
1. OCP_CLUSTERS — multi-cluster JSON (highest priority)
See the Multi-cluster section below.
2. Service Account Token (recommended for CI/CD)
export OCP_API_URL=https://api.mycluster.example.com:6443
export OCP_TOKEN=sha256~xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGet a long-lived token:
oc create serviceaccount mcp-server -n default
oc adm policy add-cluster-role-to-user cluster-admin -z mcp-server -n default
oc create token mcp-server -n default --duration=8760h3. Username / Password
export OCP_API_URL=https://api.mycluster.example.com:6443
export OCP_USERNAME=kubeadmin
export OCP_PASSWORD=xxxx-xxxx-xxxx-xxxxThe server runs oc login and extracts the resulting bearer token automatically.
4. kubeconfig (default for local dev)
# Uses ~/.kube/config automatically, or:
export OCP_KUBECONFIG=/path/to/kubeconfig
export OCP_KUBECONFIG_CONTEXT=my-cluster-admin # optional context name5. In-cluster (when running inside a pod)
No env vars needed — uses the mounted ServiceAccount token automatically.
TLS verification
# Disable TLS verification for the Kubernetes API connection (k8s client):
export OCP_SKIP_TLS_VERIFY=true # for self-signed certs in dev/lab clusters
# Disable TLS verification for Prometheus/Alertmanager HTTP calls:
export OCP_VERIFY_SSL=falseThese are two independent settings — OCP_SKIP_TLS_VERIFY controls the kubernetes Python client (API calls), OCP_VERIFY_SSL controls HTTP requests to Prometheus and Alertmanager.
Multi-cluster
Set OCP_CLUSTERS to a JSON array of named cluster configs:
export OCP_CLUSTERS='[
{"name": "prod", "api_url": "https://api.prod.example.com:6443", "token": "sha256~prod..."},
{"name": "staging", "api_url": "https://api.staging.example.com:6443", "token": "sha256~staging..."},
{"name": "lab", "api_url": "https://api.lab.example.com:6443", "token": "sha256~lab...", "skip_tls_verify": true}
]'Each cluster config object supports:
Field | Required | Description |
| yes | Logical name used in the |
| yes | API server URL ( |
| one of token/user+pass | Bearer token |
| one of token/user+pass | Credentials for |
| no | Set |
Then pass cluster="prod" to any tool:
list_pods(namespace="kube-system", cluster="prod")
scale_deployment(name="api", replicas=3, namespace="default", cluster="staging")Monitoring / Prometheus
By default the server auto-derives the Alertmanager URL from OCP_PROMETHEUS_URL. Override if needed:
export OCP_PROMETHEUS_URL=https://thanos-querier.openshift-monitoring.svc:9091
export OCP_ALERTMANAGER_URL=https://alertmanager-main.openshift-monitoring.svc:9093
export OCP_PROMETHEUS_TOKEN=sha256~... # defaults to OCP_TOKENEnvironment variables reference
Variable | Default | Purpose |
| — | API server URL for single-cluster token/password auth |
| — | Bearer token for the service account or user |
| — | Username for |
| — | Password for |
|
| Set |
|
| Path to a kubeconfig file |
| — | Named context within the kubeconfig |
| — | JSON array of multi-cluster configs (see above) |
| auto-detected | Prometheus/Thanos querier URL |
| auto-derived | Alertmanager URL |
|
| Token for Prometheus/Alertmanager HTTP calls |
|
| Set |
|
|
|
|
| Bind address for streamable-http transport |
|
| Port for streamable-http transport |
|
| Bind address for the Gradio web UI |
|
| Port for the Gradio web UI |
|
| Set |
| — | Required for the AI Chat tab in the Gradio UI |
|
| Model for the AI Chat tab |
Usage with Claude
Claude Code (this repository)
The .claude/settings.json already wires the server up. Open this directory in Claude Code and the ocp MCP server is available automatically.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"ocp": {
"command": "/path/to/ocp-mcp-server/.venv/bin/python",
"args": ["-m", "ocp_mcp.server"],
"env": {
"PYTHONPATH": "/path/to/ocp-mcp-server/src",
"OCP_API_URL": "https://api.mycluster.example.com:6443",
"OCP_TOKEN": "sha256~..."
}
}
}
}Streamable HTTP transport (for remote use or web apps)
Note:
MCP_HOSTdefaults to127.0.0.1(loopback-only, with DNS-rebinding protection enabled by the MCP SDK). SetMCP_HOST=0.0.0.0explicitly when you need external access.
export MCP_TRANSPORT=streamable-http
export MCP_HOST=0.0.0.0 # bind to all interfaces for remote access
export MCP_PORT=8080
.venv/bin/ocp-mcp-serverThen point your MCP client at http://your-host:8080/mcp.
Web UI (Gradio)
A browser-based UI with two tabs — no MCP client required.
Install UI dependencies:
.venv/bin/pip install -e ".[ui]"Run:
export OCP_API_URL=https://api.mycluster.example.com:6443
export OCP_TOKEN=sha256~...
.venv/bin/ocp-mcp-ui
# Opens at http://localhost:7860Tab 1 — Tool Playground: Select any of the 216 tools from a searchable dropdown, fill in parameters, and run it directly against your cluster. Results appear instantly — no AI in the loop.
Tab 2 — AI Chat: Natural-language chat backed by Claude. Set ANTHROPIC_API_KEY and ask anything — Claude will automatically call the right OCP tools and show you what it did.
Interactive Chat Client (mcp_chat.py)
mcp_chat.py is a standalone terminal chat client that connects to any running MCP server and drives an agentic loop using the LLM of your choice. All configuration is prompted at startup — no environment variables required, though they are used as defaults when present.
Supported LLM providers
Provider | Auth |
Anthropic API | API key |
Google Vertex AI | GCP project ID + region (GCP ADC — |
Ollama | Base URL (local or remote) |
OpenAI-compatible | Base URL + optional API key (OpenAI, LM Studio, vLLM, llama.cpp, …) |
Install
pip install mcp anthropic "anthropic[vertex]" openai httpxRun
python mcp_chat.pyThe script walks you through setup interactively:
╔══════════════════════════════════════════════════════════════╗
║ MCP Chat — Setup ║
╚══════════════════════════════════════════════════════════════╝
MCP server URL [http://localhost:8080/mcp]:
LLM provider
1. Anthropic API (API key)
2. Google Vertex AI (GCP project ID + region, GCP ADC auth)
3. Ollama (local or remote)
4. OpenAI-compatible (OpenAI / LM Studio / vLLM / llama.cpp / …)
Choice:Self-signed / internal CA certificates
When an HTTPS URL is entered (for the MCP server or the model endpoint) the script asks whether the certificate is CA-signed or self-signed:
The MCP server URL is using HTTPS.
Does it use a valid CA-signed certificate? (answer 'n' for self-signed / internal CA) [Y/n]:Answering n disables SSL verification for that endpoint automatically. This is the correct answer for:
CRC (CodeReady Containers) — uses a self-signed router CA
Self-hosted OpenShift clusters with internal PKI
Local Ollama or OpenAI-compatible servers fronted by nginx with a self-signed cert
Note: For the MCP server connection, SSL verification is disabled by patching
httpx.AsyncClientfor the duration of the session (the MCP SDK does not expose averify=parameter directly). For Ollama/OpenAI-compatible clients,httpx.Client(verify=False)is passed directly. Anthropic API and Google Vertex AI always use CA-signed certificates and are never prompted.
Environment variable defaults
All prompts use environment variables as pre-filled defaults so repeat runs need fewer keystrokes:
Prompt | Env var |
MCP server URL |
|
Anthropic API key |
|
Model (Anthropic / Vertex) |
|
GCP project ID |
|
GCP region |
|
Ollama base URL |
|
Ollama model |
|
OpenAI base URL |
|
OpenAI API key |
|
OpenAI model |
|
Example session (Vertex AI + CRC cluster)
# Port-forward the deployed MCP server
oc port-forward svc/ocp-mcp-server 8080:8080 -n ocp-mcp &
python mcp_chat.py
# MCP server URL [http://localhost:8080/mcp]: https://ocp-mcp-server-ocp-mcp.apps-crc.testing/mcp
# The MCP server URL is using HTTPS.
# Does it use a valid CA-signed certificate? [Y/n]: n
# ⚠ SSL verification disabled for MCP server (self-signed cert).
# LLM provider → 2 (Google Vertex AI)
# GCP project ID: my-gcp-project
# Region [us-east5]:
# Model [claude-opus-4-8]:
# Ready — 216 tools available | provider: vertex | model: claude-opus-4-8
You: What nodes are in my cluster and are any under memory pressure?
→ list_nodes({})
→ get_node_conditions({"node":"crc-xxxxx-master-0"})Container & OpenShift Deployment
This section covers building the container image and deploying to OpenShift or any Kubernetes cluster.
Prerequisites
Podman or Docker for building/pushing the image
Access to a container registry (Quay.io, OpenShift internal registry, etc.)
ocCLI logged in to your cluster
1. Build the image
# Clone and enter the repo
git clone https://github.com/your-org/openshift-mcp-server.git
cd openshift-mcp-server
# Build with Podman (recommended for OpenShift)
podman build -f Containerfile -t quay.io/your-org/ocp-mcp-server:latest .
# Multi-arch build (amd64 + arm64)
podman buildx build \
--platform linux/amd64,linux/arm64 \
-f Containerfile \
-t quay.io/your-org/ocp-mcp-server:latest .
podman push quay.io/your-org/ocp-mcp-server:latestBuild arguments:
Argument | Default | Description |
|
| OpenShift CLI version; e.g. |
|
| KubeVirt virtctl version |
|
| CPU architecture: |
# Pin specific CLI versions
podman build -f Containerfile \
--build-arg OC_VERSION=4.16.3 \
--build-arg VIRTCTL_VERSION=v1.4.0 \
-t quay.io/your-org/ocp-mcp-server:4.16.3 .2. Push the image
podman push quay.io/your-org/ocp-mcp-server:latestFor the OpenShift internal registry:
# Log in to the internal registry
oc registry login
IMAGE="$(oc registry info)/ocp-mcp/ocp-mcp-server:latest"
podman build -f Containerfile -t "$IMAGE" .
podman push "$IMAGE"3. Deploy to OpenShift
3a. Create the namespace
oc new-project ocp-mcp
# or:
oc apply -f deploy/namespace.yaml3b. Create the credentials Secret
The Secret holds cluster auth and the optional Anthropic API key. Never commit real values.
In-cluster deployment (server manages the same cluster it runs in — no credentials needed):
# Only set ANTHROPIC_API_KEY if you want the Gradio AI Chat tab
oc create secret generic ocp-mcp-server-credentials \
--from-literal=ANTHROPIC_API_KEY=sk-ant-xxxxxxxx \
-n ocp-mcp
# If no Anthropic key either, create an empty secret:
oc create secret generic ocp-mcp-server-credentials -n ocp-mcpExternal cluster (server is deployed elsewhere and manages a remote cluster):
# Single cluster — token auth (recommended)
oc create secret generic ocp-mcp-server-credentials \
--from-literal=OCP_API_URL=https://api.cluster.example.com:6443 \
--from-literal=OCP_TOKEN=sha256~xxxxxxxxxxxxxxxxxxxxxxxx \
--from-literal=ANTHROPIC_API_KEY=sk-ant-xxxxxxxx \
-n ocp-mcp
# Multi-cluster
oc create secret generic ocp-mcp-server-credentials \
--from-literal=OCP_CLUSTERS='[
{"name":"prod", "api_url":"https://api.prod.example.com:6443", "token":"sha256~prod..."},
{"name":"staging", "api_url":"https://api.staging.example.com:6443", "token":"sha256~staging..."}
]' \
--from-literal=ANTHROPIC_API_KEY=sk-ant-xxxxxxxx \
-n ocp-mcpTip: Generate a long-lived ServiceAccount token for the MCP server:
oc create serviceaccount mcp-server -n default oc adm policy add-cluster-role-to-user cluster-admin -z mcp-server -n default oc create token mcp-server -n default --duration=8760h
3c. Edit the image reference
Open deploy/deployment.yaml and replace the placeholder image:
image: quay.io/your-org/ocp-mcp-server:latest3d. Apply all resources
# Using kustomize (recommended)
oc apply -k deploy/
# Or apply individually
oc apply -f deploy/serviceaccount.yaml
oc apply -f deploy/clusterrolebinding.yaml
oc apply -f deploy/configmap.yaml
oc apply -f deploy/deployment.yaml
oc apply -f deploy/service.yaml
oc apply -f deploy/route.yaml3e. Verify the deployment
# Check pod status
oc get pods -n ocp-mcp -l app.kubernetes.io/name=ocp-mcp-server
# Check logs
oc logs -n ocp-mcp -l app.kubernetes.io/name=ocp-mcp-server -f
# Get the public MCP URL
oc get route ocp-mcp-server -n ocp-mcp -o jsonpath='{.spec.host}'The server is ready when you see a line like:
INFO: Started server process
INFO: Uvicorn running on http://0.0.0.0:80803b. Deploy to vanilla Kubernetes
The same manifests work on any Kubernetes cluster. The differences from the OpenShift steps above:
Use
kubectlinstead ofocUse
deploy/ingress.yamlinstead ofdeploy/route.yaml(Ingress requires an ingress controller such as nginx-ingress)Skip
deploy/namespace.yamlif your cluster auto-creates namespaces; otherwisekubectl create namespace ocp-mcp
Create the namespace and credentials
kubectl create namespace ocp-mcp
# Token auth (replace with your cluster API URL and token)
kubectl create secret generic ocp-mcp-server-credentials \
--from-literal=OCP_API_URL=https://api.k8s.example.com:6443 \
--from-literal=OCP_TOKEN=<serviceaccount-token> \
-n ocp-mcpGenerate a long-lived ServiceAccount token:
kubectl create serviceaccount mcp-server -n default
kubectl create clusterrolebinding mcp-server-admin \
--clusterrole=cluster-admin --serviceaccount=default:mcp-server
kubectl create token mcp-server -n default --duration=8760hApply the manifests
# Apply all resources except the OpenShift Route
kubectl apply -f deploy/serviceaccount.yaml
kubectl apply -f deploy/clusterrolebinding.yaml
kubectl apply -f deploy/configmap.yaml
kubectl apply -f deploy/deployment.yaml
kubectl apply -f deploy/service.yaml
kubectl apply -f deploy/ingress.yaml # Kubernetes Ingress (not Route)Edit deploy/ingress.yaml first to set the correct hostname for your cluster.
Verify
kubectl get pods -n ocp-mcp -l app.kubernetes.io/name=ocp-mcp-server
kubectl logs -n ocp-mcp -l app.kubernetes.io/name=ocp-mcp-server -f
kubectl get ingress -n ocp-mcpKubernetes compatibility note: Core tools (workloads, networking, storage, RBAC, config, monitoring, Tekton Pipelines) work on any Kubernetes cluster. Tools for OpenShift-specific APIs (Routes, BuildConfigs, SCCs, OLM, Machines, OpenShift AI, Virtualization, Service Mesh, ACM) return a clear "API not available" message on clusters where those CRDs are absent — they do not crash the server.
4. Connect an MCP client
Once deployed, point your MCP client at the Route URL:
https://<route-host>/mcpClaude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"ocp": {
"transport": "http",
"url": "https://<route-host>/mcp"
}
}
}Claude Code (.claude/settings.json in your project):
{
"mcpServers": {
"ocp": {
"type": "http",
"url": "https://<route-host>/mcp"
}
}
}5. MCP Inspector
The MCP Inspector is a browser-based UI for exploring MCP tools, resources, and prompts at the protocol level.
Route access is not possible with the standard inspector package. Its proxy backend binds to
127.0.0.1(loopback) by design, and the browser-side JS connects to the proxy atlocalhost:SERVER_PORT. Via a Route,localhostresolves to the user's machine — not the pod — so the proxy is never reachable.oc port-forwardis required.For remote browser-based tool exploration without port-forward, use the Gradio web UI instead (see section 7 below) — it has a Tool Playground tab covering all 216 tools and works via a standard Route.
Deploy:
oc apply -f deploy/inspector.yaml -n ocp-mcpAccess via port-forward (required):
# Forward both ports — UI (6274) and proxy backend (6277)
oc port-forward svc/mcp-inspector 6274:6274 6277:6277 -n ocp-mcpOpen http://localhost:6274 in your browser, then connect with:
Field | Value |
Transport | Streamable HTTP |
URL |
|
Use the internal ClusterIP service name — the inspector proxy (inside the pod) makes the actual connection to the MCP server, not the browser.
Remove when done:
oc delete -f deploy/inspector.yaml -n ocp-mcp6. Deploy the Gradio web UI
The Gradio UI runs as a separate Deployment using the same image with OCP_MODE=ui.
Edit deploy/deployment.yaml, add a second Deployment (or patch the existing one):
# Add to the container's env section:
- name: OCP_MODE
value: "ui"
# Change containerPort to 7860 and update the Service/Route accordingly.Or run it locally:
docker compose --profile ui up7. Environment variables reference (container)
All variables from Environment variables reference apply. Container-specific additions:
Variable | Default | Purpose |
|
|
|
|
| Always set to |
|
| Set to |
8. Production checklist
Image pushed to a private registry with image pull secret configured
Credentials Secret created with real values (not the template YAML)
OCP_SKIP_TLS_VERIFYandOCP_VERIFY_SSLset correctly for your cluster's TLS postureClusterRoleBinding scoped to the minimum permissions your use case needs (see
deploy/clusterrolebinding.yaml)Route has TLS edge termination with
insecureEdgeTerminationPolicy: RedirectMCP Inspector NOT deployed (or behind port-forward only) in production
ANTHROPIC_API_KEYrotated on the schedule required by your org's secret management policyResource
requests/limitstuned to observed usage (checkoc top pod)NetworkPolicy applied to restrict ingress to the MCP port from known LLM clients only
MCP Resources
Resources expose live cluster state as URI-addressable read-only content. MCP clients can subscribe to them and display them alongside tool results.
URI | Description |
| Cluster version, infrastructure name, API URL, platform, topology, upgrade history, and available updates |
| All nodes with role, ready status, OS image, kubelet version, and age |
| All ClusterOperators sorted degraded-first with Available/Progressing/Degraded columns |
| Currently firing Alertmanager alerts, severity-sorted, with summary |
| Pods in a namespace: phase, ready containers, restarts, IP, node, age |
| Last 50 events in a namespace sorted most-recent-first |
| Deployments in a namespace: desired/ready/available/updated replicas and health conditions |
MCP Prompts
Prompts are pre-built operational runbooks that the LLM can invoke to get step-by-step guidance. Each prompt returns a structured multi-step plan that chains together the right tools automatically.
Prompt | Parameters | Purpose |
|
| Diagnose a failing or crashlooping pod: inspect status, read logs, check events, diagnose by failure pattern (CrashLoopBackOff, OOMKilled, ImagePullBackOff, Pending) |
|
| Diagnose network connectivity between pods/services: verify selectors, check endpoints, test DNS, test TCP, inspect NetworkPolicies, check Routes |
|
| Diagnose node MemoryPressure/DiskPressure/PIDPressure: check conditions, review resource usage, surface events, cordon/drain if needed |
|
| Safe upgrade pre-flight + procedure: verify operators, nodes, etcd, alerts; pause MCPs; initiate upgrade; monitor rollout; verify completion |
|
| Provision a new OpenShift project with ResourceQuota, LimitRange, default-deny NetworkPolicy, RoleBindings, and a dedicated ServiceAccount |
|
| Deploy an ML model via OpenShift AI/RHOAI: verify RHOAI, find serving runtime, create InferenceService, monitor readiness, test endpoint, configure HPA |
| — | Systematic triage for a degraded cluster: survey operators, check nodes, verify etcd, list alerts, scan events, deep-dive degraded operators |
|
| Live-migrate a KubeVirt VM: verify running state, check RWX storage, initiate VMIM, monitor progress, verify success, troubleshoot if stuck |
|
| Diagnose a stuck operator install: inspect Subscription, InstallPlan, CSV status, approve pending plans, check pod logs, verify CatalogSource |
|
| Deploy via ArgoCD: verify GitOps operator, create AppProject, configure namespace access, create Application CR, trigger sync, verify health |
Example prompts
# Cluster health
"Give me a full health summary of the cluster"
"Which ClusterOperators are degraded and why?"
"Are there any nodes in NotReady state?"
# Workloads
"List all crashlooping pods across all namespaces"
"Scale the checkout deployment to 10 replicas in namespace shop"
"Get the last 200 log lines from pod api-xyz-abc in namespace backend"
"Roll back the frontend deployment to the previous version"
# Monitoring
"Show me all critical alerts currently firing"
"Query: rate(http_requests_total[5m]) for the last hour"
"Create a 2-hour silence for AlertName=Watchdog"
# RBAC / Security
"What permissions does user john.doe have in namespace dev?"
"Grant the edit role to group platform-team in namespace staging"
"List all SCCs and which service accounts use them"
"Create a non-privileged SCC for a workload that needs setuid binaries"
# OpenShift AI
"What's the status of the DataScienceCluster?"
"List all running notebooks in the ml-team namespace"
"Deploy a scikit-learn model from s3://models/lr-v1 using KServe"
# Virtualization
"List all VMs and their current status"
"Live-migrate VM postgres-main to node worker-3"
"Take a snapshot of VM database-0 before the upgrade"
# Konflux
"What's the build status of my component frontend in workspace team-a?"
"Show me the latest snapshot and its integration test results"
# ACM
"Which managed clusters are not compliant with the security policy?"
"Show me all placements and which clusters they selected"Repository structure
ocp-mcp-server/
├── pyproject.toml # package metadata and dependencies
├── .env.example # environment variable reference
├── Containerfile # multi-stage UBI9 container image build
├── entrypoint.sh # container entrypoint (server or Gradio UI mode)
├── mcp_chat.py # universal interactive chat client (multi-provider)
├── deploy/ # OpenShift / Kubernetes manifests
│ ├── kustomization.yaml
│ ├── namespace.yaml
│ ├── serviceaccount.yaml
│ ├── clusterrolebinding.yaml
│ ├── configmap.yaml
│ ├── secret.yaml # template only — create via oc create secret
│ ├── deployment.yaml
│ ├── service.yaml
│ ├── route.yaml
│ └── inspector.yaml # optional MCP Inspector pod (port-forward access)
├── .claude/
│ └── settings.json # Claude Code MCP configuration
└── src/
└── ocp_mcp/
├── __init__.py
├── app.py # shared FastMCP server instance + port/host config
├── server.py # entry point — imports all tool modules
├── ui.py # Gradio web UI entry point (ocp-mcp-ui)
├── client.py # multi-cluster k8s client management
├── tools/
│ ├── cluster.py # ClusterVersion, nodes, namespaces, etcd
│ ├── workloads.py # Pods, Deployments, StatefulSets, Jobs
│ ├── networking.py # Services, Routes, Ingress, NetworkPolicies
│ ├── storage.py # PVs, PVCs, StorageClasses, VolumeSnapshots
│ ├── config.py # ConfigMaps, Secrets, ServiceAccounts
│ ├── rbac.py # Users, Groups, Roles, RoleBindings
│ ├── builds.py # BuildConfigs, Builds, ImageStreams
│ ├── operators.py # OLM — CSVs, Subscriptions, InstallPlans
│ ├── machines.py # MachineSets, MachineConfigs, MCPs
│ ├── monitoring.py # Prometheus queries, Alertmanager
│ ├── security.py # SCCs, OAuth, pod security
│ ├── autoscaling.py # HPA, VPA, ClusterAutoscaler
│ ├── gitops.py # ArgoCD Applications, AppProjects
│ ├── pipelines.py # Tekton Pipelines, PipelineRuns, Tasks
│ ├── service_mesh.py # SMCP, VirtualServices, DestinationRules
│ ├── ocp_ai.py # RHOAI, Notebooks, KServe, ModelRegistry
│ ├── virtualization.py # KubeVirt VMs, live migration, snapshots
│ ├── konflux.py # Konflux Applications, Components, Releases
│ ├── acm.py # ACM ManagedClusters, Policies, ManifestWorks
│ └── generic.py # apply_manifest, run_oc_command, list_crds
├── resources/
│ └── __init__.py # MCP resource URIs (ocp://cluster/info, etc.)
└── prompts/
└── __init__.py # SRE runbook prompt templatesArchitecture
LLM (Claude)
│
│ MCP protocol (stdio or streamable-http)
▼
ocp-mcp-server
│
├── client.py ──────────────────────────────────────────┐
│ ClusterRegistry │
│ ├── ClusterClient("prod") → kubernetes Python SDK │
│ ├── ClusterClient("staging") │
│ └── ClusterClient("lab") │
│ │
├── tools/*.py → @mcp.tool() │
│ All 216 tools call get_client(cluster) ───────────────┘
│ then use: k8s typed APIs (CoreV1, AppsV1, …)
│ CustomObjectsApi for OCP/OLM/RHOAI/Virt CRDs
│ subprocess oc CLI for operations not in k8s API
│
├── resources/__init__.py → @mcp.resource("ocp://…")
│ Live cluster state as URI-addressable content
│
└── prompts/__init__.py → @mcp.prompt()
SRE runbook templates the LLM can invokeAuth flow
ClusterRegistry._load() — tried in order, first success wins:
1. OCP_CLUSTERS → JSON array → one ClusterClient per entry
2. OCP_API_URL + OCP_TOKEN → bearer-token ClusterClient
3. OCP_API_URL + OCP_USERNAME + OCP_PASSWORD → oc login → extract token
4. OCP_KUBECONFIG / OCP_KUBECONFIG_CONTEXT → load_kube_config
5. In-cluster ServiceAccount tokenDesign principles
No mock data — every tool makes real API calls or runs
oc.Safe defaults — secrets never expose values, only key names. Destructive tools have
WARNINGin their docstrings so the LLM knows to confirm before executing.Graceful degradation — tools catch
ApiExceptionand return readable errors. Missing CRDs (e.g. KubeVirt not installed) return a helpful message instead of crashing.Multi-cluster first — every tool accepts a
clusterparameter. The default cluster is whichever config loaded first.Escape hatches —
apply_manifest,run_oc_command, andlist_custom_resourceslet the LLM reach anything not covered by a typed tool.
Adding a new tool
Find the relevant module in
src/ocp_mcp/tools/or create a new one.Add a function decorated with
@mcp.tool():
from ocp_mcp.app import mcp
from ocp_mcp.client import format_error, get_client
@mcp.tool()
def my_new_tool(name: str, namespace: str = "default", cluster: str = "") -> str:
"""One-sentence description shown to the LLM."""
c = get_client(cluster)
try:
result = c.core_v1.read_namespaced_something(name, namespace)
return f"Result: {result.metadata.name}"
except Exception as e:
return format_error(e)If you created a new file, add
import ocp_mcp.tools.your_moduletoserver.py.
Conventions:
Always accept
cluster: str = ""as the last parameter before any cluster-specific args.Call
get_client(cluster)and usec.oc_args()when buildingrun_ocinvocations — never callrun_ocwithout the cluster auth args, or multi-cluster calls will silently target the wrong cluster.Return strings only — tool output is text surfaced directly to the LLM.
Catch all exceptions and return
format_error(e)rather than letting them propagate.
Tool highlights
Security tools (security.py)
Tool | Description |
| List all SCCs sorted by priority |
| Full SCC detail: volumes, capabilities, users, groups |
| Create a custom SCC with parameters: |
| Grant an SCC to a ServiceAccount via |
| Revoke an SCC from a ServiceAccount |
| Grant a ClusterRole to a user |
| Grant a ClusterRole to a group |
| Get OAuth configuration and identity providers |
| Surface FailedCreate events matching SCC/security keywords |
create_scc parameters:
Parameter | Default | Description |
| required | SCC name |
|
| Allow containers to run as fully privileged (root with all capabilities) |
|
| Allow containers to use the host network namespace |
|
| Allow containers to use the host PID namespace |
|
| Sets |
|
| Allow processes to gain more privileges than their parent (required for setuid binaries like |
|
| Named cluster to target |
Generic escape-hatch tools (generic.py)
Tool | Description |
| Apply YAML/JSON manifest via |
| Get any resource in YAML, JSON, wide, or describe format |
| Delete any resource by type and name |
| List any CRD by group/version/plural |
| Escape hatch: run any |
| List all CustomResourceDefinitions |
Tekton Pipelines (pipelines.py)
Works on any Kubernetes cluster with Tekton installed (including OpenShift Pipelines).
Tool | Description |
| List Pipelines in a namespace |
| Full Pipeline spec: tasks, params, workspaces |
| List PipelineRuns with status; filter by label selector |
| PipelineRun detail: task statuses, params, start/end time, duration |
| Trigger a new PipelineRun with optional params and workspaces |
| Cancel a running PipelineRun |
| List Tasks in a namespace |
| List TaskRuns with status |
| List TriggerTemplates (webhook-driven pipeline triggers) |
| List EventListeners and their trigger bindings |
Example prompts:
"List all pipeline runs in namespace ci and show me which ones failed"
"Get the full log context for pipeline run build-frontend-xyz"
"Start pipeline build-and-push in namespace ci with IMAGE=quay.io/org/app:latest"
"Cancel the running pipeline run deploy-staging-abc"
"What triggers are configured in the platform namespace?"Konflux / RHTAP (konflux.py)
Konflux (Red Hat Trusted Application Pipeline) tools. Requires the Konflux CRDs (appstudio.redhat.com) installed on your cluster.
Tool | Description |
| List Konflux Applications in a workspace/namespace |
| Application detail: components, environments, status |
| List Components; filter by application |
| Component detail: source repo, build pipeline, container image |
| Register a new Component from a git repository |
| List Snapshots; filter by application |
| Snapshot status including all integration test results |
| List IntegrationTestScenarios for an application |
| List ReleasePlans; filter by application |
| List Releases with status and target environment |
| List PipelineRuns for a component (build history) |
Example prompts:
"What Konflux applications exist in namespace team-a?"
"Show me the latest snapshot for application frontend and its integration test results"
"List all components in application backend-api and their source repos"
"What's the build history for component api-gateway?"
"Are there any failed releases in namespace platform?"
"Show me all integration test scenarios configured for application my-app"Dependencies
Package | Purpose |
| Model Context Protocol SDK (FastMCP + streamable-http transport) |
| Kubernetes Python client (typed APIs + dynamic client) |
| HTTP client for Prometheus/Alertmanager API calls |
| YAML parsing for |
| Timestamp parsing for |
| Alternative table formatting |
| Browser-based web UI (optional — |
| Claude AI for the Chat tab (optional — included in |
Security considerations
Secrets —
get_secret_keyslists key names only.list_secretsshows type and count. Values are never returned.Destructive ops —
delete_namespace,drain_node,delete_virtual_machine, etc. includeDESTRUCTIVEwarnings in their docstrings so the LLM knows to confirm before executing.run_oc_command— usesshlex.split(no shell=True) so shell metacharacters (|,>,;) are inert literal arguments. Blocked verbs:delete,rm,exec,replace— these have typed tools with confirmation prompts.apply_manifest— applies arbitrary YAML; the LLM should show the manifest to the user before calling this in agentic contexts. The-n namespaceflag does not restrict cluster-scoped resources.Bearer token redaction —
run_ocredacts--token <value>to--token <redacted>in all error messages, preventing credential exposure in LLM context or logs.Multi-cluster routing — all
ocCLI calls prependc.oc_args()(injects--serverand--token) so the correct cluster is always targeted when multiple clusters are configured.RBAC — create a minimal ServiceAccount with only the permissions your use case needs. The tools work with whatever RBAC the token has.
License
Apache License 2.0 — see LICENSE for details.
Contributing
Issues and PRs welcome. The tool modules are intentionally kept flat and simple — one domain per file, one @mcp.tool() per operation, no shared state between tools.
Available Tools
138 toolsadd_scc_to_service_accountA
Grant an SCC to a ServiceAccount via 'oc adm policy add-scc-to-user'. Equivalent to: oc adm policy add-scc-to-user system:serviceaccount::
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| scc_name | Yes | ||
| namespace | Yes | ||
| service_account | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states it grants an SCC (mutation) but does not disclose side effects, authorization needs, or reversibility.
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?
Extremely concise: two sentences, front-loaded with verb, 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?
Output schema exists (not shown), so return value not needed; however, tool is a mutation and description lacks details like whether it returns the created binding or just success.
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?
Description adds meaning by mapping parameters to command pattern (scc_name, namespace, service_account) but does not fully explain optional 'cluster' parameter; schema has 0% description 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?
Description clearly states action (grant), resource (SCC to ServiceAccount), and provides equivalent command, distinguishing from sibling 'remove_scc_from_service_account'.
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 when-to-use or when-not-to-use guidance; only implied by action description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
apply_manifestC
Apply a YAML or JSON manifest to the cluster via 'oc apply -f -'. WARNING: This applies resources directly. Review manifests before applying.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| yaml_content | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must fully disclose behavior. It mentions direct application via 'oc apply -f -' and includes a warning, but lacks details on side effects (e.g., creates/updates resources, potential overwrites) or prerequisites (e.g., authentication, cluster context). 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?
Two sentences; the warning is front-loaded. No fluff, but the description is too brief for the tool's complexity. Conciseness is good, but completeness suffers.
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?
Output schema exists but description does not mention return values. Given many sibling tools and the mutating nature, more context is needed (e.g., permissions, effects on existing resources, summary of output). Incomplete for safe 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?
Schema description coverage is 0%, but the description only implicitly explains the 'yaml_content' parameter by mentioning YAML/JSON. The 'cluster' and 'namespace' parameters are not described at all. The description adds little meaning beyond the schema field names.
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 applies a YAML or JSON manifest via 'oc apply -f -'. The purpose is clear, but it does not differentiate from sibling tools like run_oc_command, which might also apply manifests. A higher score would require explicit distinction.
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?
Includes a warning to review manifests before applying, but no guidance on when to use this tool versus alternatives (e.g., run_oc_command). Missing scenarios where this tool is appropriate or inappropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
approve_install_planC
Approve a Manual InstallPlan by patching spec.approved=True.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description only states the mutation action. It does not disclose permissions needed, error conditions, idempotency, or consequences like triggering operator installation. The 'Manual InstallPlan' qualifier provides a useful constraint.
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 efficiently states the core action. However, it may be overly minimal, lacking context that could be added without significant bloat.
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 an output schema (not shown), the description provides no information about return values or error handling. For a mutation tool with no annotations, more behavioral context is needed to be 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 0%, and the description does not elaborate on any of the three parameters. While parameter names ('name', 'cluster', 'namespace') are partially self-explanatory, the description adds no extra meaning to distinguish required from optional or clarify the 'name' field specifically.
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 (Approve), the resource (Manual InstallPlan), and the mechanism (patching spec.approved=True). It distinguishes the tool from siblings as the only approval-specific tool for InstallPlans.
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 (e.g., list_install_plans, get_operator_status). Prerequisites or contexts like requiring manual InstallPlans are mentioned but not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cancel_pipeline_runC
Cancel a running Tekton PipelineRun.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only says 'cancel a running...' with no details on side effects, permissions, reversibility, or what happens to the run. Minimal behavioral 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?
The description is a single sentence of 6 words, which is too brief to convey necessary information. Conciseness is not beneficial when key details are omitted.
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 an output schema (which reduces the need to explain return values), the description lacks information about parameter meanings, usage context, and behavioral aspects. It is incomplete for a tool with 3 parameters and no annotation support.
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 0%, and the description does not elaborate on the three parameters (name, cluster, namespace). The meaning of each parameter is left entirely to the schema, which has no descriptions. This is a critical gap.
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 (cancel) and the resource (Tekton PipelineRun) with a specific verb+resource combination. It distinguishes itself from sibling tools like get_pipeline_run or list_task_runs, though it doesn't explicitly mention alternatives.
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, no prerequisites, no context about when not to use it. The description lacks any usage instructions beyond the basic action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cordon_nodeA
Cordon a node so that no new pods are scheduled on it.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states the core behavior (cordon node, no new pods), but lacks details on side effects (existing pods continue running), safety, or idempotency (effect if already cordoned).
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 of 9 words, front-loaded with the action and resource. No unnecessary words, efficient and 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?
Given the tool's simplicity (2 params, output schema exists), the description is minimal but could be expanded with context like effect on existing pods, idempotency, or how to verify state. It is 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?
Schema description coverage is 0%, and the description does not explain the purpose of the required 'name' parameter nor the optional 'cluster' parameter. No parameter-level context is added 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 verb 'Cordon' on resource 'node', and specifies the effect 'so that no new pods are scheduled on it'. It distinguishes from sibling tools like 'uncordon_node' (reverses the operation) and listing 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?
Usage is implied: use cordon to prevent pod scheduling on a node, and uncordon to re-enable. However, no explicit guidance on when to use versus when not, nor any prerequisites or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_componentC
Create a Konflux Component.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes | ||
| source_branch | No | main | |
| container_image | No | ||
| source_repo_url | Yes | ||
| application_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It merely says 'Create a Konflux Component' with no disclosure of behavioral traits such as permissions needed, side effects, idempotency, or what succeeds.
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 short sentence) but severely underspecified for a tool with 7 parameters. Important details are omitted, so it is not appropriately sized.
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 (7 parameters, no annotations), the description fails to provide adequate context about the component being created, the output, or any constraints. It is completely inadequate.
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 0%, so the description must clarify parameter meaning. It adds nothing beyond the schema field names, leaving semantics ambiguous for parameters like 'source_repo_url' and 'container_image'.
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 'Create' and the resource 'Konflux Component', making the purpose understandable. However, it does not explicitly differentiate this tool from siblings like 'get_component' or other create 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?
No guidance is provided on when to use this tool versus alternatives, or any prerequisites. The description offers no context for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_configmapB
Create a ConfigMap. data is KEY=VALUE pairs separated by newlines or commas. Example: KEY1=value1\nKEY2=value2
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It only states 'Create a ConfigMap' without mentioning side effects, failure scenarios, or required permissions. The data format example is helpful but insufficient.
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 plus an example, all essential. Front-loaded with purpose, 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 and absence of annotations, the description omits important context about idempotency, default behavior, and expected outcomes. An output schema exists but is not referenced.
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 0%, so description must add meaning. It explains the 'data' parameter format (KEY=VALUE pairs). However, other parameters (name, namespace, cluster) lack additional context.
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 'Create a ConfigMap', indicating a specific verb and resource. It distinguishes itself from sibling tools like 'list_configmaps' and 'delete_configmap' by focusing on creation.
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 is no mention of prerequisites, when not to use it, or comparisons to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_groupC
Create an empty OpenShift Group.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It states creation but omits important details like whether the group is immediately usable, what happens if the group already exists (error or update?), and what permissions are required.
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 with no wasted words, making it concise. However, it sacrifices important details for brevity.
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 2 parameters, no schema descriptions, and no annotations, the description is too minimal. It does not provide enough context for an agent to use it correctly, especially with many sibling create tools that require differentiation.
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 description does not explain the 'cluster' parameter at all. With 0% schema description coverage, the description should compensate, but it only implies the 'name' parameter is the group name, leaving the agent to guess the purpose of 'cluster'.
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 'Create' and identifies the resource as 'empty OpenShift Group', distinguishing it from sibling tools that create other resources like namespaces or role bindings.
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 when to create a group versus adding users to an existing group, or any prerequisites like cluster admin permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_inference_serviceC
Create a KServe InferenceService CR.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes | ||
| storage_uri | Yes | ||
| min_replicas | No | ||
| model_format | Yes | ||
| serving_runtime | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description fails to disclose any behavioral traits such as destructive nature, required permissions, side effects, or error conditions. The description is too minimal to inform the agent.
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?
Extremely concise but underspecified. The description is a single sentence that does not earn its place as it provides no additional value beyond the tool name.
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 7 parameters and an output schema, the description is completely inadequate. It does not cover parameter usage, return values, or any contextual information needed for correct invocation.
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 0%, and the description adds no meaning to the 7 parameters. It merely restates the tool's action without explaining parameter roles 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 the verb 'Create' and the resource 'KServe InferenceService CR', which is specific. However, it does not differentiate from sibling tools like list_model_servers or delete_inference_service, so it lacks contrast.
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 is no mention of prerequisites, typical scenarios, 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.
create_machine_autoscalerA
Create a MachineAutoscaler CR targeting a MachineSet in openshift-machine-api. Requires a ClusterAutoscaler to be configured for this to take effect.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| max_replicas | Yes | ||
| min_replicas | Yes | ||
| machineset_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden for behavioral hints. It states the creation action but does not disclose mutation effects, idempotency, permissions required, or error conditions. The prerequisite is useful but insufficient.
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, front-loading the core action immediately. No extraneous 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?
Given the tool has an output schema (not shown), the description need not detail return values. It provides a critical prerequisite but omits error behaviors, conflict handling, or scope of changes. Adequate for a straightforward CRUD tool but could be richer.
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 0%, and the description adds no additional meaning to the parameters. While three parameters are self-explanatory ('name', 'machineset_name', 'min_replicas', 'max_replicas'), the 'cluster' parameter has a default but no explanation. The baseline is 3 due to minimal description contribution.
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 ('Create'), the resource ('MachineAutoscaler CR'), and the target ('MachineSet in openshift-machine-api'). It effectively distinguishes from sibling tools like list_machine_autoscalers and scale_machine_set.
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 key prerequisite: 'Requires a ClusterAutoscaler to be configured for this to take effect.' This guides the agent on necessary conditions. However, it lacks explicit exclusions or alternative tools for different scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_manifest_workC
Create a ManifestWork to deploy resources to a ManagedCluster.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| cluster_name | Yes | ||
| manifests_yaml | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 idempotency, error handling, or whether the operation is destructive. The description is too brief.
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 concise (one sentence) but lacks necessary detail. It is appropriately short but not sufficiently 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?
With four parameters (three required) and an output schema, the description fails to explain what a ManifestWork is or how to format the manifests_yaml parameter, leaving significant 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 description coverage is 0% and the description adds no meaning to the four parameters (name, cluster, cluster_name, manifests_yaml). Their formats and purposes are unexplained.
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 'Create', the resource 'ManifestWork', and the purpose 'to deploy resources to a ManagedCluster'. It effectively distinguishes from sibling tools like list_manifest_works.
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, nor are there any prerequisites or exclusion criteria mentioned. The description lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_namespaceB
Create a new namespace, optionally with labels.
Args: name: Namespace name. labels: Comma-separated KEY=VALUE pairs (e.g. "env=prod,team=platform"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| labels | No | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description lacks disclosure of side effects, idempotency, or error scenarios (e.g., duplicate namespace 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?
Concise with clear 'Args:' listing; no superfluous text, though slightly more structure (e.g., note on default cluster) could improve.
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 parameters and return type hinted by output schema, but missing failure modes or what the response contains.
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?
Description explains parameter formats (e.g., 'KEY=VALUE' for labels, cluster target default) beyond the schema's titles, compensating for 0% schema 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 action 'Create' and the resource 'namespace', with optional labels. It directly distinguishes from siblings like delete_namespace and list_namespaces.
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., apply_manifest), no prerequisites or explicit context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_pvcB
Create a PersistentVolumeClaim. storage_request example: 10Gi access_mode: ReadWriteOnce, ReadOnlyMany, ReadWriteMany, ReadWriteOncePod.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes | ||
| access_mode | No | ReadWriteOnce | |
| storage_class | No | ||
| storage_request | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for disclosing behavioral traits. It mentions creating a PVC (a write operation) but lacks details on permissions required, side effects (e.g., if PVC already exists), or any constraints. The format examples are helpful but insufficient.
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 concise at three sentences, with the purpose stated first. Every sentence adds value through examples and valid values. However, it could be structured more formally with clearer parameter explanations.
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 6 parameters, no annotations, an output schema, and performs a creation operation, the description is minimal. It does not explain return values (though output schema exists), permission requirements, or specific constraints like cluster selection. The context is incomplete for safe invocation.
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 (0% in schema, but description adds value), the description provides examples for storage_request (e.g., '10Gi') and lists valid access_mode values. However, it does not explain the cluster, storage_class, or other parameters, leaving gaps. This adds moderate 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's action: creating a PersistentVolumeClaim. It provides examples for key parameters, making the purpose unambiguous. The sibling tools include list_pvcs and get_pvc, which are distinct operations.
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 vs alternatives like list_pvcs or get_pvc. It does not mention prerequisites, such as requiring an existing namespace or storage class, nor does it exclude scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_role_bindingC
Create a RoleBinding in a namespace. subject_kind: User, Group, or ServiceAccount. cluster_role: if True, references a ClusterRole instead of a Role.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes | ||
| role_name | Yes | ||
| cluster_role | No | ||
| subject_kind | Yes | ||
| subject_name | Yes | ||
| subject_namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral disclosure burden. It does not mention whether updates are allowed, idempotency, required permissions, or error conditions. Only explains the cluster_role and subject_kind parameters, missing broader 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 very concise (two main sentences plus parameter hints) and front-loads the purpose. No redundant information, but could be slightly more structured with bullet points for parameters.
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 8 parameters, 5 required, and an output schema, the description is incomplete. It lacks details on return value, permission requirements, namespace vs cluster scope handling, and interaction with other RBAC resources. Does not fully leverage the output schema to reduce burden.
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 0%, so description must compensate. It explains subject_kind (User, Group, ServiceAccount) and cluster_role flag, adding value beyond schema. However, 6 out of 8 parameters (name, namespace, role_name, subject_name, etc.) lack explanation beyond their names.
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 ('Create a RoleBinding') and the resource type, with additional context on key parameters like subject_kind and cluster_role. It distinguishes itself from sibling tools like delete_role_binding and list_cluster_role_bindings.
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 (e.g., creating ClusterRoleBindings, using other RBAC tools). The description provides parameter details but no context on prerequisites or appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_sccB
Create a custom SecurityContextConstraint CR. run_as_any: if True, sets RunAsAny for runAsUser and fsGroup. allow_privilege_escalation: if True, allows processes to gain more privileges than their parent (required for setuid binaries).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| host_pid | No | ||
| privileged | No | ||
| run_as_any | No | ||
| host_network | No | ||
| allow_privilege_escalation | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It explains effects of two parameters but omits important details like required cluster-admin privileges, default behavior for other parameters, and response format. No mention of 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 concise with two focused sentences, no redundant information, and front-loads the primary 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 the tool's complexity (7 parameters, creation operation, no annotations, output schema exists), the description is too brief. It does not cover required permissions, parameter interactions, or typical use cases, leaving the agent underinformed for correct invocation.
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 0% description coverage, but the description adds meaning for 2 out of 7 parameters (run_as_any, allow_privilege_escalation). The remaining parameters (name, cluster, host_pid, privileged, host_network) are left undocumented, which is insufficient given the low baseline 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 action ('Create') and the resource ('custom SecurityContextConstraint CR'), distinguishing it from sibling tools like list_sccs or add_scc_to_service_account.
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 for creating SCCs but provides no guidance on when to use versus alternatives, no prerequisites, and no exclusions like required permissions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_virtual_machineC
Create a VirtualMachine. Provide image_url (HTTP) or pvc_name (existing PVC).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| memory | Yes | ||
| cluster | No | ||
| pvc_name | No | ||
| cpu_cores | Yes | ||
| image_url | No | ||
| namespace | Yes | ||
| cloud_init_userdata | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It indicates creation (mutation) but omits details like whether it blocks until ready, required permissions, or side effects (e.g., resource consumption). The output schema is not referenced, so return behavior is unclear.
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 concise at 13 words, front-loading the purpose. It is appropriately brief but could include more structured information without becoming verbose. 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 complexity of VM creation (8 parameters, no annotations, output schema exists but unused), the description is too thin. It lacks information on return value, default behavior, constraints (e.g., required field formats), and failure modes. Competing tools with similar complexity (e.g., create_pvc) likely offer more complete descriptions.
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 0%, so the description must compensate. It explains the mutual exclusivity of image_url and pvc_name, adding meaning beyond schema titles. However, it ignores 6 of 8 parameters (e.g., cpu_cores, memory, cloud_init_userdata), leaving their semantics entirely to schema titles without added context.
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 creates a VirtualMachine, which is a specific verb+resource. It distinguishes from sibling tools like list_virtual_machines or start_virtual_machine by focusing on creation. The mention of two boot source options (image_url or pvc_name) adds precision.
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. It does not specify prerequisites, such as requiring an existing PVC for pvc_name, or when not to use it (e.g., if the VM already exists). The description merely states the creation method options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_vm_snapshotC
Create a VirtualMachineSnapshot of a VM.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| vm_name | Yes | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 the action without any details on side effects (e.g., whether the VM must be powered off, snapshot consistency guarantees, or duration). This is insufficient for an agent to understand the tool's 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 a single sentence, very concise and front-loaded with the action. It could include a bit more detail without losing conciseness, but it is 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 having an output schema, the description lacks essential context such as error conditions, prerequisites, or workflow steps. For a snapshot creation tool, more behavioral and usage context is needed to be 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 has 4 parameters with no descriptions (0% coverage), and the description adds no meaning to any parameter (name, cluster, vm_name, namespace). The agent receives no help on how to use these 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 'Create a VirtualMachineSnapshot of a VM' clearly states the action and resource, distinguishing it from sibling tools like list_vm_snapshots and restore_vm_snapshot. It could be slightly more specific about the scope (e.g., namespace), but overall it is clear.
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 (e.g., restore_vm_snapshot). There is no mention of prerequisites or context for invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_configmapC
Delete a ConfigMap.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It only says 'Delete a ConfigMap,' omitting details like irreversibility, permission requirements, or behavior on nonexistent ConfigMaps. The presence of an output schema is not acknowledged.
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, which is concise but lacks structure. It does front-load the core action, but the brevity leaves important gaps.
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 three parameters and an output schema, the description is insufficient. It does not cover return values, error conditions, or the context of deletion (e.g., cluster/namespace scope).
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 0%, and the description adds no parameter information beyond the schema itself. The three parameters (name, cluster, namespace) are not explained, leaving the agent without guidance on their usage or 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 clearly states it deletes a ConfigMap, using a specific verb and resource. It distinguishes from sibling tools like list_configmaps or create_configmap.
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, no prerequisites, and no mention of when not to use it. The description does not help the agent decide between this and other delete tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_inference_serviceC
Delete a KServe InferenceService.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden but fails to disclose behavioral traits like whether deletion is immediate, destructive, or reversible. It does not mention required permissions or potential impacts.
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 unnecessary words. However, the lack of detail limits its value, but it is not 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 tool's complexity (delete operation with 3 params) and the presence of an output schema, the description is too sparse. It does not explain return values, error handling, or necessary conditions.
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 0%, and the description adds no meaning to the parameters (name, cluster, namespace). It does not explain the purpose of 'cluster' or constraints on inputs.
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 'Delete' and the resource 'KServe InferenceService', making the purpose unambiguous. It also distinguishes from sibling tools like 'create_inference_service'.
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 'delete_service' or 'delete_pvc'. There is no mention of prerequisites or context for deletion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_machineA
Delete a Machine — the Machine controller will drain and terminate the underlying node. WARNING: Destructive. The node will be cordoned, drained, and terminated.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 that the operation is destructive and that the node will be cordoned, drained, and terminated. However, it does not mention authorization requirements or reversibility.
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 that get straight to the point. The warning is 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?
With an output schema present, the description need not cover return values. It explains the effect adequately for a destructive operation. However, it does not mention error conditions or prerequisites (e.g., machine existence).
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 0%, yet the description does not elaborate on the parameters (name, cluster). It adds no meaning beyond the schema, leaving the agent without guidance on how to specify the cluster or what each parameter does.
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 'Delete' and the resource 'Machine', and explains that the underlying node will be drained and terminated. It is distinct from sibling tools like get_machine or scale_machine_set.
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 includes a 'WARNING: Destructive' which implicitly advises cautious usage. It does not explicitly state when to use vs alternatives, but the warning effectively communicates the tool's serious nature.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_namespaceA
DESTRUCTIVE: Delete a namespace and ALL resources within it.
This action is irreversible. All pods, services, persistent volume claims, and other objects in the namespace will be permanently deleted.
Args: name: Namespace to delete. cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description clearly labels the tool as 'DESTRUCTIVE' and 'irreversible', and lists the types of resources that will be permanently deleted (pods, services, PVCs, etc.). This provides good behavioral 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 extremely concise: a warning header, irreversibility note, a list of affected resources, and the two parameters. Every sentence is necessary and front-loaded with the important destructive warning.
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 adequately covers the destructive nature and consequences of the operation. Given that an output schema exists, the lack of return value details is acceptable. The description is complete for a tool with this level of 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 description adds meaning to the parameters: 'name: Namespace to delete.' and 'cluster: Named cluster to target (empty = default).' This clarifies the purpose and default behavior, which is useful since the schema has 0% 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 'Delete a namespace and ALL resources within it.', specifying the verb 'delete' and the resource 'namespace'. This distinguishes it from siblings like 'create_namespace' or 'list_namespaces'.
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 warns about irreversibility but does not provide explicit guidance on when to use this tool versus alternatives such as 'delete_resource'. The usage context is implied but lacks direct comparative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_network_policyB
Delete a NetworkPolicy.
Args: name: NetworkPolicy name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only states 'Delete a NetworkPolicy' without mentioning required permissions, reversibility, or what happens upon deletion. This is insufficient for a destructive 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 very short and front-loaded with the core action. Each line is purposeful. However, the use of Python docstring format (Args:) is slightly less natural for LLM consumption than plain 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?
The description covers the basic operation but omits details like success/failure indication, idempotency, or side effects. An output schema exists, but without its content, we assume it covers return values. Still, 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?
Schema description coverage is 0%, so the description must explain all parameters. It does so for all three: name (required), namespace (default 'default'), and cluster (default empty). This adds meaning beyond the schema, though explanations are minimal.
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 starts with 'Delete a NetworkPolicy.' which clearly states the verb and resource. It distinguishes from sibling tools that delete other resources like pods, services, etc.
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 or when not to use it. The description lacks any context about prerequisites or side effects, leaving the agent with minimal decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_podC
Delete a pod.
Args: name: Pod name. namespace: Namespace (default: "default"). force: Force-delete immediately (grace-period=0). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| force | No | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 does not disclose that deletion is destructive, irreversible, or requires specific permissions. The 'force' parameter is briefly explained but overall behavioral impacts are missing.
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?
Extremely concise: two-line summary and four parameter descriptions. No wasted words, information is presented in a structured args list.
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 destructive action with no annotations, the description lacks warnings about side effects, return values, or prerequisites. The output schema exists but is not leveraged. The tool's behavior in cluster contexts is underspecified.
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 0% schema description coverage, the description adds minimal meaning beyond the schema: it repeats parameter names and defaults but provides no additional constraints or usage nuances.
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 'Delete a pod' which is a specific verb and resource. It distinguishes from sibling tools as there is no other 'delete' for pods, but does not elaborate on scope or implications.
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 other deletion tools or prerequisites. It simply states the action without context on selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_pvB
Delete a PersistentVolume. WARNING: ensure no PVC is bound before deleting.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It warns about potential issue if PVC is bound but does not describe what happens on deletion (e.g., error, destruction, cascade), nor does it mention auth requirements or idempotency.
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 one sentence and a warning. It is front-loaded and 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?
Despite simplicity, the description lacks details on return values, prerequisites beyond the warning, and how to verify precondition. The warning is helpful but incomplete for a safe deletion 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?
Schema description coverage is 0%, and the description adds no explanation for either parameter ('name' or 'cluster'). The agent must infer their usage from names alone.
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 'Delete a PersistentVolume' clearly states the verb and resource. The warning about ensuring no PVC is bound further clarifies the scope and distinguishes it from related tools like delete_pvc.
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 warning provides a precondition ('ensure no PVC is bound'), giving some usage guidance. However, it does not specify when to use or avoid this tool, nor does it mention alternatives like checking PVCs first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_pvcB
Delete a PersistentVolumeClaim. WARNING: data loss may occur if PVC is in use.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Warns about potential data loss if PVC is in use, which is a key behavioral trait. However, with no annotations, more details (e.g., irreversible deletion, permission requirements) would improve transparency. The warning 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?
Extremely concise: one sentence with a critical warning. No unnecessary words. 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 destructive tool with 3 parameters and an output schema, the description lacks details on parameter usage, output, and prerequisites. Among many sibling tools, it does not help differentiate 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?
Schema description coverage is 0%, but the description does not explain any parameter. It does not clarify what 'name', 'cluster', or 'namespace' represent, nor their defaults 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?
Clearly states the action 'Delete' and the resource 'PersistentVolumeClaim'. Distinguishes from siblings like delete_pv (different resource) and create_pvc (opposite operation).
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 warning about data loss implies caution but does not specify prerequisites or conditions for safe usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_resourceC
Delete any Kubernetes/OpenShift resource by type and name. WARNING: Destructive operation. Confirm the resource name before proceeding.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| force | No | ||
| cluster | No | ||
| namespace | No | ||
| resource_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 mentions 'Destructive operation' but fails to disclose other behavioral traits such as required permissions, synchronicity, success/error responses, or side effects beyond the warning. For a destructive tool, this is insufficient.
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 states purpose, second provides a critical warning. No unnecessary words. However, it could be slightly more structured (e.g., mentioning required vs optional parameters) without adding length.
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 5 parameters (2 required), no parameter-level descriptions, and is destructive, the description fails to cover essential usage context. It omits how to use optional parameters like cluster and namespace, and does not explain return values despite an output schema existing. The description is incomplete for safe and correct invocation.
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 0%, yet the description only clarifies the purpose of 'resource_type' and 'name' (by type and name). The 'force', 'cluster', and 'namespace' parameters are left unexplained. The description adds minimal value beyond the parameter names.
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 'Delete', the resource type 'any Kubernetes/OpenShift resource', and specifies the parameters 'by type and name'. It effectively distinguishes this generic delete tool from the numerous sibling tools that delete specific 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?
The description includes a warning about destructive operations but provides no explicit guidance on when to use this generic delete tool versus the many specific delete sibling tools (e.g., delete_pod, delete_service). There is no when-to-use or when-to-avoid context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_role_bindingC
Delete a RoleBinding.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only says 'Delete' implying a destructive action, but does not mention consequences, irreversibility, required permissions, 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 extremely concise (one sentence, six words) and front-loaded. However, it is so minimal that it borders on under-specification, missing opportunities to add value without becoming 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 tool's destructive nature, three parameters, and the presence of many sibling tools, the description is incomplete. It does not clarify return behavior, error conditions, or the scope of deletion (e.g., cluster-wide vs namespace-scoped).
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 0%, yet the description adds no parameter details. It does not explain what 'name', 'cluster', or 'namespace' represent or how they affect the deletion. The agent must rely solely on parameter names.
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 'Delete a RoleBinding' clearly states the action (delete) and the resource (RoleBinding), distinguishing it from sibling tools that list or create role bindings. It is specific and unambiguous.
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, no prerequisites, and no conditions under which deletion should be performed. The agent receives no context for appropriate invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_routeC
Delete an OpenShift Route.
Args: name: Route name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Delete' but does not disclose consequences such as irreversibility, cascading effects, or required permissions. With no annotations, the description fails to provide adequate 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 brief but includes unnecessary boilerplate like 'Args:' and list formatting. Could be more concise by integrating parameter descriptions into a single sentence.
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 it is a destructive operation with 3 parameters and an output schema (not described), the description lacks details on return values, side effects, and error conditions. It feels incomplete for a deletion 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 0%, yet the description merely lists parameter names and defaults, adding no extra meaning beyond the schema. For example, 'cluster' is described as 'Named cluster to target', which is essentially the same as the property title. No format, constraints, or usage examples are given.
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 'Delete' and the resource 'OpenShift Route', making the tool's purpose unambiguous. It is distinct from sibling tools like list_routes and get_route.
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 delete_service or delete_pod. No mention of prerequisites, context, 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.
delete_serviceC
Delete a Service.
Args: name: Service name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the action 'Delete.' It does not disclose side effects, required permissions, or cascading impacts on dependent resources.
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 concise, using a single line to state the purpose and a list for parameters. However, it lacks structured sections or additional context.
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 presence of an output schema, the description does not need to explain return values, but it fails to cover behavioral aspects or parameter details beyond names, leaving the agent uncertain about tool behavior.
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 0%. The description lists parameters with minimal context (e.g., 'Service name') but adds no meaning beyond the input schema's type definitions.
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 'Delete a Service,' identifying the verb and resource. However, it does not distinguish this tool from sibling delete tools like delete_pod or delete_route.
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, nor any context about 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.
exec_in_podB
Execute a command inside a pod via oc exec. command is split with shlex — shell metacharacters (pipes, redirects) are not interpreted.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| command | Yes | ||
| container | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 key behavioral trait that command is split with shlex and shell metacharacters are not interpreted. However, it omits details like whether it connects to a running container or output format (though output schema exists). The disclosed trait is valuable and goes beyond a generic 'execute command'.
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 fluff. Every word adds value: the first states the action, the second clarifies a critical behavioral detail. No unnecessary 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?
Given 5 parameters, no schema descriptions, and no annotations, the description is far too brief. It lacks parameter explanations, usage context, and error/edge case behavior. The presence of an output schema does not compensate for the missing parameter semantics.
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 0%, so the description must add meaning beyond the schema. It does not mention any parameter names, purpose, or defaults. For 5 parameters including 'name' and 'command', the description provides no explanation of what each parameter does.
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 action: 'Execute a command inside a pod via oc exec.' It also adds specific detail about shlex splitting and shell metacharacters not being interpreted. This distinguishes it from sibling tools like 'run_oc_command' or pod management 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 provides no guidance on when to use this tool versus alternatives (e.g., run_oc_command) or any prerequisites (e.g., pod must be running). The shlex note is behavioral, not usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_alert_detailsB
Get full labels, annotations, status, and silence info for all instances of a named alert.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| alert_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 does not explicitly state that the operation is read-only or require any special permissions, leaving the agent to infer safety from context. Adding a note about destructiveness would improve 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, well-structured sentence that efficiently conveys the tool's purpose without any extraneous words. Every word contributes meaning.
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 output schema exists (so return values need not be explained), the description could be more complete by mentioning the optional cluster parameter and clarifying the difference from similar list tools. However, for a simple detail retrieval, it provides the essential information.
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 0%. The description mentions 'named alert' which relates to the required 'alert_name' parameter, but does not explain the optional 'cluster' parameter or provide any constraints or formatting details. The parameter names are self-explanatory, but the description adds minimal value 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 verb 'Get' and the resource 'full labels, annotations, status, and silence info for all instances of a named alert.' It distinguishes from siblings like list_alerts and list_alerting_rules by specifying it retrieves detailed info for a specific alert by name.
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 context (getting details for a named alert) but lacks explicit guidance on when to use this tool versus alternatives like list_alerts or list_alerting_rules, nor does it mention any 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_buildC
Get detailed Build information: phase, reason, output image, and timing.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It implies a read operation but does not explicitly state read-only, error conditions, authorization needs, or what happens if the build does not exist.
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?
Extremely concise: a single sentence that starts with the verb and resource, then lists key return 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?
The description covers the return value adequately, and an output schema exists. However, it omits parameter documentation and usage context, which is a gap for a tool with 3 parameters. Adequate for minimal viability 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?
Schema description coverage is 0% and the description does not explain the parameters (name, cluster, namespace). The description only lists output fields, adding no meaning to the input parameters required to invoke the 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 clearly states 'Get detailed Build information' and lists key fields (phase, reason, output image, timing). It is specific and distinguishes from sibling tools like get_build_config or get_build_logs, though no explicit differentiation is provided.
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., get_build_config, get_build_logs). No prerequisites, exclusions, or context for usage are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_build_configB
Describe a BuildConfig in detail using oc describe bc.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description should compensate. It mentions using 'oc describe bc', implying a read operation, but does not disclose permissions, side effects, or behavior on missing resources. The description lacks behavioral details expected for a command-line 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 a single short sentence, which is concise and front-loaded. However, it borders on being too vague; a bit more detail could improve clarity without sacrificing conciseness.
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 is minimal for a tool that describes a complex resource. While an output schema is indicated (not shown), the description does not mention what 'in detail' means (e.g., full YAML/JSON). It 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 description coverage is 0%, meaning the schema has no parameter descriptions. The tool description does not explain the parameters (name, cluster, namespace) beyond their names, missing an opportunity to clarify their roles, especially for 'cluster' and 'namespace' which have defaults but no explanation.
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 describes a BuildConfig in detail using 'oc describe bc'. The verb 'describe' and resource 'BuildConfig' are specific, and the tool is distinct from siblings like 'get_build' or 'get_build_logs' which serve different 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?
No explicit when-to-use or when-not-to-use guidance is provided. The usage is implied by the name and description, but there is no mention of alternatives or prerequisites, which would be helpful given the large set of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_build_logsA
Retrieve logs for a Build. Set follow=True to stream (returns available output).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| follow | No | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It correctly indicates a read operation and mentions streaming behavior for `follow`. However, it lacks details on error handling, log availability limits, or whether returning 'available output' means non-blocking.
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?
Extremely concise with two sentences that add unique value. No filler words, and each sentence provides essential 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?
Despite having an output schema, the description fails to explain the required `name` parameter and the optional `cluster`/`namespace`, which are needed for correct invocation. The description is too brief for a 4-parameter 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?
Only the `follow` parameter is described in the description (via usage tip). The required `name` parameter and optional `cluster`/`namespace` are not explained. With 0% schema coverage, this leaves significant gaps for correct invocation.
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 action ('Retrieve logs') and the resource ('a Build'), making it distinct from sibling tools like `get_build` which returns build details. No ambiguity.
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 tip for `follow=True` but does not explain when to use this tool vs alternatives (e.g., `get_build` for metadata). Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cluster_infoB
Get high-level cluster information: name, API URL, version, channel, and platform type.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries behavioral burden. It indicates a read-only operation and lists output fields, but doesn't address authentication, rate limits, or side effects. Adequate 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?
Single sentence, front-loaded with action and resource, no wasted words. Highly concise.
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?
Output schema exists, so return details are covered. However, the description lacks usage context for the optional parameter and does not clarify what happens when no cluster is specified. Adequate but 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?
Schema description coverage is 0% and the description does not explain the 'cluster' parameter (optional, default empty). It adds no meaning beyond the schema, failing to compensate for the lack of parameter documentation.
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 'Get' and resource 'cluster information', and lists specific fields returned (name, API URL, version, channel, platform type). It distinguishes from sibling tools that focus on more specific cluster aspects (e.g., get_cluster_operator_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?
No guidance on when to use this tool vs. alternatives. The description only states what it does, not the context or criteria for choosing it over other cluster info tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cluster_operator_detailsC
Get detailed conditions, versions, and related objects for a single ClusterOperator.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior but only mentions the type of details returned. It does not state whether the operation is read-only, requires specific permissions, has performance impacts, or any other 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?
The description is a single concise sentence with no unnecessary words. It is well-structured and front-loaded with the core purpose, but could benefit from bullet points or additional context without harming conciseness.
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 large number of sibling tools, the description is too brief to distinguish its role. It does not explain what a ClusterOperator is, how it relates to get_operator_status or other tools, or what the output schema contains, leaving significant 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 description coverage is 0%, so parameters have no descriptions. The tool description does not explain the 'name' or 'cluster' parameters, leaving their purpose and constraints ambiguous.
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 'Get detailed conditions, versions, and related objects for a single ClusterOperator.' It uses a specific verb (Get) and resource (ClusterOperator), distinguishing it from sibling tools like list_installed_operators or get_operator_status.
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. There is no mention of prerequisites, context, or exclusions, leaving the agent to infer usage without help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_componentB
Get detailed Konflux Component info including GitOps repo and nudges.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits. It implies a read-only operation but does not disclose idempotency, side effects, or error conditions. It is minimal but not misleading.
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, compact sentence that front-loads the key action and resource. No extraneous 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 simple nature of a getter with 3 parameters and an output schema present, the description is adequate for basic understanding but lacks usage guidance and parameter 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?
Schema description coverage is 0%, but the description does not explain the parameters beyond the resource name. It mentions 'including GitOps repo and nudges' which hints at output, but not parameter meaning, such as what 'cluster' does or its default 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 verb (get), resource (Konflux Component), and the specific information returned (GitOps repo and nudges). It distinguishes this tool from siblings like create_component and get_konflux_application.
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. Does not mention prerequisites, when not to use it, or how it compares to similar tools like get_konflux_application.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dsciC
Get DSCInitialization status: phase, conditions, and component enablement.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully convey behavior. It only lists what is retrieved, not side effects, permissions, or constraints (e.g., read-only, required cluster 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?
A single sentence efficiently conveys the core purpose. Well-structured but could briefly add parameter context without losing conciseness.
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 getter with one optional parameter and output schema, the description is minimally adequate. It names the fields returned but lacks context on what DSCInitialization is or when to fetch 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?
The description does not mention the 'cluster' parameter at all. Schema coverage is 0%, so no guidance on how or when to use it, even though it has a default.
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 retrieves DSCInitialization status (phase, conditions, component enablement). The verb 'Get' and resource 'DSCInitialization' are specific, distinguishing it from generic siblings like 'get_resource'.
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., 'get_resource'). No mention of prerequisites, scenarios, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_etcd_statusC
Get ETCD cluster status from operator.openshift.io/v1 etcds/cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral transparency. It only states 'Get ETCD cluster status' without disclosing if the operation is read-only, what the default behavior is when cluster is omitted, potential errors, or required permissions.
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 information. However, it sacrifices necessary detail for brevity. Still, it earns a high score for being compact and direct.
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 the presence of an output schema (not shown), the description lacks essential context such as parameter meaning, usage conditions, and behavioral traits. For a single-parameter tool with no annotations, this minimal description is insufficient for 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?
The description provides no explanation for the 'cluster' parameter, despite 0% schema description coverage. It merely mentions the resource path, but does not clarify how the parameter relates to the cluster name or its default value, leaving the agent without guidance on how to use it.
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 (Get ETCD cluster status) and the specific resource (operator.openshift.io/v1 etcds/cluster). It distinguishes this tool from siblings like get_cluster_info or get_operator_status by targeting ETCD specifically.
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 usage guidelines are provided. The description does not indicate when to use this tool versus alternatives such as get_cluster_info or get_operator_status, nor does it mention any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_gitops_applicationA
Get ArgoCD Application details: sync/health/repo/path/destination + resources table.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | openshift-gitops |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It indicates a read operation ('Get... details') and lists returned fields, which is adequate but does not disclose limitations, permissions, or whether it requires specific cluster access. It is acceptable 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, front-loaded sentence that conveys the essential purpose and output without 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?
Given the tool has an output schema (not shown) and only one required parameter, the description covers the key returned fields adequately. However, it does not mention any limits, ordering, or error conditions, but for a read tool with a clear scope, it is mostly 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 0%, meaning the description must compensate for parameter meaning. However, the description does not explain the role or constraints of 'name', 'cluster', or 'namespace' beyond their existence in the schema. The default values are present in the schema but not elaborated in the 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?
The description clearly states the tool's purpose: to get ArgoCD Application details, listing specific data points (sync, health, repo, path, destination, resources table). It uses a specific verb ('get') and resource ('ArgoCD Application'), distinguishing it from sibling tools like 'sync_gitops_application' or 'get_resource'.
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. The sibling set includes 'sync_gitops_application' and many other get/list tools, but the description does not specify context, prerequisites, or when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_infrastructure_configC
Get Infrastructure and Network configuration CRDs from config.openshift.io/v1.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 the API endpoint (config.openshift.io/v1) but omits any side effects, authentication needs, or output structure. The existence of an output schema partially mitigates, but the description itself adds minimal 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 short sentence, which is concise but lacks substantive information. Every word earns its place, but more content is needed for completeness within the compact structure.
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 low complexity (one optional parameter) and the presence of an output schema, the description is incomplete. It fails to explain the typical use case, relationship to sibling tools, or any constraints, leaving the agent with limited actionable 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 description coverage is 0%. The single parameter 'cluster' has no description in the schema or the tool definition, leaving its purpose and acceptable values unclear. The parameter name hints at a cluster reference but lacks explicit documentation.
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 retrieves Infrastructure and Network configuration CRDs from config.openshift.io/v1, specifying both the resource type and API source. However, it does not explicitly differentiate from sibling tools like 'get_resource', though the specific CRD focus provides some distinction.
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 'get_resource' or 'get_cluster_info'. The description does not mention prerequisites, limitations, or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_konflux_applicationC
Get Konflux Application details including conditions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It mentions 'including conditions' but fails to describe read-only nature, access requirements, or error behavior (e.g., if resource not found). The description is insufficient for safe invocation.
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 (one sentence), but it is under-specified rather than concise. It lacks necessary details, making it inefficient for the agent. Every sentence should earn its place, but this single sentence omits 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?
Given no annotations, no parameter descriptions, and an output schema (unseen), the description is incomplete. It does not specify the return structure or additional context needed for correct invocation. The agent lacks essential information to fully utilize this 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 0%, and the description does not explain the parameters (name, cluster, namespace). Without any parameter context, the agent cannot correctly provide values. The description adds no value 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 purpose: to get Konflux Application details including conditions. It uses a specific verb 'Get' and resource 'Konflux Application', distinguishing it from sibling 'list_konflux_applications'. However, it could be more precise by noting the tool requires name and 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 usage guidance is provided. The description does not indicate when to use this tool versus alternatives like 'list_konflux_applications' or 'get_component'. No when-not 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.
get_machineB
Get detailed Machine info: phase, nodeRef, providerID, addresses, conditions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 read-only nature, authorization requirements, or rate limits. It only mentions the information returned, not side effects or constraints.
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 and front-loaded with the purpose, but it could include more context without becoming verbose. It wastes no 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 that an output schema exists (though not shown), the description is adequate but not complete. It does not mention required parameters, error cases, or user guidance for using 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?
Schema coverage is 0%, and the description does not explain the parameters (name, cluster) beyond listing them. It adds no meaning about how to use these parameters or their format.
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 retrieves detailed Machine info and lists specific fields (phase, nodeRef, providerID, addresses, conditions). It distinguishes from sibling tools like get_node and get_cluster_info.
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 machine info is needed but does not explicitly state when to use this tool over alternatives like get_resource or get_node. No comparison or exclusions provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_namespace_resource_quotaC
List ResourceQuotas and LimitRanges in a namespace.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 states the basic action without disclosing any behavioral traits like read-only nature, permission requirements, or pagination 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?
Extremely concise (one sentence), but not front-loaded with critical information. It is appropriately sized for a simple list tool, but lacks structure that could improve clarity.
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?
With an output schema present, return values need not be explained. However, the description omits details like error scenarios, pagination, or prerequisites. 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?
Schema description coverage is 0%, so the description must add meaning. It only implies that 'namespace' scopes the listing, but does not explain the optional 'cluster' parameter. Fails to compensate for lack of schema 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?
The description clearly states the verb 'List' and the specific resources 'ResourceQuotas and LimitRanges', and scopes it to a namespace. However, it does not differentiate from siblings like 'get_resource' which might also 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?
No guidance on when to use this tool versus alternatives (e.g., get_resource). 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.
get_nodeA
Get capacity, allocatable resources, conditions, and taints for a node.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose side effects, permissions, or safety profile. For a read-only tool, 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?
Single sentence, efficient and to the point. No unnecessary words, but could be slightly more 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?
Describes main output fields but lacks parameter guidance and usage context. Output schema exists but description alone is not fully self-contained.
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 0% and description does not clarify parameter meaning. 'name' is obvious but 'cluster' (optional default empty) is unexplained, potentially confusing without context.
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 specifies verb 'get' and resource 'node', and lists specific aspects: capacity, allocatable resources, conditions, taints. Clearly distinguishes from sibling tools like 'list_nodes' which lists nodes.
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 when-to-use or when-not-to-use guidance. Implicitly for retrieving details of a specific node, but alternatives like 'list_nodes' are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_oauth_configC
Get the cluster OAuth configuration and identity providers from config.openshift.io/v1.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden for behavioral traits. It only states the tool 'gets' configuration, which implies a read operation, but provides no details on side effects, required permissions, or response size. No additional behavioral context is offered beyond what is obvious from the tool name.
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 with no extraneous words. It is front-loaded with the action and object. However, its brevity sacrifices completeness, which prevents a higher score.
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 output schema exists (so return values are covered) and the tool is simple, the description provides the essential purpose. However, the lack of parameter documentation and usage guidance leaves gaps. It is minimally adequate but not thorough.
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 one parameter (cluster) with 0% description coverage, and the description does not mention it at all. The description adds no meaning beyond the schema, leaving the agent without guidance on how to use the parameter or its effect on the result.
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 exact resource (cluster OAuth configuration and identity providers) and the API version (config.openshift.io/v1), making it clear what the tool retrieves. It distinguishes itself from sibling tools like get_infrastructure_config or get_cluster_info by focusing specifically on OAuth configuration.
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. There is no mention of prerequisites, filters, or context in which this tool should be preferred over similar getter tools. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_operator_statusB
Get ClusterServiceVersion status: phase, conditions, and owned CRDs. If namespace is empty, all namespaces are searched for a CSV whose name matches.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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. However, it only mentions the data returned (phase, conditions, owned CRDs) without mentioning side effects, required permissions, error cases, or any destructive potential. The description lacks transparency about mutation or safety.
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 with two sentences, front-loading the main purpose and then adding context about namespace behavior. It could be slightly more efficient, but overall it is well-structured and easy to parse.
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 an output schema, which reduces the need to describe return values. However, the description omits prerequisites (e.g., cluster context required) and potential error conditions. Given the complexity of operator status, the description is 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?
Schema description coverage is 0%, so the description must compensate. It explains the namespace parameter's behavior when empty, but does not clarify the 'cluster' parameter or the 'name' parameter beyond its basic role. Two out of three parameters lack meaningful semantic guidance beyond their names.
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 that the tool retrieves ClusterServiceVersion status including phase, conditions, and owned CRDs. This is a specific verb-resource combination that distinguishes it from sibling tools like list_installed_operators or get_cluster_operator_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 provides guidance for the namespace parameter (empty means all namespaces), but does not explicitly state when to use this tool versus alternatives, nor does it mention prerequisites or scenarios where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pipeline_runC
Get Tekton PipelineRun details: status, duration, and child task run references.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It implies a read operation ('Get') but does not state idempotency, safety, error handling, or required permissions.
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 redundancy. It front-loads the action and resource. However, it may be too brief to be fully 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 three parameters and no schema descriptions, the description is incomplete. It does not explain the parameters or prerequisites, though it mentions some output details (helped by output schema).
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 description adds no meaning to the three parameters (name, cluster, namespace). With 0% schema coverage, the description should compensate but fails to explain what each parameter represents.
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 verb 'Get', the resource 'Tekton PipelineRun', and the specific details returned (status, duration, child task run references). It distinguishes from siblings like cancel_pipeline_run and list_task_runs.
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_task_runs, get_resource). No explicit conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_podA
Show detailed information for a pod: phase, node, IP, QoS class, container states, and conditions.
Args: name: Pod name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description carries burden. Lists output fields but doesn't disclose side effects (none assumed), permissions, or error conditions. However, for a read-only get operation, the description is 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 short, focused sentences: first line states purpose, then bullet list for arguments. No fluff, 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?
For a simple get tool with output schema, the description is complete: covers purpose, parameters, and return fields. No missing 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 has no descriptions (0% coverage). Description compensates with clear explanations for each parameter (name, namespace with default, cluster with default), adding meaning beyond type and default.
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: 'Show detailed information for a pod' and lists specific fields (phase, node, IP, QoS class, container states, conditions), distinguishing it from sibling tools like list_pods or get_resource.
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 to get details of a single pod. No explicit guidance on when to use vs. alternatives (e.g., list_pods for listing, get_resource for generic resources).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pvC
Get detailed PersistentVolume info including CSI, NFS, HostPath, or EBS source.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden but only states that it 'gets detailed info.' It does not disclose read-only nature, permissions, or error conditions.
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, but it lacks substantive content. Conciseness alone is not valuable when key information is omitted.
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 an output schema, the description fails to explain the required 'name' parameter, optional 'cluster', or any behavioral context. It is incomplete for a tool with simple but documented parameters.
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 0%, and the description adds no parameter details. The meaning of 'name' and 'cluster' is left entirely to the schema titles, which are insufficient.
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 ('Get') and resource ('PersistentVolume info') and lists distinct source types (CSI, NFS, etc.), clearly distinguishing from listing tools like 'list_pvs'.
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 (e.g., 'list_pvs' for listing all PVs). The description does not mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pvcB
Get detailed PersistentVolumeClaim info including conditions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided; the description does not disclose whether the tool is read-only, any required permissions, or side effects. 'Get' implies read, 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?
Single sentence with no wasted words. Directly states the tool's purpose and what it returns.
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 a simple retrieval operation and an output schema is present, the description is adequate. It mentions 'conditions' which adds value over a generic 'get PVC'.
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 0%, and the description does not explain the meaning or usage of the three parameters (name, cluster, namespace). The agent must infer from naming conventions.
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 'Get' and resource 'PersistentVolumeClaim info including conditions', clearly distinguishing from sibling tools like list_pvcs (which lists PVCs) and get_pv (which gets PVs).
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 like list_pvcs or get_pod. The description only states what it does without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_resourceB
Get any resource in YAML, JSON, or wide format. Use output='describe' for oc describe.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| output | No | yaml | |
| cluster | No | ||
| namespace | No | ||
| resource_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description should disclose behavioral traits. It mentions output formats but fails to state that the operation is read-only, does not describe authentication or rate limits, and omits what happens if the resource is not found. This is insufficient for a safe agent invocation.
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-loading the core purpose and format options. Every word serves a purpose; there is no wasted text. It efficiently communicates essential 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?
Given five parameters and no annotations, the description is incomplete. It does not describe the output schema (even though one exists), fails to explain parameter dependencies (e.g., namespace vs. cluster-scoped resources), and lacks any error handling notes. The agent would need to guess many 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?
Schema description coverage is 0%, so the description must compensate. It only adds meaning for the 'output' parameter (via the tip) and ignores the other four parameters (name, resource_type, cluster, namespace). This leaves the agent without guidance on required inputs beyond their names.
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 the specific verb 'Get' and identifies the resource as 'any resource', clearly stating the tool's purpose. It also specifies output formats (YAML, JSON, wide) and provides a tip for 'oc describe', making the function distinct from sibling tools that target specific 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?
The description offers a usage tip for format selection ('Use output="describe" for oc describe'), but does not specify when to use this general getter over dedicated sibling tools (e.g., get_pod, get_node). There's no mention of conditional usage or alternatives, leaving the agent to infer context from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_routeA
Get detailed information for an OpenShift Route including admitted status and TLS config.
Args: name: Route name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Implies read-only operation but does not explicitly state it. No annotations provided, so description should disclose more about permissions, errors, or 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?
Two sentences plus Args section, no wasted words, front-loaded with purpose, highly concise and 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?
Covers purpose, parameters, and key details; output schema explains return values. Lacks usage guidelines but adequate for the 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 coverage is 0%, and description adds meaningful explanations for all three parameters (name, namespace, cluster), compensating for lack of schema 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?
Clearly states verb 'Get', resource 'OpenShift Route', and specifics 'admitted status and TLS config', distinguishing it from sibling list_routes and delete_route.
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?
Implicitly indicates use for single route details, but does not explicitly mention alternatives like list_routes 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_secret_keysA
List the key names of a Secret. Values are never shown for security.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It discloses that values are never shown for security, which is important. However, it does not explicitly state that the tool is read-only, nor does it mention any required permissions or other 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?
The description is two concise sentences, front-loading the purpose and adding a security note. Every word serves a 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 the existence of an output schema and no nested objects, the description is adequate but incomplete. It lacks parameter explanations and usage context, which would be expected for a tool with three parameters and 0% schema coverage.
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 0%, so the description must explain parameters. The description does not describe the purpose of 'name', 'cluster', or 'namespace' parameters, leaving the agent to infer from the schema alone. This is insufficient.
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 key names of a Secret, using a specific verb ('list') and resource ('key names of a Secret'). It distinguishes from sibling 'list_secrets' by focusing on keys within a single secret, not all secrets.
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 when-to-use or when-not-to-use guidance is provided. The context with sibling 'list_secrets' implies use this to get keys of a specific secret, but the description does not directly state alternatives or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_snapshot_statusC
Get Snapshot with integration test results and component images.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not state whether the operation is read-only, require specific permissions, or what happens if the snapshot does not exist. The description only hints at the return content 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 sentence with no unnecessary words. It efficiently conveys the core functionality without 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 that an output schema exists, the description does not need to detail return values. However, it fails to provide essential context about the required parameters (name, namespace) and the meaning of cluster. It also does not specify error conditions or prerequisites, making it incomplete for a tool with 3 undocumented parameters.
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 0% documentation coverage, and the description does not clarify any of the three parameters. 'name' and 'namespace' are obvious only by their names, and 'cluster' with a default of '' is ambiguous. The description adds no value beyond the schema field names.
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 'Get' and the resource 'Snapshot', and specifies what is included ('integration test results and component images'). It distinguishes this tool from siblings like 'list_snapshots' which lists snapshots, and 'get_component' which deals with a different resource.
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. There is no mention of when not to use it, or any contrast with similar tools such as 'list_snapshots' for listing or 'get_component' for individual components.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_userA
Get OpenShift user details: full name, identities, and group memberships.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It accurately describes the tool as a read operation retrieving user details, with no side effects. While it lacks details on authentication or rate limits, the simplicity of the operation makes it adequately 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?
The description is a single sentence that is front-loaded with the verb and resource, providing all necessary information 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 read operation with an output schema, the description adequately covers the returned fields. However, it could be more complete by addressing the 'cluster' parameter and any prerequisites (e.g., user existence).
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 0%, so the description must compensate. It implicitly explains the 'name' parameter (identifies the user) but does not mention the 'cluster' parameter or its default behavior. This leaves a significant gap in understanding how the tool is invoked.
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 'Get' and the resource 'user', and specifies the details returned (full name, identities, group memberships). This distinguishes it from sibling tools like list_users (which lists users) and get_resource (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?
No explicit guidance on when to use this tool versus alternatives. The context implies it is for retrieving details of a specific user, while list_users lists all users, but no direct when-to-use or when-not-to-use instructions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_virtual_machineB
Get detailed VM info: running state, resources, interfaces, disks, conditions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 implies a read operation but does not disclose behavioral traits such as idempotency, side effects, authentication requirements, or performance considerations.
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 with a colon-separated list, efficient with no redundant words. However, it could be structured with bullet points for better readability.
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 that an output schema exists, the description does not need to explain return values. It covers key aspects of the VM but misses details like prerequisites (e.g., VM must exist) or error conditions.
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 descriptions (0% coverage), and the description adds no explanation of the parameters (name, cluster, namespace), leaving their meaning and usage ambiguous.
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 'Get detailed VM info' and lists specific categories (running state, resources, interfaces, disks, conditions), which distinguishes it from sibling tools like list_virtual_machines (which lists VMs) and start/stop/restart 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?
The description implies usage for retrieving detailed information about a single VM but does not explicitly state when to use it instead of alternatives like list_virtual_machines, nor does it mention 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_alerting_rulesB
List PrometheusRules (monitoring.coreos.com/v1) with rule group count.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only identifies the resource type and adds 'with rule group count'. It does not disclose if it is read-only, requires specific permissions, handles pagination, or any other behavioral traits. Since no annotations are provided, the description carries the full burden but falls short.
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. Every word adds value; no unnecessary 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?
Despite having an output schema, the description omits basic usage context like optional filtering by cluster/namespace. It is minimally adequate for a simple list tool but lacks completeness in explaining the parameters and return behavior.
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 0% and the description provides no information about the two optional parameters (cluster, namespace). Their purpose (likely filtering) is not described, leaving the agent to guess their 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 the tool lists PrometheusRules (a specific Kubernetes CRD) and includes a unique detail: rule group count. This distinguishes it from siblings like list_alerts (active alerts) and get_alert_details (single alert).
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. Siblings like list_alerts exist for active alerts, but the description does not clarify when to choose this tool over them. No exclusions 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.
list_alertsB
List active alerts from Alertmanager, optionally filtered by severity and/or state. severity: critical | warning | info state: active | suppressed | unprocessed
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | ||
| cluster | No | ||
| severity | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It states 'List active alerts' (a read operation) and mentions filter options, but does not disclose details like pagination, ordering, what 'active' means, or any potential side effects. This is 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 two sentences, the first conveying the main purpose and the second listing allowed values. It is efficient, front-loaded, and has 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 an output schema exists (so return values are covered), the description lacks context about what 'active' entails, whether filters are exact or partial, and does not mention the cluster parameter. For a tool with three parameters and no annotations, this is insufficiently 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 description adds meaning for two of three parameters (severity and state) by listing possible values, which is helpful given the schema has 0% description coverage. However, the cluster parameter is not mentioned, so the description is incomplete.
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 active alerts from Alertmanager with optional filters by severity and state. The verb 'list' and resource 'active alerts' are specific and distinct from sibling tools like get_alert_details or list_alerting_rules.
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 optional filtering but does not provide guidance on when to use this tool versus alternatives like get_alert_details for specific alerts. It implies usage for listing alerts but lacks explicit when-not or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_catalog_sourcesC
List CatalogSources with display name, type, publisher, and connection state.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure, but it only states a listing operation. It does not mention whether it is read-only, requires permissions, or any side effects. This is a significant gap.
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, which is concise but not sufficiently informative. It front-loads the action but omits necessary details, making it adequate but not excellent.
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 that output schema exists, the description partially covers return values, but it fails to provide parameter semantics, behavioral traits, or usage context. For a simple list tool with many siblings, 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?
Schema description coverage is 0%, and the description does not explain the meaning or usage of the two parameters (cluster and namespace). It only mentions return fields, so it adds no value 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 (CatalogSources), and specifies the fields returned (display name, type, publisher, connection state). This distinguishes it from sibling tools like list_data_volumes 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?
No guidance is provided on when to use this tool vs alternatives. Among many sibling list tools, the description lacks any contextual cues or prerequisites, making it difficult for an AI agent to choose correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cluster_claimsC
List ACM ClusterClaims with pool and resolved cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behaviors such as whether the operation is read-only, if it requires special permissions, or any side effects. Only a basic action is 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?
The description is a single sentence, which is concise but lacks explanatory depth. It could be expanded with important context without becoming 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 presence of an output schema, the description omits mention of return values. The tool is simple but the description provides minimal context, leaving the agent to infer behavior from the schema alone.
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 has one parameter 'cluster' with 0% description coverage. The description only implies a relationship to filtering ('with pool and resolved cluster') but does not clarify parameter semantics or usage.
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 ACM ClusterClaims and indicates the return fields ('pool and resolved cluster'). It is specific and distinguishes from siblings as no other tool lists cluster claims.
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. Does not mention any prerequisites, filtering, or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cluster_contextsC
Show all configured MCP clusters and the active oc kubeconfig contexts.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only operation ('Show'), but with no annotations, it should explicitly state that no modifications are made. It does not disclose error scenarios (e.g., no clusters configured). A simple 'Read-only' label would improve 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, which is concise, but it misses important details about parameters and output. It is not overly long, but it sacrifices completeness for brevity.
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 a single optional parameter and an output schema, the description should explain both. It fails to describe the parameter and provides no hint about what the output contains (e.g., lists of cluster names, context names, etc.).
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 one optional parameter 'cluster' with a default empty string, but the description does not explain its purpose (likely to filter by cluster name). Since schema description coverage is 0%, the description should provide semantics; it does not.
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 identifies the tool's purpose: showing configured MCP clusters and active oc kubeconfig contexts. It uses a specific verb ('Show') and resource, and is distinct from siblings like list_managed_clusters and get_cluster_info by focusing on both clusters and local contexts.
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 vs. alternatives (e.g., list_managed_clusters, get_cluster_info). It also doesn't mention prerequisites like being logged into oc or having kubeconfig files. The user must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cluster_role_bindingsC
List ClusterRoleBindings with role reference and bound subjects.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only operation by using 'List', but does not explicitly state it is non-destructive. With no annotations, the description could be more explicit about behavior, but the verb 'List' is reasonably clear.
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 unnecessary words. However, it could be improved by front-loading the purpose and adding parameter details in a structured way.
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 output schema exists and the description mentions the output contents, it fails to describe the optional filtering parameters (cluster, label_selector) and does not provide usage context. Given the tool's simplicity, 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?
Schema coverage is 0% and the description does not mention either parameter (cluster, label_selector). It adds no semantic value beyond the schema itself, which already provides names and types.
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 ClusterRoleBindings and mentions they include role reference and bound subjects. This distinguishes it from siblings like list_cluster_roles which list Role definitions, not bindings.
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 vs alternatives. There is no mention of prerequisites or comparisons with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cluster_rolesB
List ClusterRoles with the number of policy rules.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It only states the output includes rule counts, but fails to disclose that this is a read-only operation, any authentication requirements, or potential side effects. 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 redundant words. It efficiently communicates the core 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 simple list tool with an output schema (not shown), the description provides minimal but adequate purpose. However, it lacks parameter details and behavioral context, which are necessary given no annotations. The description is incomplete for safe agent use.
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 0%, and the description does not mention any parameters. The two optional parameters (cluster, label_selector) are completely undocumented, leaving the agent uninformed about how to filter results.
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 ClusterRoles and includes the number of policy rules, which is a specific verb+resource+additional detail. It distinguishes from siblings like 'list_roles' (namespace-scoped) and 'list_cluster_role_bindings'.
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 (e.g., list_roles, list_custom_resources). There are no prerequisites, exclusions, or context about filtering capabilities.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_cluster_setsC
List ACM ManagedClusterSets.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The verb 'List' implies a read-only operation, but the description does not explicitly state non-destructiveness, idempotency, or any other behavioral traits. With no annotations, the agent must infer safety from the verb alone.
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 at one sentence, but it is under-specified. It earns its place by stating the purpose, but lacks necessary detail, making it merely adequate.
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 ACM resources and the presence of an output schema, the description is incomplete. It does not explain what a ClusterSet is, how it relates to clusters, or when to use this tool over siblings.
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 has 0% description coverage for the sole parameter 'cluster', and the tool description fails to explain its purpose or expected values. This leaves the agent uninformed about a key input.
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 'ACM ManagedClusterSets', which is specific and distinguishable from sibling tools like list_managed_clusters. However, it does not explain what a ManagedClusterSet is, slightly reducing clarity.
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 list_managed_clusters or list_cluster_claims. The description lacks any context about use cases or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_configmapsC
List ConfigMaps with namespace, name, key count, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 it lists ConfigMaps but does not mention that it is a read-only operation, whether any permissions are required, or if there are any limitations (e.g., pagination, rate limits). The output schema exists but is not described, leaving the agent unaware of return value 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 very concise (one sentence) but at the expense of critically missing information about parameters and usage. It is front-loaded with the action and output fields, but the brevity reduces its utility significantly.
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 presence of 3 optional parameters and an output schema, the description should at least mention that filtering by cluster, namespace, or label_selector is possible. The extensive list of sibling tools further demands contextual cues to differentiate usage. The current description does not provide enough context for correct invocation.
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 3 parameters (cluster, namespace, label_selector) with 0% description coverage. The description does not mention any of these parameters, leaving the agent with no semantic understanding of how to filter or scope the listing. Each parameter's purpose and possible values are entirely undocumented.
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 the verb 'List' and specifies the resource 'ConfigMaps', along with the fields returned (namespace, name, key count, age). It clearly states the tool's primary action and output structure, distinguishing it from tools that create or delete ConfigMaps. However, it lacks specific scope context (e.g., cluster or namespace) which might be ambiguous given the existence of sibling 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?
No guidance on when to use this tool versus alternatives like list_secrets or list_pods. There is no mention of prerequisites, scope, or conditions under which the tool should be preferred. The description does not address 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_crdsB
List all CustomResourceDefinitions with group, stored versions, and scope.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only list operation but does not disclose permissions, pagination, or scope (cluster-wide). With no annotations, it provides only basic 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 with no redundancy. It front-loads the core purpose but could integrate parameter hints.
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?
Missing parameter explanations and behavioral details (e.g., whether 'all' CRDs are returned or if cluster filters). Output schema may cover return values, but the description is insufficient for a multi-parameter 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 0% and the description does not explain the 'cluster' or 'label_selector' parameters. The tool has two parameters with no semantic context beyond their names.
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 CustomResourceDefinitions, specifying the fields returned (group, stored versions, scope). This distinguishes it from sibling 'list_custom_resources' which lists CR instances.
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_custom_resources). The description does not mention 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_custom_resourcesC
List any custom resource by group/version/plural — works for any CRD.
| Name | Required | Description | Default |
|---|---|---|---|
| group | Yes | ||
| plural | Yes | ||
| cluster | No | ||
| version | Yes | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states the basic operation without mentioning side effects, permissions, pagination, or output format. This lacks sufficient transparency for a tool with 6 parameters.
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, efficient sentence that is front-loaded with key information. It is concise and to the point, though it omits important details that would improve usability.
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 6 parameters, no annotations, and an output schema that is not described, the description is too brief. It does not cover optional parameters or any behavior beyond the core listing, leaving the agent under-informed.
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 0%, so the description must compensate. It mentions the three required parameters (group, version, plural) by name, but does not explain their meaning, formats, or valid values. Optional parameters like cluster, namespace, and label_selector are not described at all.
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 'any custom resource by group/version/plural', distinguishing it from sibling tools like list_crds (list CRDs) or get_resource (get a single resource). It also notes it works for any CRD, providing specificity.
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 description implies it is for listing custom resources not covered by dedicated listers, but does not provide when-not or direct comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_data_science_pipelinesB
List DataSciencePipelinesApplications with readiness, storage, and API endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It indicates a read-only operation ('List') and mentions what details are returned, but lacks details on permissions, pagination, or error states. Adequate 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 concise sentence, front-loaded with the verb and resource, with no extraneous words. Every word serves a 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?
The description is adequate for a listing tool given the existence of an output schema, but lacks parameter context and usage guidance, leaving gaps for an AI agent to interpret.
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 2 parameters (cluster, namespace) with 0% description coverage. The tool description adds no information about these parameters, failing to compensate for the schema gap.
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 'DataSciencePipelinesApplications', and specifies key attributes (readiness, storage, API endpoint), distinguishing it from sibling tools like list_data_volumes or list_notebooks.
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 vs. alternatives (e.g., list_data_volumes, get_resource). The description implies a listing operation but offers no context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_data_science_projectsB
List OpenShift AI Data Science Projects (namespaces with opendatahub.io/dashboard=true label).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 accurately describes the filtering logic and indicates a read-only operation, but does not address permissions, pagination, or side effects. For a simple 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?
The description is a single sentence that directly states the tool's core function and filtering criteria. It is concise and front-loaded, with 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, and an output schema exists (not shown), so return format is covered. However, the lack of parameter documentation and missing guidance on when to use it versus siblings leaves the description incomplete for an agent to 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?
The only parameter 'cluster' is not explained in the description. With 0% schema description coverage, the agent has no information on its purpose, accepted values, or how it influences results. This is a critical gap that prevents correct usage.
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 AI Data Science Projects and specifies the filtering criterion (namespaces with opendatahub.io/dashboard=true label). This distinguishes it from sibling tools like list_namespaces which lists all namespaces, providing a specific and actionable purpose.
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 only labeled projects but does not explicitly provide when-to-use or when-not-to-use guidance. No alternatives are mentioned, so the agent must infer the appropriate context from the filter condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_data_volumesC
List DataVolumes with phase, progress, capacity, and source type.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 states what is listed without disclosing any behavioral traits (e.g., read-only, permissions required, scope). Minimal information beyond the 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?
The description is a single, concise sentence with no unnecessary words. It is front-loaded and 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 simple list tool with two optional parameters and an existing output schema, the description is adequate but does not mention pagination, ordering, or any nuances. It covers the core functionality minimally.
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 0%, and the description does not explain the parameters (cluster, namespace). While parameter names are somewhat self-explanatory in context, the description adds no additional meaning 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 the verb (list) and resource (DataVolumes), and specifies the fields included (phase, progress, capacity, source type). It adequately distinguishes from sibling tools that list 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, no context on filtering or prerequisites. The description lacks any usage considerations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_destination_rulesC
List Istio DestinationRules with host, subsets, TLS mode, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description does not disclose any behavioral traits beyond the act of listing. It does not mention whether the operation is read-only, any permission requirements, or response characteristics.
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 efficient sentence with no wasted words. However, it could be slightly expanded to include parameter hints without losing conciseness.
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 output schema exists (covering return values), the description lacks information on parameter usage, filtering behavior, or system impact. For a simple list tool, it is incomplete given the missing parameter documentation.
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 has two parameters (cluster, namespace) with 0% description coverage, and the description does not mention or explain either parameter. This leaves the agent without any context for how to use 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 lists Istio DestinationRules and specifies the fields included (host, subsets, TLS mode, age). The verb 'list' and resource type are explicit, and the tool is distinct from sibling tools like list_virtual_services or list_service_entries.
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 or any prerequisites. Sibling tools include many other list commands, but the description does not differentiate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_gatewaysB
List Istio Gateways with selector, ports, servers count, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose side effects, idempotency, or resource impact. It implies a read operation but does not explicitly state it, leaving behavioral 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?
Single sentence, no redundancy. However, it omits parameter details which could be included efficiently. Still, it's front-loaded and concise.
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 output schema exists and sibling list is extensive, the description is minimal but covers the basic purpose. It lacks context on filtering or common use cases, so it's adequate but not 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?
Input schema has two optional parameters (cluster, namespace) with 0% description coverage. The description does not explain how these parameters affect the output, leaving agents uninformed.
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 Istio Gateways and specifies the fields returned (selector, ports, servers count, age). It effectively distinguishes from sibling tools like list_virtual_services and list_destination_rules.
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. No mention of context like filtering or prerequisites for the cluster or namespace parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_image_streamsC
List ImageStreams with their internal Docker repository and tag count.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does not disclose potential side effects, required permissions, scope of listing (e.g., all clusters/namespaces vs. specific ones), or behavior regarding pagination or data freshness. The optional parameters are not explained, leaving behavioral 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, concise sentence that front-loads the purpose. It is efficient but lacks structural elements like bullet points or separate sections that could improve scannability. Every word is earned.
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 an output schema (which reduces the need to describe return values), the description fails to explain parameter behavior, usage context, or how this tool relates to siblings. For a tool with many related tools, this is a significant gap.
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 0%, and the description adds no meaning to the parameters 'cluster' and 'namespace'. Their roles (filters? scoping?) are not mentioned, leaving the agent guessing how to use them.
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 'ImageStreams', and specifies that it includes 'internal Docker repository and tag count'. However, it does not differentiate from the closely related sibling tool 'list_image_stream_tags', which could cause confusion.
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_image_stream_tags'. The description lacks context on prerequisites or appropriate scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_image_stream_tagsC
List tags for an ImageStream with image digest and creation timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | default | |
| image_stream | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden but only discloses the action (list) and returned fields (digest, timestamp). It omits behavioral details like read-only nature, authentication needs, pagination, or error cases, which are critical for an agent.
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-formed sentence with the verb and object upfront. However, it is too brief for a tool with three parameters and no schema descriptions, sacrificing necessary detail for brevity.
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 an output schema exists, the description lacks parameter details and usage context. For a tool with three parameters, including one required, the absence of explanations makes it incomplete for reliable agent invocation.
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 0%, and the description provides no explanation of the three parameters (cluster, namespace, image_stream). It fails to add meaning beyond the schema's property names, leaving the agent uninformed about required or optional values.
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 tags for an ImageStream' and specifies the returned data (image digest and creation timestamp). It distinguishes from sibling tools like list_image_streams by focusing on tags.
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 or when not to use it. There is no mention of prerequisites or exclusions, leaving the agent without contextual decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_ingressesA
List Kubernetes Ingress objects with NAMESPACE, NAME, CLASS, HOSTS, ADDRESS, PORTS, and AGE.
Args: namespace: Namespace to query (empty = all namespaces). label_selector: Label selector to filter Ingresses. cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description does not disclose behavioral traits such as read-only status, required permissions, or side effects. It only describes the listing action without safety or constraint details.
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: one sentence for purpose followed by a structured Args block. No redundant text, 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?
The description covers the main functionality and parameters. The existence of an output schema reduces need to describe return values. It lacks usage context and behavioral details but is adequate for a simple list 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?
The schema has 0% description coverage, but the description adds brief yet meaningful explanations for all three parameters, including default behavior (e.g., 'empty = all namespaces'). However, it lacks format constraints or 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?
The description clearly states it lists Kubernetes Ingress objects and explicitly lists the columns (NAMESPACE, NAME, CLASS, HOSTS, ADDRESS, PORTS, AGE), making the tool's purpose very specific and distinguishable from sibling 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 provides no guidance on when to use this tool versus other list tools like list_services or list_routes. No prerequisites, context, or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_installed_operatorsB
List installed operators (ClusterServiceVersions) with display name, version, and phase.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates a read-only listing operation, which is consistent. However, it does not disclose behavioral details beyond that, such as whether results are paginated, limited to a specific cluster context, or how empty/default parameters affect the result. Since no annotations exist, the description carries full burden but only provides minimal 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, well-formed sentence that conveys the core function efficiently. It is concise and front-loaded, but could be improved by including parameter hints in the same space without sacrificing clarity.
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?
With an output schema present, the description does not need to cover return values. However, with two undocumented parameters and no usage or behavioral guidance, the tool description feels incomplete. For the agent to correctly use this tool among many sibling tools, more context on parameter behavior and selection criteria is needed.
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 0%, and the description makes no mention of the two parameters ('cluster' and 'namespace'). Without explanation, the agent cannot infer that these parameters filter or scope the list. The description adds no semantic value 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?
The description clearly states the tool's verb ('List'), resource ('installed operators'), and the specific return fields ('display name, version, and phase'). It explicitly maps operators to ClusterServiceVersions, making the purpose unambiguous and differentiating it from sibling tools that focus on other aspects of operators.
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 'get_operator_status' or 'list_subscriptions'. There are no hints about prerequisites, namespace scoping, or typical use cases. The description lacks any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_install_plansC
List InstallPlans with approval mode, approved status, phase, and CSV names.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description should disclose behavioral traits; it only lists fields but does not explicitly state it's a read-only operation or any potential 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 extremely concise (one sentence) but omits critical information such as parameter usage and behavior, sacrificing completeness for brevity.
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 2 parameters, no annotations, and an existing output schema, the description fails to explain parameter effects, default behavior, or return format, making it insufficient for an AI 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 has 2 optional parameters (cluster, namespace) with 0% coverage and no description in the text; the description adds no meaning beyond the schema's titles.
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 InstallPlans and specifies the fields included (approval mode, approved status, phase, CSV names), differentiating it from sibling tools like approve_install_plan.
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 vs alternatives, such as when to list vs approve; no exclusions or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_integration_test_scenariosC
List Konflux IntegrationTestScenarios.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | Yes | ||
| application_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must carry the full burden. It only says 'List', implying a read operation, but offers no details about permissions, scope of results, or side effects. The output schema exists but the description does not supplement it with behavioral expectations.
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?
At six words it is overly terse. While brevity is valued, this description omits critical context, making it under-specified rather than efficiently concise.
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 existence of an output schema, the description should explain scope, filtering, and usage context. It does none of this, leaving the tool's behavior underspecified relative to its parameter set and sibling 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 description coverage is 0%, meaning the schema lacks parameter descriptions. The description adds no information about the parameters (cluster, namespace, application_name), failing to compensate for the missing schema details.
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 the verb 'list' and the resource 'Konflux IntegrationTestScenarios', which is specific enough to convey the general purpose. However, it does not clarify that listing is scoped to a namespace (despite the required namespace parameter) or distinguish this tool from sibling tools like 'list_snapshots' or 'get_komponent'.
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. The description does not mention any prerequisites or context for invoking it, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_jobsA
List Jobs with NAMESPACE, NAME, COMPLETIONS, ACTIVE, SUCCEEDED, FAILED, and AGE.
Args: namespace: Namespace to query (empty = all namespaces). label_selector: Label selector to filter Jobs. cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full responsibility. It mentions 'List' implying read-only behavior, but does not explicitly confirm non-destructive nature, authentication needs, or any side effects. Adequate but lacks explicit safety guarantees.
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?
Description is front-loaded with purpose and structured with an Args section. While concise, the Args block is slightly verbose but still clear and scannable.
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?
Output schema exists, so description need not cover return format. It covers purpose and parameters well. Could mention cluster context or permissions, but overall sufficient for a list 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?
Schema description coverage is 0%, so description must compensate. It provides clear explanations for each parameter (e.g., 'Namespace to query (empty = all namespaces)'), adding meaning beyond the schema's type and default values.
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 'List Jobs' and enumerates the columns (NAMESPACE, NAME, COMPLETIONS, etc.), making the purpose unambiguous. It distinguishes from sibling tools (e.g., list_pods, list_services) by specifying the resource type (Jobs).
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 does not explicitly state when to use this tool over alternatives or when not to use it. Usage is implied by the resource type, but no guidance on exclusions or prerequisites (e.g., required permissions, context).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_konflux_applicationsC
List Konflux Applications in a workspace namespace.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral aspects like permissions, pagination, or error handling. It only states 'list', which implies a read operation but lacks depth (e.g., whether it returns all applications or requires specific permissions).
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, front-loaded with action and resource, with no redundant words. It is as concise as possible.
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?
Although an output schema exists, the description lacks context about prerequisites (e.g., namespace existence), behavior when no apps exist, or relationship to other tools. For a simple list tool, more context is expected.
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 0%, yet the description fails to explain any parameter. The namespace parameter is hinted by 'workspace namespace' but not detailed; the cluster parameter is completely ignored. The description adds no value 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), resource (Konflux Applications), and scope (workspace namespace). It is specific and distinct from sibling tools like get_konflux_application or list_custom_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 get_konflux_application or other list tools. The description does not mention exclusions or 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_machine_autoscalersC
List MachineAutoscalers in openshift-machine-api with target MachineSet, min, max, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states that it lists resources but does not describe permissions required, pagination behavior, or whether the listing is filtered by namespace or cluster 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?
The description is a single sentence of 14 words, front-loaded with the verb 'List' and resource, and efficiently conveys the core information without extraneous 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 output schema exists but is not referenced. The description mentions displayed fields, which is helpful. However, the lack of parameter clarity and usage guidance leaves gaps for an agent to fully understand how to invoke 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 'cluster' has a default but no explanation of its purpose or effect (e.g., whether it filters results). Schema coverage is 0%, and the description adds no semantic value beyond the field name.
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 MachineAutoscalers and specifies the namespace (openshift-machine-api) and displayed fields (target MachineSet, min, max, age). It differentiates from sibling tools like list_machine_sets by focusing on autoscalers, but does not explicitly contrast with other autoscaler operations.
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_machine_sets or create_machine_autoscaler. There are no prerequisites, exclusions, or contextual hints about typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_machine_config_poolsC
List MachineConfigPools with rendered config, machine counts, and status flags.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry full burden. It only describes what is listed but omits behavioral traits like idempotency, side effects, or permissions. The lack of disclosure is a significant gap for a read 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?
The description is a single sentence with no extraneous words. It is efficiently structured but omits critical details, so conciseness comes at the cost of completeness.
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 an output schema, the description should explain the parameter and provide usage context. It fails to do so, leaving the agent with insufficient information to invoke 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?
Schema coverage is 0%, meaning the single parameter 'cluster' has no description. The tool description does not mention or explain this parameter, leaving the agent without guidance on its usage or default 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 lists MachineConfigPools and includes specific details (rendered config, machine counts, status flags). However, it does not differentiate from sibling list tools for similar resources, though the name already distinguishes.
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 vs alternatives. No exclusions or prerequisites mentioned. The agent must infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_machine_configsC
List MachineConfigs with role label (machineconfiguration.openshift.io/role), generation, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must explain behavior. It states what is listed but omits whether it's read-only, requires authentication, or handles missing configs. No mention of filtering by label_selector.
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 verb and resource. 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?
Despite being a simple list tool, the description lacks output schema details and does not clarify if results are all machine configs or filtered. Annotations are absent, leaving 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 description coverage is 0%. The description does not explain the two parameters ('cluster', 'label_selector') or their usage. The mention of 'role label' might hint at filtering, but it's ambiguous.
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 'MachineConfigs', and specifies included fields (role label, generation, age). It distinguishes from other list tools by resource type, though sibling differentiation is implicit.
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 vs alternatives (e.g., list_machine_config_pools). The description does not mention when not to use it or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_machinesC
List Machines with phase, node ref, provider ID, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 permissions required, side effects (e.g., read-only vs. mutating), pagination, filtering behavior, or error conditions. The fields listed are not enough to inform an agent about the tool's safety or 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 short sentence, which is efficient and avoids verbosity. However, it could be slightly expanded to include parameter or usage details without losing conciseness.
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 moderate complexity (2 optional params, many siblings), the description is insufficient. It lacks usage guidelines, parameter semantics, and behavioral context. Even though there is an output schema (not shown), the description should provide more than just the output 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?
The input schema has two optional parameters ('cluster' and 'label_selector') with no descriptions, and schema description coverage is 0%. The description does not explain what these parameters do or how they affect the results, leaving the agent without guidance on how to use them.
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 the resource 'Machines', and specifies the fields returned (phase, node ref, provider ID, age). It clearly differentiates from sibling tools like 'list_machine_sets' or 'list_machine_config_pools' by focusing on machines themselves.
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. Given the extensive list of sibling tools for listing different resources, the description should indicate typical use cases or conditions, but it does not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_machine_setsA
List MachineSets with desired/ready/available replica counts, instance type, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 does not mention that this is a read-only operation, nor does it explain scope (e.g., all clusters or current context) or pagination. The description only lists output fields, providing minimal 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 of 12 words, front-loaded with verb and resource. No redundant information; every word is purposeful.
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 an output schema, the description covers key output fields. However, it omits explanation of the optional cluster parameter, which is a minor gap 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 coverage is 0% for the optional 'cluster' parameter, and the description does not explain its purpose or default behavior. The description adds no meaning beyond the schema, leaving the agent to infer the parameter's role from context.
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 (MachineSets), and the specific fields returned (desired/ready/available replica counts, instance type, age). It distinguishes from siblings like list_machines or list_nodes, which operate on different resources or levels.
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 list_machines or get_resource. The tool is simple, and the description implies a summarization role, but lacks when-not or alternative references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_managed_cluster_addonsC
List ManagedClusterAddons on a specific managed cluster.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| cluster_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 states 'List', implying a read-only operation, but fails to disclose any behavioral traits such as permission requirements, pagination, or the effect of the optional 'cluster' parameter. The description is minimal and adds little beyond the name.
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 concise (one sentence, 9 words) and front-loaded, which is good. However, it is overly brief and omits important details, making it less helpful than a slightly longer but more informative description.
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 presence of an output schema and the simplicity of the tool, the description is insufficient. It does not explain the relationship between the two parameters, nor does it clarify the tool's role among many sibling list tools. An agent would need to infer or experiment to use this 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?
Schema description coverage is 0%, yet the description only vaguely references 'on a specific managed cluster', which maps to the required 'cluster_name' parameter. It does not explain the optional 'cluster' parameter or provide any usage details for either parameter. The description adds minimal semantic value beyond the parameter names.
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 resource (ManagedClusterAddons) with a specific scope (on a specific managed cluster). This distinguishes it from sibling tools like list_managed_clusters, though it could be more explicit about the exact resource association.
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. There is no mention of prerequisites, when not to use it, or how it differs from similar list tools among the many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_managed_clustersB
List ACM ManagedClusters with status, OCP version, cloud provider, and region.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose behavioral traits beyond the 'list' operation. It omits limitations, pagination, permissions, or any potential side effects, which is insufficient for a tool with zero annotation coverage.
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, direct sentence that immediately conveys the tool's purpose. Every word is essential, and there is 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?
The tool is simple with one optional parameter and an output schema. While the description covers the returned fields, it omits the parameter's role, making the description slightly incomplete. The output schema compensates for return value documentation.
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 has 0% parameter description coverage, and the tool description does not explain the 'cluster' parameter at all. The description fails to add meaning beyond the schema, leaving agents uncertain about the parameter's purpose or how it filters results.
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 ACM ManagedClusters and specifies the key fields included (status, OCP version, cloud provider, region). It distinguishes from siblings like list_managed_cluster_addons by targeting a different resource type.
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 list_managed_cluster_addons or other list tools. Agents lack context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_manifest_worksB
List ManifestWorks deployed to a ManagedCluster (namespace=cluster_name).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| cluster_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden. It adds that the listing is scoped to a specific namespace (cluster_name), implying a read operation. However, it does not explicitly state read-only nature, permission requirements, or 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?
A single sentence of 10 words, no redundant information. It is front-loaded with the verb and resource.
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 an output schema and is a simple list operation, the description is partially complete. It covers the main purpose and scope but misses explaining the cluster parameter and usage 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?
The input schema has two parameters (cluster, cluster_name) with 0% schema description coverage. The description mentions only cluster_name in the context of namespace, providing some meaning. But it ignores the cluster parameter entirely, leaving its purpose unclear.
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 specific action (List), resource (ManifestWorks), and context (deployed to a ManagedCluster, with namespace=cluster_name). This distinguishes it from siblings like create_manifest_work and other list tools, but does not explicitly contrast with similar 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?
No guidance on when to use this tool versus alternatives or when not to use it. The description only states what it does, failing to provide contextual usage cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_model_registriesC
List ModelRegistries with availability, REST port, gRPC port, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only states the output fields. Missing disclosure of read-only nature, pagination, filtering behavior, or authentication needs.
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?
Very concise single sentence, no wasted words. However, conciseness comes at the cost of completeness.
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 lack of annotations and schema descriptions, the description fails to explain parameter usage, return format, or any tool behavior beyond listing 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?
Schema description coverage is 0%, and the description does not mention the 'cluster' or 'namespace' parameters, providing no additional 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?
Clearly states the action (List) and resource (ModelRegistries), and specifies the fields included (availability, REST port, gRPC port, age). However, does not differentiate from sibling 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?
No guidance on when to use this tool vs alternatives, no prerequisites or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_model_serversC
List ServingRuntimes and ClusterServingRuntimes with scope, formats, multi-model, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits. It states the tool lists resources but does not disclose whether it is read-only, any permissions required, pagination behavior, or output limits. The presence of an output schema is known but not described.
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 with no redundancy. However, it is too brief to convey necessary details, sacrificing completeness for brevity.
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 the existence of an output schema (not visible), the description fails to cover key aspects: parameter usage, listing behavior scope, and any constraints. With 0% schema coverage, the description is insufficient for the agent to understand the tool's full functionality.
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 two parameters (cluster, namespace) with 0% schema description coverage. The description does not explain these parameters or how they affect results. The mention of 'scope, formats, multi-model, and age' likely refers to filtering or output fields, but it is unrelated to the actual parameters, leaving the agent without parameter guidance.
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 identifies the tool lists 'ServingRuntimes and ClusterServingRuntimes', specifying the resource types. It distinguishes from sibling tools like list_data_volumes or list_model_registries. However, the phrase 'with scope, formats, multi-model, and age' is ambiguous—it may refer to filtering options but is not explicit.
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 (e.g., list_model_registries). There is no mention of prerequisites, contexts, 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_namespacesA
List all namespaces with STATUS, LABELS, and AGE.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the burden. It discloses the returned fields but doesn't mention side effects, permissions, or whether it's read-only (though obvious). 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?
A single sentence that is concise and front-loaded. However, it could be slightly more informative without sacrificing brevity, e.g., mentioning optional filters.
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 annotations and 0% schema coverage, the description is incomplete. It mentions output fields but ignores parameters. With many sibling listing tools, more context (e.g., filtering) 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 description coverage is 0%, but the description adds no explanation of the 'cluster' or 'label_selector' parameters. It only describes output fields, not input parameters, which requires the agent to infer from names alone.
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 'namespaces', and specifies the returned fields (STATUS, LABELS, AGE). It distinguishes from sibling tools like 'create_namespace' and 'delete_namespace' by being a read-only 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 explicit guidance on when to use this tool vs. alternatives like 'list_pods' or filtered listings. The description implies it's for listing all namespaces, but doesn't mention optional filters or when to use them.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_nodesC
List all nodes with ROLES, STATUS, OS image, KUBELET version, and AGE.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only lists returned fields but does not disclose behavioral traits like pagination, ordering, performance impact, or authentication 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 sentence with no redundancy. It is concise, but it could include parameter information without losing conciseness.
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 presence of many sibling tools and optional parameters, the description is incomplete. It does not clarify default behavior when no parameters are provided or how the output schema relates to the listed 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?
Schema description coverage is 0%. The description does not explain the purpose or usage of the two parameters ('cluster' and 'label_selector'), leaving the agent to infer functionality from names alone.
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 action ('List all nodes') and lists the fields included (ROLES, STATUS, OS image, KUBELET version, AGE). This distinguishes it from siblings like 'get_node' which retrieves a single node.
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 vs alternatives (e.g., 'get_node' for a specific node, or filtered queries). The description implies it lists all nodes but does not mention prerequisites or common use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_notebooksC
List Kubeflow Notebooks with state, image, CPU/memory requests, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 lists output fields but fails to mention that the tool is read-only, whether special permissions are needed, or how empty parameters behave. For a list operation with optional parameters, more transparency is expected.
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, which is concise, but given the lack of parameter and behavioral info, it is under-specified. It is front-loaded with the core purpose, but misses essential details for correct invocation.
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?
With two optional parameters, no schema descriptions, no annotations, and an output schema not shown, the description is incomplete. It does not cover parameter semantics, return structure, or edge cases. An agent would lack critical context to invoke the tool reliably.
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 0%, and the description does not explain the 'cluster' and 'namespace' parameters at all. There is no hint about their purpose, default values, or expected format. The description adds no value beyond the schema's minimal structure.
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 'Kubeflow Notebooks', and specifies the fields returned (state, image, CPU/memory requests, age). This is specific and distinguishes from sibling tools like list_pods or list_jobs.
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 for listing notebooks, which is a distinct use case. However, no explicit guidance is given on when to use vs alternatives, nor any prerequisites (e.g., cluster/namespace). With zero schema coverage, the agent gets no hint about parameter defaults or required context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_operator_conditionsC
List OperatorConditions (operators.coreos.com/v2) with active condition summary.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 hints at output content ('active condition summary') but does not disclose behavioral traits such as read-only nature, side effects, or prerequisites. For a list operation, safety assumptions are implicit but not 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?
The description is a single, front-loaded sentence with no unnecessary words. It is concise and efficient, though it could provide more detail without becoming 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 presence of sibling tools and an output schema, the description covers the basic purpose and a key output feature (active condition summary). However, it lacks parameter guidance and usage context, making it minimally adequate for a list tool with moderate 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 coverage is 0% (no parameter descriptions in the schema), and the description does not mention parameters at all. With two parameters (cluster and namespace) that are optional but could benefit from explanation, the description adds no value 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 verb 'List' and the resource 'OperatorConditions' with the API version, and adds a specific attribute 'with active condition summary'. It distinguishes the tool from siblings like 'list_installed_operators' by specifying the resource and detail, but does not explicitly differentiate.
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_installed_operators' or 'list_subscriptions'. There are no exclusions or context hints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_operator_groupsC
List OperatorGroups with their target namespaces and service account.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must cover behavioral traits. It mentions return fields but does not explain that listing is read-only, idempotent, or whether permissions are required. No details on how optional parameters affect results.
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 concise with one sentence and no filler. However, it omits necessary details, so it is not optimally structured for usability.
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 (2 optional params, large sibling set, no annotations), the description is incomplete. It fails to explain parameter usage or provide context for selecting this tool among many list 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 description coverage is 0%, and the description adds no information about the parameters (cluster, namespace). The agent gets no guidance on how to fill these fields or their effect.
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 (OperatorGroups), and specifies the return fields (target namespaces, service account), making it distinct from sibling list tools like list_pods or list_installed_operators.
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 vs alternatives like list_installed_operators or get_operator_status. No prerequisites or context provided, leaving the agent to guess optimal usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_peer_authenticationsC
List Istio PeerAuthentications with mTLS mode, selector, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It only mentions what is listed, not any read-only guarantees, pagination, default namespace behavior, or side effects. This is insufficient for an agent.
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 short sentence, concise but lacking essential details. It is not overly verbose, but it sacrifices completeness for brevity.
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?
With an output schema present, return value explanation is not required, but the description omits filtering capabilities, pagination, or any operational context needed for correct use.
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 0%, and the description adds no meaning to the two parameters (cluster, namespace). Their roles are completely unexplained, which is a major gap.
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 ('Istio PeerAuthentications'), and specifies three fields returned (mTLS mode, selector, age), making it distinct from sibling 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?
No guidance is given on when to use this tool vs alternatives, nor any prerequisites or excluded scenarios. Sibling tools exist for other resources, but no explicit comparison or context is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_placementsC
List ACM Placements with predicates and satisfaction status.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It only mentions what is returned ('with predicates and satisfaction status') but lacks information on side effects, permissions, pagination, or constraints. This is minimally 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?
The description is very short (one sentence) and to the point, but it sacrifices completeness for brevity. It is front-loaded but overly minimal, lacking important details that could be added without much length.
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 that the tool has an output schema (not shown) and optional parameters, the description does not explain pagination, default behavior, or how to interpret the output. It is insufficient for an agent to use the tool effectively without additional 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 description coverage is 0%, and the description provides no information about the parameters 'cluster' or 'namespace'. The description does not compensate for the missing schema descriptions, leaving the agent without guidance on how to use 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 the action 'List' and the resource 'ACM Placements' with the additional detail 'with predicates and satisfaction status', providing a specific verb and resource. However, it does not explicitly differentiate from sibling tools like list_custom_resources or get_resource, which could list similar 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?
The description offers no guidance on when to use this tool versus alternatives, no context about prerequisites, and no exclusions or when-not-to-use scenarios. It merely states what the tool does.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_podsA
List pods with NAMESPACE, NAME, STATUS, READY, RESTARTS, NODE, and AGE columns.
Args: namespace: Namespace to query (empty = all namespaces). label_selector: Label selector (e.g. "app=nginx"). field_selector: Field selector (e.g. "status.phase=Running"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| field_selector | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 does not mention pagination, result limits, permission requirements, or sorting. The description only lists the output columns. This leaves significant gaps in understanding the tool's 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?
The description is concise, front-loading the core purpose in the first sentence. The parameter block is clean and uses 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?
Given the tool outputs an array of objects (as inferred from output schema presence), the description lists key columns, which is helpful. However, it could mention pagination or maximum results for completeness. The need for alternative guidance (e.g., vs run_oc_command) is noted but not critical.
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 parameter descriptions (e.g., namespace: 'empty = all namespaces', label_selector: 'e.g. "app=nginx"') add meaningful context beyond the schema, which only has types and defaults. However, the schema coverage is 0%, so these explanations are essential and well done.
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: listing pods with specific columns (NAMESPACE, NAME, STATUS, etc.). It distinguishes it from siblings like get_pod (single pod) and other listing 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 explains parameters and default behavior (e.g., empty namespace for all namespaces), but does not explicitly mention when to use this vs alternatives like run_oc_command or get_pod. No when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pod_security_violationsB
List events that indicate pod security or SCC violations (FailedCreate + security keywords).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It explains the filtering criteria (FailedCreate + security keywords) but does not mention side effects, permissions, or rate limits. It is read-only by nature, but additional context would improve 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, short sentence that conveys the core purpose without unnecessary words. It is concise but could benefit from more structure, such as breaking out parameter 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?
While an output schema exists (so return values need not be explained), the description omits parameter semantics and usage context, making it incomplete for effective use.
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 0% and the description provides no information about the 'cluster' and 'namespace' parameters, leaving them completely undocumented. The description fails to compensate for the lack of schema 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?
The description clearly states the tool lists events indicating pod security or SCC violations, specifying it filters by FailedCreate + security keywords. This distinguishes it from sibling tools like list_pods, which list general 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 implies usage for security violation events but offers no explicit when-to-use or when-not-to-use guidance, nor does it mention alternative tools for similar tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pvcsB
List PersistentVolumeClaims with status, volume, capacity, access modes, and storage class.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavior. It only mentions return fields, not how the tool behaves (e.g., supports optional filtering by cluster, namespace, label selector; no pagination details). Basic disclosure only.
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, no wasted words. Could be slightly improved by including parameter hints, but remains 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 listing tool with optional filters, the description adequately states output but omits parameter context. With an output schema, return values are covered, but parameter semantics are missing. Adequate but not 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 description coverage is 0% and the description adds no information about the parameters (cluster, namespace, label_selector). The agent must infer their meaning from names alone.
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 PersistentVolumeClaims and specifies the fields returned (status, volume, capacity, access modes, storage class). It distinguishes from sibling tools like 'get_pvc' or 'list_pvs' by targeting PVCs with a list operation.
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 usage guidance or alternatives mentioned. The description implies a straightforward listing operation, but with many sibling tools, it would benefit from noting when to use this vs get_pvc or list_pvs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pvsC
List PersistentVolumes with capacity, access modes, storage class, reclaim policy, status, and claim.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as pagination, scope (cluster-wide vs namespace), required permissions, or performance implications. For a list tool, this is insufficient.
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, which is concise but omits critical information. It is well-structured but not sufficiently 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?
Although an output schema exists, the description fails to explain the parameters or provide context for using this tool among many sibling Kubernetes tools. It is incomplete for effective agent decision-making.
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 0% schema description coverage, the description was expected to explain parameters. However, it only lists output fields, not the input parameters 'cluster' or 'label_selector', leaving their purpose unclear.
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 'PersistentVolumes', and it lists the specific attributes included, making it distinct from sibling tools like 'get_pv' (single PV) and 'list_pvcs' (PVCs).
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, no prerequisites mentioned, and no hints about filtering or cluster context. The agent is left to infer usage from the schema parameters alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_release_plansC
List Konflux ReleasePlans with target workspace.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | Yes | ||
| application_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 states the action and target, but does not disclose any behavioral traits such as pagination, permissions, or that it is read-only. For a read-like operation, this is insufficient.
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, very concise but at the cost of clarity. It lacks structured information but is not overly verbose. An average score is appropriate.
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 3 parameters, no annotations, and an output schema (not shown). The description does not explain the output or provide context on how to use parameters effectively. It is incomplete for a tool with moderate 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 0%, meaning the description adds no meaning beyond parameter names. The description mentions 'target workspace', which does not match any parameter (e.g., 'namespace' is required). No parameter is explained.
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 Konflux ReleasePlans, which specifies the resource type. However, it mentions 'with target workspace' which is ambiguous since the required parameter is 'namespace', not 'workspace'. This slight mismatch reduces clarity.
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 like list_custom_resources or other list tools. The context provides many sibling tools, but the description does not differentiate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_rolesB
List Roles in a namespace with the number of policy rules.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only says 'List', implying read-only, but does not explicitly state no side effects, permissions, or other 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?
Single sentence, front-loaded with verb and resource, efficient and minimal.
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 but lacks context on default behavior, error handling, and output format; output schema exists but description does not complement 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?
Schema description coverage is 0%, yet description provides no details about parameters (cluster, namespace) beyond what's in the schema, missing an opportunity to explain defaults or usage.
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 roles in a namespace with policy rule counts, distinguishing it from siblings like list_cluster_roles.
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 by resource type, but no explicit guidance on when to use this tool vs alternatives like list_cluster_roles or list_role_bindings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_routesA
List OpenShift Routes (route.openshift.io/v1) with NAMESPACE, NAME, HOST/PATH, TLS, SERVICE, and AGE.
Args: namespace: Namespace to query (empty = all namespaces). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 behavioral disclosure. It only describes the output columns and parameters but does not mention that the operation is read-only, whether it might incur performance costs, or any other 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?
The description is extremely concise: a single-sentence purpose followed by a clear argument specification. No redundant or extraneous 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?
Given the presence of an output schema, the description does not need to detail return values. It covers the essential purpose and parameters. However, it lacks details on sorting, pagination, or error cases, which could be useful for a list tool among many siblings.
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 descriptions (0% coverage), but the textual description explains the 'namespace' and 'cluster' parameters, including the behavior when empty (e.g., 'empty = all namespaces'). This adds meaningful context beyond the schema structure.
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 Routes with specific columns (NAMESPACE, NAME, HOST/PATH, TLS, SERVICE, AGE) and specifies the API version (route.openshift.io/v1). It distinguishes itself from sibling tools like get_route (which retrieves a single route) and delete_route.
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 provide guidance on when to use this tool versus alternatives (e.g., get_route for details). The context implies a general listing use case, but no exclusions or recommendations are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sccsB
List all SecurityContextConstraints sorted by priority descending.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 states the list operation and sorting order but omits details like read-only nature, permission requirements, pagination, or any side effects. This is insufficient for a fully transparent description.
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 conveys the core purpose without any extra words. It is front-loaded and easy to parse.
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 and the presence of an output schema, the description covers the basic purpose. However, the lack of parameter explanation and behavioral details means the agent is left to guess about the 'cluster' parameter and potential constraints, making it only 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 schema has one optional parameter 'cluster' with a default value, but the description does not mention it at all. With 0% schema description coverage, the description fails to explain what the parameter does, its valid values, or how it affects results.
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 resource ('SecurityContextConstraints'), and the ordering ('sorted by priority descending'). It distinguishes itself from sibling list tools by specifying a unique resource type.
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_nodes'. The description lacks context on prerequisites or typical scenarios, leaving the agent to infer usage from the resource name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_secretsB
List Secrets showing type and key count only — secret values are never displayed.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility for behavioral disclosure. It explicitly states that secret values are never displayed, which is a critical safety trait. It also notes that only type and key count are shown, providing clear expectations. Some details like pagination or sorting are missing, but the key behavioral constraint is well 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, concise sentence that front-loads the core purpose and a critical safety note. Every word is necessary, and no extraneous information is present. It is efficiently structured for quick comprehension.
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 an output schema exists (so return values need not be elaborated), the description lacks context on the optional parameters and how they filter results. It does not state default behavior (e.g., all clusters or all namespaces). For a tool with three parameters, the description is somewhat minimal but still covers the main action and safety.
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 0%, so the description must compensate for parameter meaning. However, the description does not mention any of the three parameters (cluster, namespace, label_selector), their purpose, or how they affect results. The parameter names are somewhat self-explanatory but not explicitly clarified.
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 'Secrets', and specifies that only type and key count are shown, distinguishing it from tools that might display values. However, it does not directly compare to sibling tools like get_secret_keys, so differentiation is implicit rather than explicit.
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 get_secret_keys or list_configmaps. There is no mention of context, prerequisites, or when not to use it, leaving the agent to infer from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_service_accountsC
List ServiceAccounts with number of secrets and image pull secrets.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It only hints at return content (secrets count) but does not disclose read-only nature, permission requirements, side effects, or how results are paginated or scoped.
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 fluff. Every word adds value, and it is front-loaded with the action and resource.
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 two optional parameters and no annotations, the description fails to explain how cluster and namespace scope the results, or what the output schema contains. The presence of an output schema does not compensate for missing usage 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 description coverage is 0%, and the description omits any explanation of the two parameters (cluster, namespace). The agent cannot infer what values to pass or how they affect the listing without additional knowledge.
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 resource (ServiceAccounts), and what additional information is included (number of secrets and image pull secrets). This precisely defines the tool's purpose and distinguishes it from other list tools among siblings.
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 like list_users or list_roles. It lacks any mention of prerequisites (e.g., namespace, cluster selection) or contexts where it should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_service_entriesC
List Istio ServiceEntries with hosts, location, ports, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 like read-only status, authentication needs, rate limits, or pagination behavior. Only the output fields are listed, leaving the agent to infer safe usage.
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 and succinct. However, it could be slightly expanded to include parameter hints without losing conciseness.
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 presence of an output schema and the simplicity of the tool, the description covers the core purpose but lacks parameter explanations and usage guidance, making it merely adequate for a simple list 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?
The input schema has two parameters (cluster and namespace) with no descriptions (0% coverage). The description does not explain their meaning, purpose, or defaults, so it adds no value 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 specifies the verb 'List', the resource 'Istio ServiceEntries', and the fields returned ('hosts, location, ports, and age'). It distinguishes this tool from siblings like list_services (Kubernetes services) and list_virtual_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 on when to use this tool versus alternatives, such as list_services or list_virtual_services. 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.
list_service_mesh_membersC
List ServiceMeshMemberRolls and the namespaces enrolled in each mesh.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description states it lists items, but does not disclose behavioral traits such as read-only nature, potential side effects, or authorization 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, front-loaded sentence of 10 words. It is concise but could benefit from additional context without becoming 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 presence of an output schema, the description could be minimal, but it fails to cover parameter usage or what the tool returns beyond the obvious. The description is incomplete for a tool with 2 undocumented parameters.
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 0%. The description does not explain the purpose of 'cluster' and 'namespace' parameters, leaving the agent to guess whether they filter the results or specify scope.
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 ServiceMeshMemberRolls and the namespaces enrolled in each mesh. It is specific and distinguishes from sibling tools like list_namespaces 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?
No guidance is provided on when to use this tool versus alternatives. The description does not mention contexts, 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_servicesA
List Services with NAMESPACE, NAME, TYPE, CLUSTER-IP, EXTERNAL-IP, PORT(S), and AGE.
Args: namespace: Namespace to query (empty = all namespaces). label_selector: Label selector to filter Services. cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. 'List' implies a read-only operation, but the description does not explicitly state that it is non-destructive or safe. Listing fields gives some transparency, but lacks details 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?
Description is concise, one sentence plus parameter list. No wasted words. Structure could be slightly improved with clear sections, but it's effective 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?
With an output schema present and only optional parameters, the description sufficiently covers the tool's purpose and parameter usage. Missing details like return format are covered by the output schema. Sufficient for a 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 0%, but the description compensates by explaining each parameter: namespace (namespace to query), label_selector (to filter), cluster (target cluster). This adds meaning beyond the schema types.
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 explicitly states 'List Services' and enumerates the fields displayed (NAMESPACE, NAME, TYPE, etc.), providing a clear verb+resource. It differentiates from sibling list tools (e.g., list_pods, list_namespaces) by focusing on 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 explains how parameters affect scope (namespace=all namespaces, cluster=default). While it doesn't specify when not to use or alternatives, the tool's purpose is straightforward among 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_silencesB
List Alertmanager silences with ID, state, matchers, comment, creator, and end time.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits. It lists output fields but fails to mention that it is a read-only operation, whether it supports filtering (the cluster parameter is undocumented), pagination, or side effects. The lack of any behavioral context beyond output fields is a significant gap.
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 action and resource. While it is clear, it could be slightly more structured (e.g., separate the parameter explanation from output fields). 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 has one optional parameter and an output schema, the description partially covers the output but ignores the input parameter. For a simple list tool, this is minimally adequate but incomplete. The presence of an output schema reduces the need to explain return values, but the parameter gap remains.
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 0% and the description does not explain the single parameter 'cluster'. The description only lists output fields, leaving the input parameter completely undocumented. Since the schema provides no help, the description should compensate but fails entirely.
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 'Alertmanager silences', and enumerates the returned fields (ID, state, matchers, comment, creator, end time). It distinguishes this tool from all siblings, none of which relate to silences.
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 (listing silences) but provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusion criteria. Siblings like list_alerts exist but are distinct; however, no explicit direction is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_snapshotsC
List Konflux Snapshots with components and integration test status.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | Yes | ||
| application_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It does not mention any destructive effects, authentication requirements, rate limits, or return format. The description is minimal and does not add behavioral context beyond the basic 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 sentence with no wasted words. It is appropriately concise, though it could be more informative without significant expansion.
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 three parameters, no annotations, and an output schema (not shown), the description is too sparse. It does not explain return values, filtering, or any constraints, making it incomplete for a tool with this 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 0%, meaning the schema provides no parameter descriptions. The tool description does not explain any of the three parameters (cluster, namespace, application_name), leaving the agent without guidance on how to use them.
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 'Konflux Snapshots', and specifies that it includes components and integration test status. This distinguishes it from sibling 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?
No guidance on when to use this tool versus alternatives, no prerequisites or exclusions. The description only implies usage for listing snapshots but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_statefulsetsA
List StatefulSets with NAMESPACE, NAME, READY, SERVICE, and AGE.
Args: namespace: Namespace to query (empty = all namespaces). label_selector: Label selector to filter StatefulSets. cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose behavioral traits such as auth requirements, side effects, or performance impact. Only implies a read operation without explicit safety guarantees.
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?
Very concise: one-line summary followed by a brief Args list. No unnecessary words or redundancy. Front-loaded with key 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?
Covers basic usage and parameter meaning, but lacks broader context like output format (despite having an output schema) or when to prefer this tool over related ones. Adequate but not thorough.
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 0%, but the description includes an 'Args' section explaining the purpose of each parameter (namespace, label_selector, cluster) beyond the schema's minimal titles. Adds meaningful context, though lacks examples or value 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?
Clearly states 'List StatefulSets' with specific output columns (NAMESPACE, NAME, READY, SERVICE, AGE). Distinguishes from sibling tools like list_pods or list_services by naming the exact resource.
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 parameter definitions but no guidance on when to use this tool vs alternatives like get_resource or list_custom_resources. No exclusion criteria or 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_subscriptionsC
List OLM Subscriptions with package, channel, source, current CSV, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It implies read-only via 'list' but does not explicitly state safety, side effects, or limitations (e.g., whether it requires cluster-wide access). Minimal 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 short sentence, but it omits necessary parameter details. Adequately concise but incomplete.
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?
With an output schema implied, listing return fields is helpful. However, missing parameter explanation and usage context given many sibling tools makes it incomplete for effective tool selection.
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 0%. The description does not mention the two parameters (cluster, namespace) at all, leaving the agent without guidance on how to use them, despite defaults being provided.
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 states it lists OLM Subscriptions with specific fields (package, channel, source, current CSV, age), which is clear. However, it does not differentiate from sibling tools like list_installed_operators or list_catalog_sources, so slightly docked.
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 like list_installed_operators or list_operator_groups. The description lacks context for appropriate usage or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_task_runsC
List Tekton TaskRuns with task name, status, duration, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It only states that the tool lists TaskRuns with certain fields. There is no mention of read-only nature, pagination, authorization, rate limits, or side effects. The description adds minimal behavioral context beyond what is assumed from the verb '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?
The description is a single sentence that efficiently communicates the primary action and output fields. No extraneous words. It is front-loaded with the 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?
Despite having an output schema (which may cover return values), the description lacks parameter explanations, usage context, and behavioral details. For a listing tool with three optional parameters, this is insufficient for an agent to use it effectively without further investigation.
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 0%, meaning the input schema provides no descriptions for the three parameters (cluster, namespace, label_selector). The tool description adds no information about these parameters, leaving the agent without guidance on their meaning or usage. This is a critical gap.
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 Tekton TaskRuns and specifies output fields (task name, status, duration, age). The verb 'list' and resource 'Tekton TaskRuns' are specific, and it distinguishes from sibling tools like list_tasks (which likely lists Task definitions) and get_pipeline_run (which gets a specific run). However, no explicit differentiation is provided.
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_tasks, get_pipeline_run). No prerequisites, filtering context, or conditions for use are mentioned. The purpose is implied but not explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tasksC
List Tekton Tasks with step count and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It does not disclose side effects (likely read-only), permission requirements, or details about 'step count and age' beyond the name. Behavioral traits are partially implied but not explicit.
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 minimal (5 words) and concise, but overly terse. It could include more detail without becoming verbose. Front-loaded with key purpose, but lacks structure.
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 two optional parameters and existence of an output schema, the description does not explain the output format or how 'step count and age' are derived. It is insufficient for complete understanding of the tool's behavior.
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 0% and the description does not explain the 'cluster' and 'namespace' parameters. No additional meaning is added beyond the schema; a baseline of 3 would require coverage >80%.
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 Tekton Tasks with step count and age, distinguishing it from sibling 'list_task_runs'. However, it does not specify the scope (e.g., cluster/namespace) or clarify what 'age' means.
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. It does not mention prerequisites, filtering, or context like namespace/cluster scoping.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_usersB
List OpenShift users with their identities and group memberships.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 indicates a read-only list operation, which is appropriate. However, it does not disclose potential side effects, performance, or the exact return format beyond the implicit listing.
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 immediately conveys the tool's purpose. No extraneous words 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?
Given the tool's simplicity and the presence of an output schema, the description adequately covers the tool's function. The only gap is the undocumented parameter, which reduces completeness slightly.
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 'cluster' has no description in the schema (0% coverage) and is not explained in the description. The agent receives no guidance on how to use the cluster parameter, including its format or impact.
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 users', and the scope 'with their identities and group memberships'. This distinguishes it from siblings like 'get_user' and 'list_clusters'.
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 (e.g., get_user, list_service_accounts). The description does not specify when not to use it or mention prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_virtual_machine_instancesA
List running VirtualMachineInstances with node, IP, and phase.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It correctly states the tool lists running instances with specific fields, implying read-only behavior. However, it lacks disclosure of auth needs, rate limits, or pagination, though these are less critical for a simple listing.
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, concise and to the point, with no wasted words. It achieves maximum efficiency for the information provided.
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 two optional parameters and an output schema (as indicated). The description covers the basic function but neglects to explain the filtering parameters, making it incomplete for effective use despite the output schema being present.
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 0%, and the description adds no information about the two parameters (cluster, namespace). While parameter names are somewhat self-explanatory, the description should explain their role as optional filters. This gap could confuse an AI agent.
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 running VirtualMachineInstances and specifies the included fields (node, IP, phase). This distinguishes it from siblings like list_virtual_machines which likely list all VMs.
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 running VM instances, but gives no explicit guidance on when to use this vs alternatives (e.g., list_virtual_machines, get_virtual_machine). No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_virtual_machinesC
List VirtualMachines with status, vCPU, memory, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No | ||
| label_selector | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 read-only nature, pagination, authentication requirements, or any side effects. The name implies listing, but explicit transparency is lacking.
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 succinct sentence with no unnecessary words. It front-loads the main action, but could benefit from structuring parameter info separately.
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 an output schema exists, the description fails to explain parameter usage. Given the complexity of multiple optional filters and the presence of many sibling VM tools, the description is incomplete for effective tool selection and invocation.
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 0%, but the description adds no meaning to the parameters (cluster, namespace, label_selector). It does not explain their purpose or how they affect the listing.
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 VirtualMachines and specifies the fields included (status, vCPU, memory, age). It distinguishes from sibling tools like get_virtual_machine which retrieves a single VM.
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 (e.g., get_virtual_machine, list_virtual_machine_instances). The description does not mention filtering or prerequisites despite optional parameters being available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_virtual_servicesA
List Istio VirtualServices with hosts, gateways, HTTP/TCP route counts, and age.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must bear full burden. It only states 'List', implying a read operation, but does not disclose potential side effects, permission requirements, pagination, or default scope (e.g., all namespaces). The returned fields are mentioned, but deeper behavioral context is missing.
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, well-structured sentence of 14 words that front-loads the verb and resource, with no wasted words. Efficient and 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 simple list tool with two optional parameters and an output schema, the description covers the primary purpose and result fields. Missing are details on parameter effects and behavioral caveats, but overall adequate for straightforward 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?
Schema description coverage is 0%, and the description does not explain the parameters (cluster, namespace). It adds no meaning beyond the schema field names, leaving the agent to infer how to filter results.
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 the verb 'List' and the resource 'Istio VirtualServices', and specifies the returned fields (hosts, gateways, HTTP/TCP route counts, age), distinguishing it from sibling tools like list_services and other Istio 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 or alternatives. The resource name is self-explanatory, but the description does not mention filtering behavior or prerequisites, leaving usage implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_vm_snapshotsC
List VirtualMachineSnapshots with phase, source VM, and ready status.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, placing the full burden on the description. The description only states the listing behavior and fields returned, but does not disclose whether it is read-only, any authorization needs, or performance implications. The behavioral transparency is 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?
The description is a single sentence of 10 words, which is concise but at the expense of necessary details. It is appropriately front-loaded but lacks explanations for parameters and usage context.
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 that there is an output schema (not shown), the return values might be documented elsewhere. However, the description does not cover parameter semantics, pagination, or ordering. For a listing tool with two undocumented parameters, the description 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 input schema has two parameters (cluster, namespace) with no default descriptions (0% coverage). The description does not explain what these parameters do or how they affect the results. The agent receives no additional 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 VirtualMachineSnapshots and mentions specific fields (phase, source VM, ready status). It distinguishes from siblings like list_volume_snapshots by naming a different resource type. However, it does not mention that the list can be filtered by cluster/namespace, which might be relevant for differentiation.
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_volume_snapshots or get_virtual_machine. There is no mention of prerequisites, context, or scenarios where this tool is preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_volume_snapshotsB
List VolumeSnapshots (snapshot.storage.k8s.io/v1) with source PVC, class, and ready status.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| namespace | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral aspects such as read-only nature, error conditions, or any side effects. Only states the listing action, leaving the agent to infer safety.
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 with no wasted words, but it lacks essential information. Conciseness is good, but at the cost of completeness.
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 a list tool with output schema, the description partially covers what is returned. However, it omits details on parameter usage, behavioral context, and filtering capabilities.
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 0% and the description adds no meaning beyond the schema. The two parameters (cluster, namespace) are not explained; the description only mentions output fields, not input filtering.
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 identifies the resource type (VolumeSnapshots) with API version, and lists the key fields returned (source PVC, class, ready status). Distinguishes from sibling tools like list_vm_snapshots and list_snapshots.
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 Kubernetes volume snapshots, but provides no explicit guidance on when to use this tool versus alternatives (e.g., list_snapshots for Konflux, list_data_volumes).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pause_machine_config_poolC
Pause a MachineConfigPool — prevents config updates from rolling out to nodes.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 implies a mutation (pause) but does not disclose side effects, reversibility, or what happens to ongoing updates. More context on behavior is needed.
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 with no wasted words. It is concise and front-loaded with the key 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?
Despite the simplicity of the tool, the description lacks completeness. It does not explain the 'cluster' parameter, mention prerequisites, or describe the output schema. This forces reliance on the schema alone.
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 0%, and the description adds no information about parameters. The 'cluster' parameter's purpose is unexplained, leaving users to guess its role.
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 'pause' and the resource 'MachineConfigPool', and explains the effect ('prevents config updates from rolling out to nodes'). However, it does not explicitly distinguish from the sibling 'unpause_machine_config_pool', though the purpose is unambiguous.
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., unpause_machine_config_pool). No prerequisites or context for when pausing is appropriate or when to avoid it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_scc_from_service_accountC
Revoke an SCC from a ServiceAccount via 'oc adm policy remove-scc-from-user'.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| scc_name | Yes | ||
| namespace | Yes | ||
| service_account | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so description must disclose behavior. It only reveals the command name but does not mention mutation effects, error cases, or required permissions. Insufficient for a mutation 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 waste. However, it is so concise that it sacrifices essential details. For a simple tool it is acceptable, but could be improved.
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 an output schema (unknown), the description lacks context about prerequisites, return values, side effects, and usage scenarios. Given the tool's complexity (4 params, mutation), it 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?
Schema coverage is 0% with no parameter descriptions. The description adds no parameter-level information. The command reference hints at argument mapping but is not explicit.
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 'revoke' and the resources 'SCC' and 'ServiceAccount'. It mentions the underlying command, providing specificity. It effectively differentiates from sibling 'add_scc_to_service_account'.
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 like 'add_scc_to_service_account' or 'list_sccs'. The agent is given no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restart_virtual_machineC
Restart a VirtualMachine using virtctl.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lacks behavioral details beyond the verb 'Restart'. It does not mention prerequisites (e.g., VM must be running), if it forces a reboot, or any side effects. With no annotations, the description carries the full burden, which it fails to meet.
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 states the core action, so it is concise and front-loaded. However, it is overly brief and omits important details, making it minimally acceptable.
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 virtual machine management, the description is severely incomplete. It does not explain the restart behavior, prerequisites, or output. With no annotations and zero parameter coverage, the agent cannot reliably 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 0%, yet the description adds no information about the parameters (name, cluster, namespace). The agent must rely solely on parameter names and lack of descriptions, making it difficult to know what values to provide.
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 the verb 'Restart' and resource 'VirtualMachine', making the basic action clear. However, it does not explicitly distinguish from sibling tools like 'start' or 'stop', though the term 'restart' implies rebooting a running VM.
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 start_virtual_machine or stop_virtual_machine. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restore_vm_snapshotC
Restore a VM from a VirtualMachineSnapshot.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| vm_name | Yes | ||
| namespace | Yes | ||
| restore_name | Yes | ||
| snapshot_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No behavioral traits disclosed beyond the bare action. This restore operation likely overwrites the VM, but description doesn't mention destructive nature, required permissions, or impact on current VM state. No annotations provided to compensate.
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 is very concise but lacks critical information. Not a model of efficiency; could include key details without much extra length.
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 restore operation's complexity and 5 parameters, the description is insufficient. No mention of return values (output schema exists but not referenced) or side effects.
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 parameter description: the input schema has 5 parameters but description adds no context on their meaning or usage. For example, 'restore_name' and 'snapshot_name' are not explained.
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 action: restore a VM from a VirtualMachineSnapshot. Verb 'restore' and resource 'VM from a VirtualMachineSnapshot' are specific and distinct from sibling tools like list_vm_snapshots or create_vm_snapshot.
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., create_vm_snapshot, list_vm_snapshots). 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.
rollout_restart_deploymentB
Trigger a rolling restart of a Deployment (equivalent to 'oc rollout restart').
Args: name: Deployment name. namespace: Namespace (default: "default"). cluster: Named cluster to target (empty = default).
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | No | default |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions a rolling restart but does not disclose potential side effects (e.g., pod recreation, auth requirements, synchronicity). The reference to 'oc rollout restart' provides indirect knowledge but lacks explicit 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?
Description is extremely concise: one sentence plus a three-line argument list. Action is front-loaded, and every piece of information earns its place. 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 the tool's simplicity and the presence of an output schema, the description is fairly complete for the core purpose. However, it omits details about what happens after triggering the restart (e.g., rollout status, error scenarios), which could 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?
Schema description coverage is 0%, so description must compensate, but it only lists parameter names with defaults. No additional meaning or constraints are provided beyond what the schema titles imply. The defaults are helpful but insufficient for semantic clarity.
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 action (trigger a rolling restart) and the resource (Deployment), and provides an equivalent command ('oc rollout restart'). No sibling tool with similar purpose, making it easily distinguishable.
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 does not explicitly guide when to use vs. alternatives (e.g., delete_pod, restart_virtual_machine). It only states the equivalent command, leaving usage context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_oc_commandA
Escape hatch: run any oc command. args is a space-separated string of arguments. WARNING: Use carefully. Destructive commands should be confirmed first.
| Name | Required | Description | Default |
|---|---|---|---|
| args | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Warns about destructiveness but lacks details on execution context, error handling, or output. No annotations to compensate.
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 key info front-loaded: purpose, parameter format, and a warning. 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?
Minimal description for a powerful escape hatch. Lacks details on output, prerequisites, or behavior on failure.
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?
Describes args as a space-separated string of arguments, adding value beyond schema. The cluster parameter is unexplained.
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 is an escape hatch to run any oc command, distinguishing it from the many specific sibling 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?
Provides explicit warning about destructive commands, implying cautious use, but does not specify when to prefer this over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scale_machine_setA
Scale a MachineSet to the given number of replicas by patching spec.replicas. WARNING: Scaling down will cause machines (and their nodes) to be deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| replicas | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must convey behavioral traits. It discloses the mutation (patching spec.replicas) and warns about destructive consequences when scaling down. This is good, though it could mention idempotency or auth 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?
Two concise sentences with no superfluous content. The warning is appropriately placed and earns its keep.
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 existence of an output schema (context signal), the description need not explain return values. However, it omits any mention of what happens when replicas equals current count or the effect of the optional cluster parameter. 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?
Schema description coverage is 0%, and the description adds minimal parameter meaning. It hints that replicas is the target count but does not explain 'name' or 'cluster'. The description does not compensate for the lack of schema 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?
The description clearly states the tool scales a MachineSet by patching spec.replicas. This is a specific verb and resource, and among sibling tools like list_machine_sets or delete_machine, scaling is distinct and unambiguous.
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 includes a warning that scaling down causes deletion of machines and nodes, which advises caution. However, it does not explicitly state when to use this tool over alternatives like editing the MachineSet directly or using other scaling methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_buildC
Start a new build from a BuildConfig. Optionally supply from_dir to use a local directory as the binary source.
| Name | Required | Description | Default |
|---|---|---|---|
| cluster | No | ||
| from_dir | No | ||
| namespace | No | default | |
| build_config_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 does not mention if the build is asynchronous, requires permissions, or returns a build ID. The description is minimal and omits important behavioral details.
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, front-loaded with core purpose. The second sentence adds optional usage 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?
Given the tool starts a build process, the description should mention expected behavior (e.g., asynchronous triggering, build output) but does not. An output schema exists, so return values are covered, but runtime behavior is missing.
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 0%, so the description must add value. It explains 'from_dir' as an optional local directory for binary source, but does not clarify 'cluster' or 'namespace' roles. Partial compensation for low schema 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 starts a new build from a BuildConfig, with an optional local directory. This distinguishes it from listing, getting, or deleting builds. However, it does not explicitly contrast with sibling 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?
No guidance on when to use this tool versus alternatives like get_build or get_build_config. The description only mentions an optional parameter, not when to prefer other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_virtual_machineB
Start a VirtualMachine by setting spec.running=true.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the core behavior (setting spec.running=true) but does not elaborate beyond that. No annotations are provided, so the description carries the full burden. It lacks details about side effects, required permissions, or expected state of the VM before starting.
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 with no unnecessary words. It front-loads the action and resource.
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 an output schema (implied), the description still lacks contextual completeness. It does not explain the required state of the VM before starting, error conditions, or parameter usage. The 0% schema coverage and missing guidance on when to use the tool make it insufficient for an AI 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?
The input schema has three parameters (name, cluster, namespace) with 0% description coverage in the schema. The description does not mention any of these parameters, adding no meaning beyond the raw schema. This fails to compensate for the lack of schema 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?
The description clearly states the action 'Start' on the resource 'VirtualMachine' and specifies the mechanism 'by setting spec.running=true'. This distinguishes it from sibling tools like stop_virtual_machine, restart_virtual_machine, and unpause_virtual_machine.
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 (e.g., restart_virtual_machine). The usage is implied by the verb 'start', but there are no prerequisites, preconditions, or warnings about 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.
stop_notebookC
Stop a running Notebook by setting the kubeflow-resource-stopped annotation.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 the action (setting an annotation) but does not mention side effects, idempotency, whether it requires specific permissions, or what happens if the notebook is already stopped.
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, which is concise but may be too brief given the lack of parameter context. Every word serves purpose but more detail is needed.
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, but with 3 parameters undocumented and no output described, the description is incomplete. An agent cannot determine required inputs or expected results beyond the basic action.
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 0%, so the description must explain parameter meanings. It mentions no parameters, leaving name, namespace, and cluster entirely unexplained. This is insufficient for an agent to fill them correctly.
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 stops a running notebook and specifies the mechanism (setting a kubeflow-resource-stopped annotation). This provides a specific verb and resource, distinguishing it from sibling tools like list_notebooks.
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, no prerequisites like requiring the notebook to be running, and no mention of 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.
stop_virtual_machineB
Stop a VirtualMachine by setting spec.running=false.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only repeats the basic action without explaining side effects (e.g., whether the VM is gracefully shut down, if there's data loss risk, or if it's synchronous). Critical behavioral context is missing.
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, well-structured sentence that immediately conveys the core action and mechanism. No unnecessary words or repetition; highly 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 having an output schema, the description is too minimal. It does not address the stopping workflow (e.g., is the operation async?), success indicators, or potential edge cases. For a potentially impactful operation, this is insufficiently 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 description coverage is 0%, so the description should compensate but fails to explain any parameters. While 'name' and 'namespace' are somewhat obvious from the schema, the optional 'cluster' parameter is not mentioned, and the description adds no value 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 ('Stop'), the resource ('VirtualMachine'), and the specific mechanism ('by setting spec.running=false'), making it highly unambiguous. It effectively distinguishes this tool from sibling tools like start_virtual_machine or restart_virtual_machine.
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 (e.g., when to stop vs. unpause or shut down). There is no mention of prerequisites, safety considerations, or conditions under which stopping is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sync_gitops_applicationC
Trigger a sync on an ArgoCD Application by patching the operation field.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| prune | No | ||
| cluster | No | ||
| dry_run | No | ||
| namespace | No | openshift-gitops |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It mentions a mutation ('patching'), but does not explain side effects, required permissions, or whether the operation is destructive. The description is too brief to provide adequate 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 action and mechanism. No unnecessary words; highly concise.
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 5 parameters, 0% schema coverage, and no annotations, the description is insufficient. It does not explain return values (output schema exists but unmentioned), parameter purposes, or usage context. More detail is needed for adequate 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 description coverage is 0%, and the description does not elaborate on any of the 5 parameters (name, prune, cluster, dry_run, namespace). The agent receives no additional meaning beyond the parameter names and types.
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 'trigger a sync', the resource 'ArgoCD Application', and the mechanism 'by patching the operation field'. It distinguishes from siblings like get_gitops_application by indicating it triggers an 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?
No guidance is provided on when to use this tool versus alternatives, nor any prerequisites or conditions. The description is purely declarative of the action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
uncordon_nodeA
Uncordon a node to allow new pods to be scheduled on it again.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description only states the effect ('allow new pods to be scheduled'). Lacks details on permissions, idempotency, or error conditions. Basic 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?
One sentence of 12 words, front-loaded with the verb and resource. 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 complexity (2 params, sibling tools), the description is minimal. It covers the core action but lacks parameter details and behavioral context needed for confident use.
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 0%, and the description adds no information about the parameters 'name' or 'cluster'. Agent cannot infer what values to provide.
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 the specific verb 'Uncordon' and resource 'node', clearly indicating the action. It distinguishes from the sibling tool 'cordon_node' by implying the opposite operation.
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 of the sibling 'cordon_node' implies usage after a cordon, but no when-not-to or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unpause_machine_config_poolB
Unpause a MachineConfigPool — allows pending config updates to roll out to nodes.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 only mentions allowing updates to roll out, but does not disclose permissions, side effects, or state changes beyond that.
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 front-loaded verb. Every word earns its place, but could be slightly more structured (e.g., including a note about parameters).
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 a simple action and presence of output schema, the description is adequate but lacks prerequisites (e.g., pool must be paused first) and error handling 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 description coverage is 0% and the description does not explain any parameters. The 'name' and 'cluster' parameters are not mentioned, leaving the agent without guidance on their meaning or usage.
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 'unpause', the resource 'MachineConfigPool', and the effect 'allows pending config updates to roll out to nodes'. It is distinct from the sibling tool 'pause_machine_config_pool'.
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 vs alternatives, but the context implies it is the inverse of 'pause_machine_config_pool'. Lacks when-not conditions or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unpause_virtual_machineC
Unpause a paused VirtualMachine using virtctl.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| cluster | No | ||
| namespace | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description fails to disclose any behavioral traits such as preconditions (e.g., VM must be paused), state changes, permissions, or error handling. The agent has no behavioral clues beyond the minimal 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 brief sentence, which is concise but lacks necessary detail. It could be expanded without losing conciseness.
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 complexity (mutation, requires virtctl), the description is too minimal. It does not mention return values, side effects, or any additional context that would help an agent use it correctly. The presence of an output schema does not relieve the description of providing behavioral 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?
The input schema has 3 parameters (name, cluster, namespace) with no descriptions. The description does not explain any parameter meaning, default values, or constraints. With 0% schema description coverage, the description completely fails to compensate.
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 (unpause) and the resource (paused VirtualMachine), and mentions using virtctl. It is specific and distinct from sibling tools like start_virtual_machine or stop_virtual_machine.
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, no prerequisites, and no exclusions. It simply states the action without usage context.
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.
138 tool updates
v0.1.0- First observed
add_scc_to_service_account - First observed
apply_manifest - First observed
approve_install_plan - First observed
cancel_pipeline_run - First observed
cordon_node - First observed
create_component - First observed
create_configmap - First observed
create_group - First observed
create_inference_service - First observed
create_machine_autoscaler - First observed
create_manifest_work - First observed
create_namespace - First observed
create_pvc - First observed
create_role_binding - First observed
create_scc - First observed
create_virtual_machine - First observed
create_vm_snapshot - First observed
delete_configmap - First observed
delete_inference_service - First observed
delete_machine - First observed
delete_namespace - First observed
delete_network_policy - First observed
delete_pod - First observed
delete_pv - First observed
delete_pvc - First observed
delete_resource - First observed
delete_role_binding - First observed
delete_route - First observed
delete_service - First observed
exec_in_pod - First observed
get_alert_details - First observed
get_build - First observed
get_build_config - First observed
get_build_logs - First observed
get_cluster_info - First observed
get_cluster_operator_details - First observed
get_component - First observed
get_dsci - First observed
get_etcd_status - First observed
get_gitops_application - First observed
get_infrastructure_config - First observed
get_konflux_application - First observed
get_machine - First observed
get_namespace_resource_quota - First observed
get_node - First observed
get_oauth_config - First observed
get_operator_status - First observed
get_pipeline_run - First observed
get_pod - First observed
get_pv - First observed
get_pvc - First observed
get_resource - First observed
get_route - First observed
get_secret_keys - First observed
get_snapshot_status - First observed
get_user - First observed
get_virtual_machine - First observed
list_alerting_rules - First observed
list_alerts - First observed
list_catalog_sources - First observed
list_cluster_claims - First observed
list_cluster_contexts - First observed
list_cluster_role_bindings - First observed
list_cluster_roles - First observed
list_cluster_sets - First observed
list_configmaps - First observed
list_crds - First observed
list_custom_resources - First observed
list_data_science_pipelines - First observed
list_data_science_projects - First observed
list_data_volumes - First observed
list_destination_rules - First observed
list_gateways - First observed
list_image_stream_tags - First observed
list_image_streams - First observed
list_ingresses - First observed
list_install_plans - First observed
list_installed_operators - First observed
list_integration_test_scenarios - First observed
list_jobs - First observed
list_konflux_applications - First observed
list_machine_autoscalers - First observed
list_machine_config_pools - First observed
list_machine_configs - First observed
list_machine_sets - First observed
list_machines - First observed
list_managed_cluster_addons - First observed
list_managed_clusters - First observed
list_manifest_works - First observed
list_model_registries - First observed
list_model_servers - First observed
list_namespaces - First observed
list_nodes - First observed
list_notebooks - First observed
list_operator_conditions - First observed
list_operator_groups - First observed
list_peer_authentications - First observed
list_placements - First observed
list_pod_security_violations - First observed
list_pods - First observed
list_pvcs - First observed
list_pvs - First observed
list_release_plans - First observed
list_roles - First observed
list_routes - First observed
list_sccs - First observed
list_secrets - First observed
list_service_accounts - First observed
list_service_entries - First observed
list_service_mesh_members - First observed
list_services - First observed
list_silences - First observed
list_snapshots - First observed
list_statefulsets - First observed
list_subscriptions - First observed
list_task_runs - First observed
list_tasks - First observed
list_users - First observed
list_virtual_machine_instances - First observed
list_virtual_machines - First observed
list_virtual_services - First observed
list_vm_snapshots - First observed
list_volume_snapshots - First observed
pause_machine_config_pool - First observed
remove_scc_from_service_account - First observed
restart_virtual_machine - First observed
restore_vm_snapshot - First observed
rollout_restart_deployment - First observed
run_oc_command - First observed
scale_machine_set - First observed
start_build - First observed
start_virtual_machine - First observed
stop_notebook - First observed
stop_virtual_machine - First observed
sync_gitops_application - First observed
uncordon_node - First observed
unpause_machine_config_pool - First observed
unpause_virtual_machine
TDQS
Each tool targets a specific resource and action (e.g., list_pods, get_pod, delete_pod), with clear descriptions that distinguish overlapping concepts like list_custom_resources vs. get_resource. The escape hatch run_oc_command is clearly marked as a last resort.
All tools follow a consistent verb_noun pattern in snake_case (e.g., list_pods, create_namespace, delete_service). Verbs are uniform (list, get, create, delete, scale, start, stop, etc.), with only rare exceptions like rolllout_restart_deployment which still fits the pattern.
138 tools is high, but appropriate for a comprehensive OpenShift management server covering many subsystems (core K8s, builds, operators, service mesh, AI, VMs, ACM, etc.). While it borders on excessive, each tool serves a distinct purpose in its domain.
The toolset covers most CRUD/lifecycle operations across a wide range of resources. Minor gaps exist (e.g., no direct create/update for Deployments, Services), but these can be addressed via apply_manifest. Overall, it provides a thorough surface for cluster 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
MCP-native AI SRE: ask what's broken in production, get a reviewed GitHub fix PR.
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…
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn open source MCP server empowering SREs with intelligent observability, predictive analytics, and AI-driven automation across Kubernetes, OpenShift, and Tekton environments.11Apache 2.0
- FlicenseAqualityDmaintenanceAI-powered MCP server for enterprise OpenShift/Kubernetes cluster management, providing diagnostic tools, RAG knowledge retrieval, and autonomous remediation recommendations.9-
- FlicenseNot gradedqualityCmaintenanceAn MCP server exposing Kubernetes-style diagnostic tools to an LLM agent, with a safety approval gate for destructive actions, all backed by a mock cluster for local testing.-
- AlicenseAqualityBmaintenanceAn MCP server exposing 72 tools across 26 homelab services, enabling LLMs to monitor and manage infrastructure, media, storage, and networking with a single endpoint.16MIT
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/ay-garg/openshift-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server