Skip to main content
Glama
razvanmacovei

Multi Cluster Kubernetes MCP Server

Multi Cluster Kubernetes MCP Server

Python 3.11+ License: Apache 2.0

An MCP (Model Context Protocol) server for managing multiple Kubernetes clusters simultaneously. Provides 60+ tools covering cluster operations, resource management, monitoring, RBAC, storage, networking, and more -- all accessible through AI assistants like Claude Desktop.

Quick Start

Installing via Smithery

npx -y @smithery/cli install @razvanmacovei/k8s-multicluster-mcp --client claude

Manual Installation

git clone https://github.com/razvanmacovei/k8s-multicluster-mcp.git
cd k8s-multicluster-mcp
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python3 app.py

Docker

docker build -t k8s-mcp .
docker run -v ~/.kube:/root/.kube k8s-mcp

Related MCP server: MCP Server Kubernetes

Configuration

Claude Desktop / MCP Client

Add to your MCP client configuration:

{
  "mcpServers": {
    "kubernetes": {
      "command": "python3",
      "args": ["/path/to/k8s-multicluster-mcp/app.py"],
      "env": {
        "KUBECONFIG_DIR": "/path/to/your/kubeconfigs"
      }
    }
  }
}

Environment Variables

Variable

Default

Description

KUBECONFIG_DIR

~/.kube

Directory containing kubeconfig files. Each file can contain one or more contexts.

Place your kubeconfig files in the configured directory. The server discovers all contexts across all files automatically.

Prerequisites

  • Python 3.11 or higher

  • One or more kubeconfig files with valid cluster credentials

  • metrics-server installed in clusters for k8s_top_* and k8s_cluster_info tools

Multi-Cluster Management

This server is purpose-built for managing multiple Kubernetes clusters:

  • Automatic Discovery: Scans all kubeconfig files in KUBECONFIG_DIR and aggregates contexts

  • Partial Name Matching: Use prod instead of arn:aws:eks:us-east-1:123456:cluster/prod-cluster

  • Cross-Cluster Operations: Compare resources, health, and configurations across clusters

  • Context Caching: Efficient 30-second TTL cache avoids re-reading kubeconfig files on every call

  • Centralized Management: Manage dev, staging, and production from a single interface

Tools Reference (60+ tools)

Cluster & Context Management (6 tools)

Tool

Description

k8s_get_contexts

List all available contexts across all kubeconfig files

k8s_get_namespaces

List all namespaces in a cluster

k8s_create_ns

Create a new namespace with optional labels/annotations

k8s_delete_ns

Delete a namespace (protects system namespaces)

k8s_get_nodes

List all nodes with status, roles, capacity, and version

k8s_cluster_info

Comprehensive cluster health summary (nodes, pods, deployments, warnings)

Resource Discovery & Inspection (7 tools)

Tool

Description

k8s_get_resources

List resources of any kind (pods, deployments, services, ingress, etc.)

k8s_get_resource

Get the complete definition of a single resource

k8s_get_pod_logs

Get pod logs with duration filtering and container selection

k8s_get_events

List cluster events in a namespace, sorted by most recent

k8s_describe

Detailed resource description similar to kubectl describe

k8s_apis

List all available API groups and resources in the cluster

k8s_crds

List all Custom Resource Definitions with versions and scope

Metrics & Monitoring (3 tools)

Tool

Description

k8s_top_nodes

Display node CPU/memory usage alongside capacity

k8s_top_pods

Display pod/container CPU/memory usage

k8s_diagnose_application

Comprehensive app diagnostics with issue detection and recommendations

Rollout Management (6 tools)

Tool

Description

k8s_rollout_status

Get rollout status for deployment/statefulset/daemonset

k8s_rollout_history

Get revision history

k8s_rollout_undo

Roll back to a previous revision

k8s_rollout_restart

Trigger a rolling restart

k8s_rollout_pause

Pause an in-progress rollout

k8s_rollout_resume

Resume a paused rollout

Scaling (3 tools)

Tool

Description

k8s_scale_resource

Scale deployment/statefulset/replicaset to N replicas

k8s_autoscale_resource

Configure Horizontal Pod Autoscaler (HPA)

k8s_update_resources

Update CPU/memory requests and limits for a container

Resource CRUD (6 tools)

Tool

Description

k8s_create_resource

Create a resource from YAML/JSON content

k8s_apply_resource

Apply configuration (create or update, like kubectl apply)

k8s_delete_resource

Delete any resource type with optional force/grace period

k8s_patch_resource

Update specific fields with strategic merge patch

k8s_label_resource

Add or update labels on a resource

k8s_annotate_resource

Add or update annotations on a resource

Workload Management (3 tools)

Tool

Description

k8s_expose_resource

Expose a deployment/pod as a new Service

k8s_run_pod

Create and run a pod with a specified image

k8s_set_resources_for_container

Set resource limits/requests for containers

Node Management (5 tools)

Tool

Description

k8s_cordon_node

Mark a node as unschedulable

k8s_uncordon_node

Mark a node as schedulable

k8s_drain_node

Drain a node by evicting pods (for maintenance)

k8s_taint_node

Add taints to a node

k8s_untaint_node

Remove taints from a node

Pod Operations (1 tool)

Tool

Description

k8s_pod_exec

Execute a command in a container (supports quoted arguments)

Secrets & ConfigMaps (6 tools)

Tool

Description

k8s_list_secret

List secrets with metadata (values hidden for security)

k8s_get_secret_detail

Get a secret; optionally decode values

k8s_create_secret_resource

Create a new secret (auto base64-encodes values)

k8s_list_configmap

List ConfigMaps with their key names

k8s_get_configmap_detail

Get a ConfigMap with full data contents

k8s_create_configmap_resource

Create a new ConfigMap

RBAC (5 tools)

Tool

Description

k8s_get_roles

List RBAC Roles with permission rules

k8s_get_clusterroles

List RBAC ClusterRoles

k8s_get_rolebindings

List RoleBindings (who has what role)

k8s_get_clusterrolebindings

List ClusterRoleBindings

k8s_get_service_accounts

List ServiceAccounts

Storage (3 tools)

Tool

Description

k8s_get_pvcs

List PersistentVolumeClaims with status, capacity, and storage class

k8s_get_pvs

List PersistentVolumes with capacity and bound claims

k8s_get_storage_classes

List StorageClasses with provisioner and default status

Networking (1 tool)

Tool

Description

k8s_get_network_policies

List NetworkPolicies with pod selectors and rule counts

Job Management (2 tools)

Tool

Description

k8s_get_jobs

List Jobs with completion status and timing

k8s_get_cronjobs

List CronJobs with schedule, suspend status, and last run

Usage Examples

Cluster Health Check

Give me a health overview of my production cluster.

Multi-Cluster Comparison

Compare the number of pods running in the 'backend' namespace between my 'prod' and 'staging' contexts.

Diagnose Application Issues

My deployment 'my-app' in the 'production' namespace is having issues. Can you diagnose what's wrong?

Scale Resources

Scale the 'backend' deployment in the 'default' namespace to 5 replicas.

Resource Management

Delete the failed job 'data-migration-v1' in the 'batch' namespace.
Create a new namespace called 'staging' with the label environment=staging.

Secret Management

List all secrets in the 'production' namespace and show me the keys in the 'api-credentials' secret.

RBAC Inspection

Show me all role bindings in the 'default' namespace -- who has access to what?

Storage Overview

List all PVCs in the cluster and show which ones are Pending.

Node Maintenance

Cordon node 'worker-3', drain it ignoring DaemonSets, then uncordon when maintenance is complete.

Rollback Deployment

Roll back the 'api-gateway' deployment in the 'services' namespace to the previous version.

Execute in Pod

Run 'ls -la /app/config' inside the 'app' container of pod 'web-app-xyz' in the 'default' namespace.

Create Resources

Create a new deployment with this YAML:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  namespace: default
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.27
        ports:
        - containerPort: 80

Architecture

k8s-multicluster-mcp/
├── app.py                          # MCP server entry point & tool registration
├── src/
│   ├── utils/
│   │   ├── k8s_client.py           # Multi-cluster client with context caching
│   │   └── pluralize.py            # Kubernetes resource kind pluralization
│   └── tools/
│       ├── contexts.py             # Context listing
│       ├── namespaces.py           # Namespace listing
│       ├── namespace_management.py # Namespace create/delete
│       ├── nodes.py                # Node listing
│       ├── pods.py                 # Resource listing & pod logs
│       ├── resources.py            # Single resource retrieval
│       ├── events.py               # Event listing
│       ├── describe.py             # kubectl describe equivalent
│       ├── api_discovery.py        # API & CRD discovery
│       ├── metrics.py              # Node/pod metrics (top)
│       ├── diagnosis.py            # Application diagnostics
│       ├── cluster_health.py       # Cluster health summary
│       ├── rollouts.py             # Rollout management
│       ├── scaling.py              # Scale & autoscale & resource updates
│       ├── resource_management.py  # Create, apply, patch, label, annotate
│       ├── delete_resource.py      # Resource deletion
│       ├── workload_management.py  # Expose, run pod, set resources
│       ├── node_management.py      # Cordon, drain, taint
│       ├── pod_operations.py       # Exec into pods
│       ├── secret_configmap.py     # Secret & ConfigMap management
│       ├── rbac.py                 # Roles, bindings, service accounts
│       ├── storage_network.py      # PVC, PV, StorageClass, NetworkPolicy
│       └── job_management.py       # Jobs & CronJobs
├── requirements.txt
├── pyproject.toml
├── Dockerfile
└── smithery.yaml

What's New in v2.0.0

  • 20+ new tools: Resource deletion, namespace management, secrets & configmaps, RBAC inspection, storage & network visibility, job management, cluster health summary, pod creation

  • Bug fixes: Fixed resource pluralization (e.g., Ingress -> ingresses not ingresss), fixed pod exec command splitting to handle quoted arguments, fixed timeout parameter handling

  • Performance: Context discovery now uses a 30-second TTL cache with direct context-to-file mapping, eliminating redundant file scanning

  • Improved tool descriptions: All 60+ tools have detailed descriptions for better AI assistant integration

  • Dependency cleanup: Removed unused fastapi and uvicorn dependencies

  • Security: Namespace deletion protects system namespaces; secret values hidden by default

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Available Tools

57 tools
k8s_annotate_resourceC

Add or update annotations on a Kubernetes resource. Annotations store non-identifying metadata for tools and libraries.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceNo
overwriteNo
annotationsYes
resource_typeYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It does not indicate whether the tool is read-only or mutating, whether it requires special permissions, or how 'update' works (merge vs replace). The schema includes an 'overwrite' parameter defaulting to false, but the description does not mention this, leaving behavior ambiguous.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences—first states the action, second adds context about annotations. No redundant or extraneous wording. However, the brevity sacrifices completeness, so it is not an optimal trade-off.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, 0% schema coverage, and 6 parameters (4 required), the description is far too minimal. It fails to specify how to use the tool, what the annotations object expects, the effect of overwrite, or the role of namespace. An AI agent cannot reliably invoke this tool based solely on the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage for all 6 parameters. The description does not explain any parameter (e.g., 'context', 'annotations', 'overwrite'). For a tool with 4 required parameters and a nested annotations object, this is severely lacking. The agent must rely solely on parameter names, which may be unclear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add or update annotations') and the target ('Kubernetes resource'). It also explains what annotations are for (non-identifying metadata). This distinguishes it from siblings like k8s_label_resource, which manages labels instead of annotations. However, it does not explicitly contrast with k8s_patch_resource, which could also modify annotations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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., k8s_patch_resource, k8s_label_resource). It does not mention prerequisites, appropriate contexts, or when to avoid using it. The description lacks any usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_apisA

List all available API groups and resources in the Kubernetes cluster. Useful for discovering what resource types are available, including CRD-based APIs.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden. It states the tool lists API groups and resources but omits details like return format, required permissions, or whether it's read-only. It is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action verb, 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.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description could be more complete. It does not specify what the output looks like (e.g., a list of group names and resource types) or how the 'context' parameter affects results. It is minimally complete but leaves gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one required parameter 'context' with no description (0% coverage). The tool description does not explain that 'context' refers to the Kubernetes context name. This is a significant gap for a parameter that likely selects the cluster.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all available API groups and resources' with a specific verb and resource. It distinguishes itself from sibling tools that focus on specific resources or actions, e.g., k8s_get_nodes or k8s_create_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Useful for discovering what resource types are available' which gives clear context. It does not explicitly state when not to use, but the context implies it's for discovery rather than specific resource operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_apply_resourceB

Apply a configuration to a resource (create if it doesn't exist, update if it does). Similar to 'kubectl apply'. The content must include apiVersion, kind, and metadata with name.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
yaml_contentYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses core behavioral trait (declarative create/update) and required content structure. With no annotations, more details about permissions, idempotency, and error handling 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences convey the purpose and a key constraint with no wasteful words. Front-loaded with the primary action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a basic apply operation given the input schema, but lacks return value description, validation details, and error behaviors. With no output schema, more context on expected outcome would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only yaml_content receives extra meaning (must include apiVersion, kind, metadata with name). Context and namespace are left undocumented. With 0% schema coverage, the description should elaborate on all parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool applies a configuration, creating or updating resources, and mentions required fields in the content. It distinguishes from siblings like k8s_create_resource and k8s_patch_resource by using 'apply' terminology but could be more explicit about when to use this over alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 k8s_create_resource or k8s_patch_resource. The reference to 'kubectl apply' provides some context but does not specify conditions or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_autoscale_resourceB

Configure a Horizontal Pod Autoscaler (HPA) for a deployment, statefulset, or replicaset. Creates or updates an HPA that scales between min and max replicas based on CPU utilization.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
cpu_percentNo
max_replicasYes
min_replicasYes
resource_typeYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses creates/updates and CPU-based scaling but omits critical details like whether updates are idempotent, what happens if the resource doesn't exist, or potential destructive effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with no wasted words. Front-loaded with the main purpose and key details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating tool with 7 parameters, no output schema, and no annotations, the description is too brief. It lacks guidance on outcomes, error cases, and integration with sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%. The description adds context for resource_type, min/max_replicas, cpu_percent, and the overall purpose, but does not explain context or namespace (standard k8s concepts) or the default for cpu_percent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it configures a Horizontal Pod Autoscaler for specific resource types (deployment, statefulset, replicaset) and mentions creates or updates based on CPU utilization. This distinguishes it from siblings like k8s_scale_resource (manual scaling) and k8s_update_resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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., when to use k8s_scale_resource instead). It does not mention limitations or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_cluster_infoA

Get a comprehensive health summary of the entire Kubernetes cluster. Checks node status, pod health across all namespaces, deployment availability, resource pressure, and recent warning events. Returns an overall health status (healthy/degraded/unhealthy) with detailed breakdowns.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should fully disclose behavioral traits. It covers what it checks and the return schema (overall health with breakdowns), but lacks explicit statements about being read-only, permission requirements, or potential side effects. It is partly transparent but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states purpose, second adds detail and output format. No redundant information, front-loaded with key verb and resource. Excellent structure for quick comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains the return structure. The single parameter is not described, which is a gap. Overall, it's fairly complete for a simple read tool, missing only parameter explanation. Context signals show low schema coverage, so description should compensate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one parameter 'context' with no description, and the tool description does not explain it. With 0% schema coverage, the description should clarify what 'context' means (e.g., kubeconfig context name). It fails to add meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns a comprehensive health summary of the entire Kubernetes cluster, listing specific checks (nodes, pods, deployments, etc.) and output format (health status with breakdowns). It distinguishes itself from more specific siblings like k8s_get_nodes or k8s_get_resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this is for overall cluster health assessment, but does not explicitly state when to use it over alternatives or when not to use it. Given many sibling tools for specific resources, guidance on scope would be helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_cordon_nodeA

Mark a node as unschedulable. Existing pods continue running but no new pods will be scheduled on this node.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
node_nameYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given no annotations, the description discloses key behavioral traits: existing pods continue running, no new pods scheduled. However, it does not mention prerequisites, permissions, or side effects beyond core behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words, essential information front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple mutation tool with no output schema and few parameters, the description covers the main action and effect. It could be improved by mentioning the parameters, but it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage, and the description does not explain the 'context' parameter or specify that 'node_name' is the name of the node. It adds no semantic value beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool marks a node as unschedulable and explains the effect on existing and new pods. It distinguishes from sibling tools like uncordon (which does the opposite) and drain (which evicts pods).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for making a node unschedulable but provides no explicit when-to-use or when-not-to-use guidance, nor does it mention alternatives like uncordon or drain.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_crdsA

List all Custom Resource Definitions (CRDs) installed in the cluster. Shows CRD names, groups, versions, scope, and status conditions.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but description clearly states listing operation and output fields, implying a safe read operation. Could explicitly state read-only nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff, front-loaded with action and resource. Every word is informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given simplicity (1 param, no output schema, no annotations), description covers essential purpose and output. Could mention return format or use of context parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'context' is not explained in description; schema coverage is 0%. Description 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb 'List' and specific resource 'Custom Resource Definitions (CRDs)' with details on output fields (names, groups, versions, scope, status conditions). Distinguishes from sibling tools like k8s_get_resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage for listing CRDs, but no explicit guidance on when to use versus alternatives like k8s_get_resources, nor exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_create_configmap_resourceC

Create a new Kubernetes ConfigMap with the specified key-value data pairs.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
nameYes
labelsNo
contextYes
namespaceYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates a write operation but lacks details on side effects (e.g., overwrite behavior on duplicates), required permissions, error conditions, or idempotency. With no annotations, the description should disclose more 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no redundant words, but it is overly concise to the point of missing critical information. It front-loads the action but sacrifices completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters (4 required), a nested 'data' object, and no output schema, the description is far too minimal. It provides no information on required parameters, return values, or how to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description only mentions 'key-value data pairs' which vaguely relates to the 'data' parameter. It adds no meaning for 'name', 'namespace', 'context', or 'labels'. The description fails to compensate for the lack of schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 (Kubernetes ConfigMap), and the content (key-value data pairs). It distinguishes from sibling tools like k8s_list_configmap or k8s_create_secret_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool over alternatives, no prerequisites or conditions for proper use, 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.

k8s_create_nsC

Create a new Kubernetes namespace. Optionally attach labels and annotations at creation time.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
labelsNo
contextYes
annotationsNo

TDQS

C2.8/5.0
Behavior2/5

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 creation but does not mention error handling for existing namespaces, idempotency, or required permissions. The mutation behavior is implied but insufficiently detailed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief with two sentences, front-loaded with the main action. Every word is necessary; no redundancy or fluff. Ideal conciseness for a straightforward creation tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (4 params, no output schema, no annotations), the description is incomplete. It omits return value, error behavior, and explanation of the 'context' parameter. A creation tool needs more context for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, yet the description only partially compensates. 'name' is implied, 'labels' and 'annotations' are mentioned as optional, but the crucial 'context' parameter is not explained at all. No format or constraints are given for labels/annotations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a new Kubernetes namespace' with a specific verb and resource. It distinguishes from sibling tools like k8s_delete_ns and k8s_get_namespaces by focusing on creation. However, it could be more precise about what a namespace is, but the purpose is clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 are no prerequisites, context requirements, or exclusions mentioned. Sibling tools exist 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.

k8s_create_resourceC

Create a Kubernetes resource from YAML or JSON content. The content must include apiVersion, kind, and metadata. Optionally override the namespace.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
yaml_contentYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavioral traits. It indicates a write operation (creation) but does not mention idempotency, error behavior (e.g., if resource already exists), required permissions, rate limits, or any side effects. Critical details 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences, front-loading the purpose. It could be slightly more structured (e.g., separate note on context) but remains efficient without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of creating Kubernetes resources and the lack of an output schema, the description is incomplete. It does not cover success/error responses, idempotency behavior, or how this tool relates to the many sibling tools with overlapping functionality.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaning for 'yaml_content' (must include apiVersion, kind, metadata) and 'namespace' (optional override). However, it does not explain the required 'context' parameter, which is left ambiguous. With 0% schema description coverage, the compensation is partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a Kubernetes resource from YAML/JSON content, specifying required fields and optional namespace override. However, it does not distinguish from sibling tools like k8s_apply_resource, which can create or update resources, potentially causing confusion about when to use each.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 k8s_apply_resource, k8s_update_resources, or k8s_create_ns. The description implies usage for creation but lacks explicit context for appropriate scenarios or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_create_secret_resourceB

Create a new Kubernetes Secret. Values in data will be automatically base64-encoded. Common types: Opaque (default), kubernetes.io/tls, kubernetes.io/dockerconfigjson.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
nameYes
labelsNo
contextYes
namespaceYes
secret_typeNoOpaque

TDQS

B3.2/5.0
Behavior3/5

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 reveals that values in data are automatically base64-encoded and lists common secret types, which adds value beyond the schema. However, it does not address idempotency, whether overwrites occur, permissions required, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is exceptionally concise, with two sentences that efficiently convey the core action and key details (auto encoding and common types). No superfluous words are present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters (4 required), nested objects, and no output schema, the description is too sparse. It fails to explain parameter structures, required status, defaults, or return behavior, leaving significant gaps for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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, but it only briefly mentions the data parameter (auto encoding) and the secret_type (via common types). No explanation is given for required parameters like name, namespace, context, or for labels and secret_type's default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates a Kubernetes Secret and highlights auto base64 encoding and common types. While the specialized name already distinguishes it from the generic k8s_create_resource, the description adds value by specifying these details, making the purpose clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for creating secrets but provides no explicit guidance on when to use this tool over alternatives like k8s_create_resource for other resources or k8s_create_configmap_resource. No when-not-to-use criteria are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_delete_nsA

Delete a Kubernetes namespace and all resources within it. Protected namespaces (default, kube-system, kube-public, kube-node-lease) cannot be deleted.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses destructive behavior ('delete and all resources within it') and lists protected namespaces. Without annotations, this adds good transparency despite lacking details on side effects like irreversibility.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, each earning its place: first states action, second adds critical constraint. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the main purpose and protection list. For a destructive tool with two params, it is fairly complete, though parameter documentation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description does not explain the two parameters (name, context). With 0% schema coverage, the description fails to compensate, leaving the agent without guidance on parameter values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it deletes a Kubernetes namespace and all resources within it. Distinguishes itself from other delete tools by focusing on namespace-level deletion and mentions protected namespaces.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Lists protected namespaces that cannot be deleted, providing clear when-not-to-use context. However, does not explicitly compare with sibling tools like k8s_delete_resource.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_delete_resourceA

Delete a Kubernetes resource. Supports all common resource types (pod, deployment, service, configmap, secret, statefulset, daemonset, job, cronjob, ingress, pvc, pv, namespace, serviceaccount, networkpolicy, hpa). Set force=True for immediate deletion (grace_period=0).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
forceNo
contextYes
namespaceNo
grace_periodNo
resource_typeYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description discloses force/grace_period but lacks details on cascading effects, blocking behavior, or destructive nature.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with action, no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex Kubernetes tool with 6 parameters and no output schema, the description is sparse; does not explain how namespace interacts with resource_type or specify return behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage; description only explains force and grace_period relationship, leaving name, context, namespace, and resource_type undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it deletes Kubernetes resources and lists many common resource types, distinguishing it from create/apply tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on force=true for immediate deletion but does not explicitly tell when to use this tool vs other deletion tools like k8s_delete_ns.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_describeA

Show detailed information about a resource, similar to 'kubectl describe'. Can describe a single resource by name, or multiple resources using a label selector. Set all_namespaces=True to search across all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
contextYes
selectorNo
namespaceNo
resource_typeYes
all_namespacesNo

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description should carry the burden of behavioral disclosure. It explains that the tool shows detailed information but does not mention side effects, error handling, or read-only nature. 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The first sentence states the core purpose, and the second adds key capability. Efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and rich sibling context, the description is mostly complete. It explains how to specify resources and use all_namespaces. It could mention the output format or that it returns detailed YAML, but the kubectl analogy likely suffices for experienced users.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description adds value by explaining that 'name' and 'selector' are for specifying resources, and 'all_namespaces' for cross-namespace search. It does not explicitly describe 'context', 'namespace', or 'resource_type', but 'resource_type' is implicit in the tool's purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it shows detailed information about a resource, explicitly compares to 'kubectl describe', and explains it can describe by name or label selector, which distinguishes it from sibling tools like k8s_get_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context by referencing kubectl describe and explains the all_namespaces option. However, it does not explicitly state when to use this tool versus alternatives like k8s_get_resource or k8s_get_resources, which would improve guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_diagnose_applicationA

Diagnose issues with a Kubernetes application by checking resource status, pod health, events, and container logs. Automatically detects common problems like CrashLoopBackOff, OOMKilled, ImagePullBackOff, permission errors, and connection issues. Returns a structured report with issues, severity, and recommendations.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
app_nameYes
namespaceYes
resource_typeNodeployment

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full burden. It explains the tool automatically detects problems and returns a structured report with severity and recommendations, which is good. However, it doesn't disclose if the tool is read-only 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with 4 sentences, front-loaded with the primary action, and each sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately covers the output (structured report) and main purpose, but lacks parameter definitions and context about when to use it vs siblings. With no output schema, the output description is minimal but sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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 (context, namespace, app_name, resource_type). For example, 'context' is ambiguous (likely kubectl context), and 'resource_type' defaults to deployment but no other types mentioned.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it diagnoses Kubernetes applications by checking multiple resources and logs, and it automatically detects common issues like CrashLoopBackOff, OOMKilled, etc. This distinguishes it from sibling tools that focus on single resource types or logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for troubleshooting application issues but does not explicitly specify when to use this tool versus alternatives like k8s_get_pod_logs or k8s_describe. No when-not-to-use guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_drain_nodeA

Drain a node by evicting all pods, preparing it for maintenance. Automatically cordons the node first. Set ignore_daemonsets=True to skip DaemonSet pods. Set force=True to evict pods not managed by a controller.

ParametersJSON Schema
NameRequiredDescriptionDefault
forceNo
contextYes
timeoutNo
node_nameYes
delete_local_dataNo
ignore_daemonsetsNo

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key behaviors: evicts all pods, cordons automatically, and effects of force/ignore_daemonsets. However, it omits details on timeout, delete_local_data, side effects like unschedulable state, and failure handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three well-structured sentences with no redundant content. First sentence provides primary purpose, subsequent ones add parameter-specific guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, no output schema, and no annotations, the description covers only two parameters in depth. Missing explanation of timeout, delete_local_data, return values, and error scenarios.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaning for 'force' and 'ignore_daemonsets' beyond the schema. Yet with 0% schema description coverage, the description does not cover 'timeout', 'delete_local_data', 'context', or 'node_name', leaving gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action (drain), resource (node), and purpose (maintenance). It also mentions automatic cordoning, distinguishing it from sibling cordon tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context on automatic cordoning and hints for using 'ignore_daemonsets' and 'force' parameters. However, it does not explicitly state when to use this tool versus alternatives like cordon or delete node.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_expose_resourceC

Expose a deployment or pod as a new Kubernetes Service. Creates a Service that routes traffic to the target resource. Specify type='LoadBalancer' for external access or type='NodePort' for node-level access.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
portYes
typeNo
labelsNo
contextYes
protocolNo
selectorNo
namespaceNo
target_portNo
service_nameNo
resource_typeYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states it 'creates a Service', implying a write operation, but does not disclose potential side effects (e.g., conflicting with existing Services, permission requirements, or resource existence checks). This is insufficient transparency 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise at two sentences, but given the tool's complexity (11 parameters), it is under-specified. It could include more parameter guidance without being overly verbose. The structure is adequate but could be improved.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 0% schema coverage, no annotations, no output schema, and 11 parameters, the description is severely incomplete. It fails to explain critical parameters (e.g., 'context', 'namespace', 'selector') and does not specify return values or error scenarios. The agent lacks essential information to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 11 parameters with 0% description coverage. The description only mentions 'type' and implies the target resource (deployment/pod), but it does not explain any other parameters such as 'labels', 'target_port', 'protocol', or 'selector'. The AI cannot infer proper usage for most parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Expose a deployment or pod as a new Kubernetes Service.' It specifies the action (expose) and the resources involved (deployment/pod -> Service). There are no sibling tools with 'expose' in the name, so it is distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 k8s_create_resource or k8s_apply_resource for creating Services. It only mentions the 'type' parameter values but lacks explicit 'when to use' or 'when not to use' instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_clusterrolebindingsB

List RBAC ClusterRoleBindings showing cluster-wide role assignments.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that the tool lists bindings, without mentioning authentication needs, response format, pagination, or any side effects. This is 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 10 words, directly stating the tool's purpose without any unnecessary words. It is appropriately sized and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite low complexity (1 parameter, no output schema), the description is incomplete. It does not describe how to use the context parameter, what the output looks like, or any filtering/pagination behavior. Essential details for effective tool invocation are missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage; the sole required parameter 'context' (string) is not explained. The description does not add any meaning beyond the schema, failing to clarify what values are valid or how to obtain them. This leaves the agent uninformed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'List RBAC ClusterRoleBindings showing cluster-wide role assignments.' It clearly specifies the action (List), resource (RBAC ClusterRoleBindings), and scope (cluster-wide), distinguishing it from sibling tools like k8s_get_rolebindings (namespace-scoped) and k8s_get_clusterroles (roles themselves).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing cluster-wide role assignments but provides no explicit guidance on when to use this tool versus alternatives like k8s_get_rolebindings or k8s_get_clusterroles. No when-not-to-use or prerequisite information is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_clusterrolesB

List RBAC ClusterRoles with their permission rules. ClusterRoles grant cluster-wide permissions or can be bound per-namespace.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

B3.1/5.0
Behavior2/5

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 it lists roles and permission rules, but omits details about authorization needed, output format, or that it is a read-only operation. Minimal behavioral context beyond purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The first sentence states the primary action, and the second adds relevant scope information. Properly front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 1 parameter with no description, no output schema, and related sibling tools, the description is too sparse. It doesn't explain what 'permission rules' entail or how to interpret the output, leaving the agent under-informed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'context' has no schema description (0% coverage) and the tool description does not mention it at all. The agent receives no guidance on what 'context' represents or how to use it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'RBAC ClusterRoles', and the second sentence distinguishes them from namespaced roles by noting their cluster-wide scope. This differentiates it from sibling tools like k8s_get_roles and k8s_get_clusterrolebindings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing cluster-wide RBAC roles by mentioning cluster-wide permissions vs per-namespace binding, but it does not explicitly name alternatives or state when not to use the tool compared to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_configmap_detailA

Get a Kubernetes ConfigMap with its full data contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes

TDQS

A3.5/5.0
Behavior3/5

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 correctly implies a read-only operation ('Get'), but does not mention any side effects, permissions, or output specifics. The description is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no extraneous words. It is front-loaded with the key action and resource, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and parameter descriptions, the description is too terse. It does not clarify what 'full data contents' entails, nor does it address common concerns like large data or binary data. The context from sibling tools is not leveraged.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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 any of the three required parameters (name, context, namespace). The agent must infer meaning solely from parameter names, which is insufficient for correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets a Kubernetes ConfigMap with full data contents. It uses a specific verb ('Get') and resource, and distinguishes from related tools like k8s_list_configmap which only lists, and k8s_get_secret_detail for secrets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when needing full ConfigMap data, but does not explicitly state when to use versus alternatives like k8s_list_configmap. There are no usage exclusions or contextual guidance beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_contextsA

List all available Kubernetes contexts from all kubeconfig files. Returns context names that can be used with other tools. Supports partial context name matching in all other commands.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that it lists from all kubeconfig files and returns context names. It does not mention duplicate handling or current context indication, but for a read-only list, it's fairly transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, no fluff. The key information is front-loaded: what it does, output, and a note about partial matching in other commands. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, no output schema, and a simple list operation, the description is sufficient. It explains the scope (all kubeconfig files) and output (context names). Could hint at what 'all kubeconfig files' means, but overall complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so the description adds no parameter info. Per guidelines, 0 parameters baseline is 4, and the description appropriately avoids extraneous detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all available Kubernetes contexts from all kubeconfig files, which is a specific verb+resource. It distinguishes itself from siblings that deal with namespaces, nodes, etc., by focusing on contexts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It mentions that returned context names can be used with other tools, implying usage for context selection. While it doesn't explicitly list when not to use, the narrow scope makes the intent clear. No sibling comparison beyond context vs. other resources.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_cronjobsB

List Kubernetes CronJobs with schedule, suspension status, active jobs, and last schedule/success times. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
label_selectorNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It mentions the listed fields and namespace behavior but does not state that it is a read-only operation or any prerequisites/permissions. It is accurate but lacks explicit safety/property disclosures.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence plus a concise instruction, no wasted words. It is front-loaded with the core purpose. Slightly under-specifies parameters, but conciseness is good.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 parameters with no schema descriptions and no output schema, the description is incomplete. It covers the output fields and namespace behavior but omits parameter usage for context and label_selector. Adequate but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should explain parameters. However, it only implicitly addresses namespace via the 'Omit namespace' phrase, and does not explain 'context' or 'label_selector'. The description adds minimal semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists Kubernetes CronJobs and enumerates the returned fields (schedule, suspension status, active jobs, last schedule/success times). It distinguishes from sibling tools like k8s_get_jobs by specifying CronJobs specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives one usage tip ('Omit namespace for all namespaces') but does not provide when-to-use or when-not-to-use guidance relative to other list tools. No alternatives 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.

k8s_get_eventsB

List Kubernetes events in a namespace, sorted by most recent first. Events show scheduling decisions, image pulls, container crashes, and other cluster activity.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
contextYes
namespaceYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry full burden. While 'list' implies read-only, it does not explicitly state safety, permissions, or any side effects. Lacks details on rate limits or impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The first sentence gives the core action, the second adds valuable context about event types. Efficient and readable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no annotation; description is too brief for a tool with 3 parameters and many siblings. It does not mention return format, pagination, or prerequisites like a valid kubeconfig context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% coverage; description does not explain the 'limit', 'context', or 'namespace' parameters beyond their names. The description implies namespace usage but does not clarify 'context' or that 'limit' controls count.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb 'List' and resource 'Kubernetes events' along with sorting order and examples of event types (scheduling, crashes). This distinguishes it from sibling tools like k8s_get_pod_logs or k8s_get_resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 does not mention prerequisites, limitations, or comparisons to other Kubernetes tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_jobsB

List Kubernetes Jobs with completion status, active/succeeded/failed counts, and timing information. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
label_selectorNo

TDQS

B3.2/5.0
Behavior2/5

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 what information is returned, but does not mention if the operation is read-only, required permissions, error cases, or behavior when no jobs exist. This leaves significant gaps for 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, with no filler. It front-loads the core action and then adds specific output details. Every word contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description is somewhat complete for a simple list tool, mentioning key return fields. However, it lacks details on pagination, filtering beyond label_selector, and error handling. Adequate but not thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description only adds value for the namespace parameter ('Omit namespace for all namespaces'). The context and label_selector parameters receive no explanation. The description does not compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists Kubernetes Jobs, specifying the exact information returned (completion status, active/succeeded/failed counts, timing). It is distinct from sibling tools like k8s_get_cronjobs which list a different resource type. The optional namespace usage is also clarified.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide guidance on when to use this tool versus siblings. No mention of alternatives like k8s_get_resources or k8s_get_cronjobs for related queries. 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.

k8s_get_namespacesB

List all namespaces in a Kubernetes cluster. Use this to discover available namespaces before querying resources.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. 'List' implies a read-only, safe operation, which is adequate. However, it does not explicitly confirm idempotency, authorization needs, or whether the output is paginated. The description is not misleading but could be more transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences covering purpose and usage, with no fluff. Front-loaded with the core action. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one parameter and no output schema, the description adequately covers the core functionality. It mentions the use case (discovery before querying), which fits with sibling tool context. Could be improved by noting that the context parameter refers to a kubeconfig context, but overall it's sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one parameter 'context' with no description; schema description coverage is 0%. The tool description adds nothing about this parameter. The agent only knows it's a required string. While 'context' is a common term in Kubernetes, the lack of any explanation leaves the agent guessing about its exact value or format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'List all namespaces in a Kubernetes cluster', which is a specific verb and resource. It also hints at its purpose as a discovery step before querying resources, helping distinguish it from other tools like k8s_create_ns or k8s_delete_ns, though not explicitly naming them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives one usage cue: 'Use this to discover available namespaces before querying resources.' This implies when to use it, but does not provide when-not-to or mention alternatives like k8s_get_contexts. Guidance is present but minimal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_network_policiesB

List NetworkPolicies that control pod-to-pod and pod-to-external traffic. Shows pod selectors, policy types (Ingress/Egress), and rule counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description indicates a read-only listing operation but lacks details on scope (e.g., whether it lists across all namespaces when namespace is omitted), potential pagination, or required permissions. With no annotations, the description carries the full burden but only partially addresses it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences, the first clearly stating the purpose and the second adding specifics about the output. It is front-loaded and contains no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides basic information about the output but omits details on error handling, permissions, default behavior for the namespace parameter, or response format. Given no output schema, more context would be beneficial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not explain the parameters 'context' and 'namespace'. Since schema description coverage is 0%, the description should provide meaning for these parameters but fails to do so, leaving their semantics unclear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists NetworkPolicies, specifies what they control (pod-to-pod and pod-to-external traffic), and outlines the displayed details (pod selectors, policy types, rule counts). This distinguishes it from sibling tools that handle other Kubernetes resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 k8s_describe or other resource-specific listings. There is no mention of prerequisites, filtering behavior, or contrast with related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_nodesC

List all nodes in a Kubernetes cluster with status, roles, capacity, and version info.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries the full burden. It implies a read operation but does not explicitly state safety, authentication needs, or any side effects. 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no wasted words. However, it could be slightly expanded to include parameter details without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description lists the output fields, which is helpful given no output schema. However, it lacks explanation of the required parameter and does not clarify the scope of 'all nodes' (e.g., cluster-wide vs. namespaced). Adequate but with gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

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 'context' parameter (e.g., its purpose, format, or allowed values). The parameter remains ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all nodes in a Kubernetes cluster with specific fields (status, roles, capacity, version). It distinguishes from sibling tools like k8s_top_nodes and k8s_cluster_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 k8s_describe or k8s_get_resource. No mention of prerequisites or context requirements.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_pod_logsA

Get logs from a Kubernetes pod. For multi-container pods, logs from the first container are returned by default. Use sinceDuration to filter (e.g., '5m', '1h', '2d'). Set previousContainer=True to get logs from the previously terminated container.

ParametersJSON Schema
NameRequiredDescriptionDefault
podYes
contextYes
namespaceYes
sinceDurationNo
previousContainerNo

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses key behaviors: for multi-container pods, logs from the first container are returned by default; sinceDuration format examples ('5m', '1h', '2d'); and the effect of setting previousContainer to true. It does not mention potential truncation or output format, but covers essential aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, immediately stating the core purpose, then providing key default behavior and parameter usage. Every sentence adds information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations and output schema, the description should clarify the return format (e.g., streaming lines, complete logs) and any limitations (e.g., max lines). It omits this information, leaving gaps for the agent. However, for a simple log retrieval, the behavior is mostly inferable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description adds value by explaining the format of sinceDuration (e.g., '5m', '1h', '2d') and the usage of previousContainer ('get logs from the previously terminated container'). Other parameters (pod, context, namespace) are self-explanatory and need no further detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get logs from a Kubernetes pod.' It specifies the action (get) and resource (pod logs), and distinguishes from sibling tools like k8s_describe or k8s_pod_exec by focusing solely on log retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for fetching logs but provides no explicit comparison to alternatives or when not to use this tool. It offers context on default behavior for multi-container pods but lacks guidance on choosing this over other log-related commands.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_pvcsB

List PersistentVolumeClaims (PVCs) with status, capacity, access modes, and storage class. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
label_selectorNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral burden. It explains the namespace behavior, but does not disclose permission requirements, pagination limits, or effects of the context parameter. It is adequate for a simple list operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose and a key behavior. No wasted words, but could be slightly more structured to cover all parameters.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Core purpose and namespace behavior are covered, but context and label_selector are not explained, and output format is only partially listed. Given no output schema, more detail on return could help completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% coverage, so description must compensate. It explains namespace behavior ('omit for all namespaces') but leaves context and label_selector unexplained. Partial value added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool lists PersistentVolumeClaims and specifies the returned fields (status, capacity, access modes, storage class). It clearly distinguishes from siblings like k8s_get_pvs (PersistentVolumes) and other get tools by naming the specific resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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., k8s_get_pvs, k8s_get_storage_classes). The hint about omitting namespace is a usage tip but not a comparative guideline.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_pvsB

List PersistentVolumes (PVs) in the cluster with capacity, access modes, reclaim policy, and bound claim information.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only lists output fields. Missing behavioral traits like read-only nature, required permissions, or side effects. 'List' implies read-only 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, 15 words, efficient and well-structured. Front-loaded with key action and resource.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with one parameter; description explains return values but fails to document the input parameter. Adequate for basic understanding but incomplete on context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% coverage; only parameter 'context' is listed. Description does not explain what 'context' means (e.g., kubeconfig context). No added semantic value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'PersistentVolumes' with details on returned information (capacity, access modes, etc.). It distinguishes from sibling tools like k8s_get_pvcs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. No prerequisites or exclusions mentioned. Implied usage for listing PVs but no context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_resourceC

Get the complete definition of a single Kubernetes resource. Returns the full resource spec, status, and metadata as a dictionary.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
nameYes
groupNo
contextYes
versionNo
namespaceYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must fully disclose behavior. It implies a read operation ('Get') but does not explicitly state read-only, required permissions, rate limits, or any side effects. Missing output schema leaves return format vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences and front-loaded purpose. However, conciseness sacrifices useful details; it could include parameter guidance or usage tips without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and many sibling tools, the description is incomplete. It lacks information on return format, error handling, and how to differentiate from similar tools. A more complete description would cover these gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage and the description adds no explanations for any of the 6 parameters (kind, name, group, etc.). Users get no help on how to specify parameters like group or version, which are optional and could be confusing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets the 'complete definition of a single Kubernetes resource' and returns 'spec, status, and metadata', which is specific and informative. However, it does not differentiate from similar siblings like k8s_get_resources (plural) or k8s_describe, missing a chance to clarify its unique purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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., k8s_get_resources for listing multiple, k8s_describe for a detailed overview). The description lacks context about prerequisites, limitations, or preferred scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_resourcesA

List Kubernetes resources of a specified kind (e.g., Pod, Deployment, Service, Ingress). Common kinds auto-detect their API group. For custom resources, specify group and version. Omit namespace to query across all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
groupNo
contextYes
versionNo
namespaceNo

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses auto-detection of API groups for common kinds and requirement of group/version for custom resources, and that omitting namespace queries all. However, it does not mention safety (likely read-only), pagination, rate limits, 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with clear front-loading: first defines purpose, second explains auto-detection, third covers namespace behavior. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters and no output schema, the description covers purpose, kind, group/version for custom resources, and namespace behavior. However, it lacks details on context format, return type (e.g., list of names or full objects), and any limits. Moderately complete but with gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no parameter descriptions), so description must compensate. It explains 'kind' as resource type, 'group' and 'version' as needed for custom resources, and 'namespace' optional for all-namespace. It does not detail 'context' but overall adds significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists Kubernetes resources of a specified kind, with examples like Pod and Deployment. It distinguishes from the singular 'k8s_get_resource' sibling by specifying plural listing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear stating when to use: to list resources by kind. Implicitly excludes getting details or logs by naming siblings. Includes advice on omitting namespace for all-namespace queries, but lacks explicit when-not-to-use or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_rolebindingsA

List RBAC RoleBindings showing which subjects (users, groups, service accounts) are bound to which roles. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo

TDQS

A3.5/5.0
Behavior3/5

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 listing operation, and the 'Omit namespace for all namespaces' note provides behavioral insight. However, it lacks details on authentication, rate limits, or result format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load the purpose and include a key usage tip. No wasted words; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description covers the core listing functionality and namespace behavior but neglects to explain the 'context' parameter or return values. Adequate but with a clear gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 effect ('Omit namespace for all namespaces') but does not describe the required 'context' parameter. This is partial but meaningful beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List RBAC RoleBindings showing which subjects are bound to which roles.' It uses a specific verb ('List') and resource, and distinguishes from siblings like k8s_get_roles and k8s_get_clusterrolebindings by mentioning namespace scope and the 'Omit namespace for all namespaces' note.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. siblings like k8s_get_clusterrolebindings or k8s_get_roles. The description only implies namespace-scoped operation but does not state prerequisites or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_rolesA

List RBAC Roles with their permission rules. Roles grant permissions within a specific namespace. Omit namespace to list roles across all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description implies a read-only operation but does not disclose potential behavioral traits such as pagination, rate limits, or required permissions. Minimal transparency beyond basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no wasted words: action, role scope, and namespace usage. Front-loaded with the primary purpose. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool for listing roles; description covers key purpose and namespace filtering. No output schema needed, but could mention return format or permission rules structure. Adequate for its simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%. Description adds meaning to the namespace parameter (omit to list across namespaces) but completely fails to explain the required context parameter, leaving critical input undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'RBAC Roles', specifying that it lists roles with their permission rules. It distinguishes from sibling tools like k8s_get_clusterroles by mentioning namespace scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on namespace parameter omission to list across namespaces, but lacks explicit comparison to alternative tools like k8s_get_clusterroles or k8s_get_rolebindings. No 'when not to use' advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_secret_detailA

Get a Kubernetes Secret. By default shows only key names for security. Set decode=True to include the actual decoded values. Use with caution - decoded secrets may contain sensitive credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
decodeNo
contextYes
namespaceYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full weight and discloses key behavioral traits: default hides values, decode shows actual decoded values, and decoded secrets may contain sensitive credentials. It does not cover error handling or output format details, but the caution about sensitivity adds significant value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences with no filler. The first sentence states the core purpose, the second explains the default behavior and an option, and the third adds a necessary caution. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description gives a rough idea of return values (key names or decoded values) but omits details like the JSON structure, base64 encoding status, and error behavior. For a tool dealing with sensitive data, these gaps reduce completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explicitly explains the 'decode' parameter's effect ('Set decode=True to include the actual decoded values'), which is the only non-obvious parameter. However, required parameters like 'name', 'context', and 'namespace' are left to self-explanatory naming, with 0% schema description coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'a Kubernetes Secret', and distinguishes from sibling tools like k8s_list_secret by specifying that it retrieves a single secret's details. The additional detail about default key-name-only behavior and the decode option further clarifies the specific functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a security caution and hints at when to use the decode parameter ('with caution'), but it does not explicitly contrast this tool with alternatives like k8s_get_resource or list_secret. There is no direct 'when to use vs when not to use' guidance, leaving some ambiguity for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_service_accountsB

List Kubernetes ServiceAccounts. ServiceAccounts provide pod-level identity for RBAC authorization. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that the tool lists ServiceAccounts and the effect of omitting namespace. No annotations exist, so description carries the burden; it adds some behavioral context but lacks details on behavior like pagination, rate limits, or return format.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundant words. Front-loaded with the core purpose. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and 0% parameter coverage, the description is too minimal. It does not specify return values (e.g., list of names, details), any additional behavior, or error conditions. For a simple list tool, more context would aid the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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 the 'namespace' parameter's behavior when omitted (list all namespaces), but does not describe the required 'context' parameter at all. Thus, only partial improvement over bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'List' and resource 'Kubernetes ServiceAccounts', and explains the concept briefly. However, it does not explicitly differentiate from sibling tools that list other resources, though the resource name is distinct.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides a hint about omitting namespace for all namespaces, which guides usage. But there is no explicit when-to-use or when-not-to-use compared to siblings, nor alternatives mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_get_storage_classesA

List StorageClasses in the cluster with provisioner, reclaim policy, volume binding mode, and whether each is the default class.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility. It explains what information is returned (provisioner, reclaim policy, etc.) but does not disclose any behavioral traits such as read-only nature, required permissions, or side effects. The description is adequate but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that conveys the tool's functionality without extraneous words. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one parameter and no output schema, the description is largely sufficient. It states what is listed and the fields included. However, it could be improved by mentioning the return format (e.g., array of objects) or providing an example.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has one required parameter 'context' with no description coverage (0%). The description does not explain what 'context' means, how it is used, or its expected values. Given that the schema coverage is zero, the description fails to add any meaning to the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists StorageClasses and specifies the fields returned (provisioner, reclaim policy, volume binding mode, default class). It distinguishes itself from sibling tools like k8s_get_nodes or k8s_get_resources by focusing on a specific resource type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for listing StorageClasses, but it does not provide explicit guidance on when to use it versus alternatives (e.g., k8s_get_resources). No when-not-to-use or context is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_label_resourceB

Add or update labels on a Kubernetes resource. Labels are key-value pairs used for organizing and selecting resources.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
labelsYes
contextYes
namespaceNo
overwriteNo
resource_typeYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description must disclose behaviors beyond the name. It mentions add/update but omits critical details: whether labels are merged or replaced, the impact of the 'overwrite' parameter, if the resource must exist, and whether removing labels is possible. The description adds minimal value over 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loaded with the core purpose. It wastes no words, but could be more informative within the same length (e.g., clarifying the overwrite parameter's effect).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, no output schema, and no annotations, the description is incomplete. It does not explain label merge behavior, the role of 'overwrite', or how to remove labels. An agent cannot safely invoke this tool based on the description alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%. The description only mentions labels as key-value pairs but does not explain any of the 6 parameters (context, resource_type, name, namespace, labels, overwrite). Their purpose and constraints are entirely absent, leaving the agent to guess roles and valid inputs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add or update labels') and the target ('a Kubernetes resource'), distinguishing it from siblings like k8s_annotate_resource (annotations) and k8s_patch_resource (generic updates). The definition of labels as key-value pairs adds context.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context (managing labels on resources) but offers no explicit guidance on when to use this tool versus alternatives like k8s_annotate_resource or k8s_patch_resource. No exclusions 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.

k8s_list_configmapA

List Kubernetes ConfigMaps with their key names. Use label_selector to filter. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
label_selectorNo

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It describes the tool as listing ConfigMaps with key names, which implies a read-only operation, but lacks details on behavior such as pagination, error handling, or permissions required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two short sentences, each providing essential information without any fluff. Every word adds value, and the most important action (listing) is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with 3 parameters and no output schema, the description covers the main behavior and parameter usage. It could mention that only key names are returned (not values) or that the output is a list of ConfigMap objects, but it is largely adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description adds meaning for 'label_selector' (filtering) and 'namespace' (omit for all namespaces). However, it does not explain the required 'context' parameter, leaving its purpose unclear. The description partially compensates for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states exactly what the tool does: list Kubernetes ConfigMaps with their key names. It uses a specific verb 'List' and resource 'ConfigMaps', distinguishing it from sibling tools like k8s_get_configmap_detail which retrieves a single detailed ConfigMap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage guidance: 'Use label_selector to filter' and 'Omit namespace for all namespaces'. This helps the agent decide when to set these parameters, but does not explicitly compare to alternatives like k8s_list_secret or k8s_get_configmap_detail.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_list_secretA

List Kubernetes Secrets with metadata (keys only, values hidden for security). Use label_selector to filter (e.g., 'app=myapp'). Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo
label_selectorNo

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that values are hidden for security, which is critical behavioral info. No annotations provided, so description carries the burden. Lacks mention of pagination, performance limits, 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, first states purpose and key security behavior, second provides usage tips. No unnecessary words, front-loaded with critical info.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and 3 parameters, description covers purpose, security, and two parameter hints. Could mention output format or structure, but overall provides enough context for a simple list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 label_selector with example and implies namespace semantics, but does not describe the required 'context' parameter. Adds some meaning beyond schema but not fully comprehensive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it lists Kubernetes Secrets and hides values for security. It specifies resource and action, but does not explicitly differentiate from other list tools like k8s_list_configmap or sibling k8s_get_secret_detail, though the mention of keys-only and hidden values 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.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on using label_selector with an example and notes that omitting namespace lists across all namespaces. However, it does not indicate when to use this tool versus k8s_get_secret_detail or other alternatives, nor does it specify prerequisites like permissions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_patch_resourceB

Update specific fields of a resource using a strategic merge patch. Supports pod, deployment, service, configmap, secret, and custom resources.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
patchYes
contextYes
namespaceNo
resource_typeYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description bears full burden. States 'update specific fields' and 'strategic merge patch' implying mutation, but does not disclose idempotency, error behavior (e.g., fails if resource missing), or side effects. Lacks at least 3 behavioral traits given absence of annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first states purpose and patch type, second lists supported resource types. No unnecessary words, but could be more structured (e.g., bullet points for types).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and 5 parameters with 0% coverage. Description omits crucial details like patch format, namespace optionality, context role, and return behavior. Incomplete for effective usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, description adds no parameter-level meaning beyond the schema. Does not explain format of 'patch' object, resource_type spelling, or purpose of context/namespace. Minimal added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool updates specific fields of a resource using a strategic merge patch, listing supported resource types (pod, deployment, etc.), which distinguishes it from sibling tools like k8s_update_resources or k8s_apply_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage for patching specific fields, but no explicit guidance on when to use this over alternatives like k8s_update_resources (full update) or k8s_apply_resource (apply configuration). Lacks when-not-to-use or prerequisite conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_pod_execB

Execute a command inside a running container. Supports quoted arguments (e.g., 'ls -la "/my dir"'). Specify container for multi-container pods. Defaults to the 'default' namespace if not specified.

ParametersJSON Schema
NameRequiredDescriptionDefault
ttyNo
stdinNo
commandYes
contextYes
timeoutNo
pod_nameYes
containerNo
namespaceNo

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It mentions quoted arguments but does not disclose important behavioral details like interaction mode (TTY/stdin), timeout handling, or any side effects. Mutation implied but not clarified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with key action. No redundancy, but could be more structured (e.g., list guidance points). Efficient but slightly terse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers basic use case and common parameters but lacks output description, error handling, and security/authentication context. With 8 parameters and no annotations or output schema, more completeness would help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and description adds meaning for command, container, namespace (e.g., quoted arguments, default namespace). However, parameters like tty, stdin, timeout, context, and pod_name remain undocumented despite needing clarification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Execute a command inside a running container' with a specific verb and resource. It distinguishes this tool from sibling tools like k8s_get_pod_logs (logs) and k8s_run_pod (create pod).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides some guidance: 'Specify container for multi-container pods' and namespace default, but lacks explicit when-not-to-use conditions or alternatives (e.g., use k8s_get_pod_logs for logs). No mention of prerequisites or context selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_historyA

Get the revision history of a deployment, daemonset, or statefulset. Shows past revisions that can be used with rollout_undo.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
resource_typeYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry the burden. It correctly implies a read-only operation by saying 'Get the revision history', but does not explicitly state it is non-destructive or list 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action, no redundancy. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 4 required parameters with no schema descriptions and no output schema, the description is minimal. It lacks details on parameter values or output format, leaving the agent with insufficient context for proper use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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', 'context', 'namespace', or 'resource_type' beyond mentioning the resource types. This is a significant gap that hinders correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Get the revision history' and specifies the resource types (deployment, daemonset, statefulset), which distinguishes it from sibling tools like k8s_rollout_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'Shows past revisions that can be used with rollout_undo', which indicates a use case and connects to a sibling tool, but lacks explicit when-not-to-use guidance or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_pauseA

Pause an in-progress rollout for a deployment, daemonset, or statefulset. Useful for canary-style deployments where you want to inspect before continuing.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
resource_typeYes

TDQS

A3.5/5.0
Behavior3/5

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 describes the primary action (pausing) but lacks details on side effects, prerequisites (rollout must be in-progress), permissions required, or error handling. The description is functional but not deeply transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no redundancy. First sentence defines action and scope, second sentence adds usage context. Efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a rollout pause (state change), the description lacks output expectations, error conditions, or interaction with other tools. The absence of annotations and output schema increases the need for completeness, which is not met.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description should compensate. It mentions supported resource types (deployment, daemonset, statefulset), which tangentially describes the 'resource_type' parameter, but does not explain 'context', 'namespace', or 'name'. No values or formats are given, leaving meaning mostly to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Pause') and the specific resources (deployment, daemonset, statefulset), with an additional use-case hint ('canary-style deployments'). It leaves no ambiguity about what the tool does and distinguishes it from sibling rollout tools like resume or status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it's useful for canary deployments where inspection is needed, which gives some context. However, it does not explicitly state when not to use (e.g., when rollout is already paused) or mention alternatives like rollout_resume or rollout_status. The guidance is implicit rather than direct.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_restartC

Trigger a rolling restart of a deployment, daemonset, or statefulset. All pods will be recreated in a rolling fashion.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
resource_typeYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

States that all pods will be recreated in a rolling fashion, which reveals the destructive nature. However, no mention of permissions, impact on existing operations, or that it's a write operation. With no annotations, this is adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the action and resource types. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameter descriptions, no output schema, and no annotations, the description fails to provide sufficient context for a tool with four required params. The agent would need to guess resource_type values and other details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

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 any of the four required parameters. The agent gets no help understanding what 'context', 'name', 'namespace', or 'resource_type' mean or what valid values are.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it triggers a rolling restart for deployments, daemonsets, or statefulsets. However, it does not explicitly differentiate from sibling rollout tools like rollout_undo or rollout_resume, but the action is distinct enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 conditions mentioned. Agent must infer from tool name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_resumeC

Resume a previously paused rollout for a deployment, daemonset, or statefulset.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
resource_typeYes

TDQS

C2.9/5.0
Behavior2/5

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 action without disclosing side effects, required permissions, or what happens if the rollout is not paused. Critical behavioral traits are omitted for a mutating operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the key action. However, it could be restructured to include parameter hints or usage notes without adding length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description is incomplete. It does not explain return values, error cases, or failure modes. For a tool with 4 required parameters and no schema coverage, more context is needed for reliable use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, yet the description only hints at resource_type values (deployment, daemonset, statefulset). It adds no meaning for name, context, or namespace. The schema alone is insufficient for understanding parameter constraints or expected formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (resume) on a specific resource (previously paused rollout) and lists the applicable resource types (deployment, daemonset, statefulset). It distinguishes itself from siblings like k8s_rollout_pause and k8s_rollout_restart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. It does not mention prerequisites (e.g., rollout must be paused) or when not to use it. Agents lack context to decide between this and other rollout management tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_statusB

Get the rollout status of a deployment, daemonset, or statefulset. Shows replica counts, conditions, and whether the rollout is complete.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
resource_typeYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must fully disclose behavioral traits. It correctly implies a read-only operation by stating 'Get the rollout status', but does not explicitly confirm no side effects or mention any prerequisites, rate limits, or destructive potential. The description is adequate but could be more explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that front-load the action and target resources. Every sentence provides value without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has 4 required parameters, no output schema, and no annotations, the description provides the basic purpose and output content but leaves gaps in parameter documentation and usage context. It is minimally complete but could benefit from additional details on expected output format and parameter constraints.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, and the description does not explain any parameters. While parameter names like 'name', 'context', 'namespace', and 'resource_type' are self-explanatory, the 'resource_type' parameter's allowed values (deployment, daemonset, statefulset) are mentioned in the description but not directly linked to the parameter. More detailed parameter guidance would be beneficial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the verb 'Get the rollout status' and the target resources 'deployment, daemonset, or statefulset'. It also states what information is shown (replica counts, conditions, completion status). However, it does not explicitly differentiate from sibling tools like 'k8s_describe' or 'k8s_rollout_history', which could also show status details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 use 'k8s_rollout_status' instead of 'k8s_describe' or other rollout tools). The description lacks explicit recommendations or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_rollout_undoA

Roll back a deployment, daemonset, or statefulset to a previous revision. Omit to_revision to roll back to the immediately previous revision, or specify a revision number from rollout_history.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
namespaceYes
to_revisionNo
resource_typeYes

TDQS

A3.5/5.0
Behavior2/5

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 mentions the two modes of rollback but omits prerequisites, side effects (e.g., pod recreation, new revision creation), permissions, and whether the operation is synchronous. This leaves significant behavioral gaps 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the action, and contains no redundant information. Every word contributes to meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that this is a mutation tool with no output schema, the description lacks details on return values, error conditions, and prerequisites. Sibling tools are distinguished by purpose but not by usage scenarios. The description is incomplete for safe and effective invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With schema coverage at 0%, the description should explain all parameters, but it only discusses to_revision. The other four required parameters (name, context, namespace, resource_type) are not elaborated, relying on their self-explanatory names, which is insufficient for a complete agent understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'Roll back' and specifies the resource types (deployment, daemonset, statefulset) with a specific purpose of reverting to a previous revision. This distinguishes it from sibling rollout tools like status, history, restart, pause, resume.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides concrete guidance on using the to_revision parameter: omit for immediate previous revision or specify a revision number from rollout_history. This helps the agent choose the correct parameter usage, though it doesn't explicitly exclude other scenarios or list alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_run_podA

Create and run a pod with the specified container image. Useful for running one-off tasks, debugging, or testing. Set restart='Never' for one-shot jobs.

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo
nameYes
imageYes
labelsNo
commandNo
contextYes
restartNo
namespaceNo

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description mentions it creates and runs a pod, and hints at restart behavior. However, it does not disclose persistence, cleanup, idempotency, or permissions needed. Minimal extra behavioral context beyond purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with front-loaded purpose, followed by usage context and specific tip. No redundant text; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 parameters, 0% schema coverage, no annotations, and no output schema, the description is too brief. It does not explain required 'context', optional parameters, or what happens after pod creation. Significant gaps for an average-complexity tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 8 parameters with 0% description coverage. Description only adds meaning to 'image' (container image) and 'restart' (hint for one-shot). No explanation for 'context', 'namespace', 'env', 'labels', 'command'. Insufficient for a tool with many params.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Create and run a pod with the specified container image', specifying the verb and resource. It distinguishes from sibling tools like k8s_create_resource (general resource creation) and k8s_get_pod_logs (logs).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context: 'Useful for running one-off tasks, debugging, or testing.' Advises setting restart='Never' for one-shot jobs. Lacks explicit exclusions or alternatives, but gives clear usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_scale_resourceB

Scale a deployment, statefulset, or replicaset to the specified number of replicas. Set replicas=0 to scale down completely.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
replicasYes
namespaceYes
resource_typeYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should fully disclose behavioral traits. It only notes scaling down with replicas=0 but omits details like pod termination, rollback capabilities, or required permissions. The impact of scaling is not fully explained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no extraneous information. It 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.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 0% schema coverage, the description is too sparse. It does not cover prerequisites, return values, or the consequences of scaling (e.g., pod termination). A more complete description is needed for this potentially destructive operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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. Only the replicas parameter is partially explained (set to 0 to scale down). Other critical parameters (context, namespace, resource_type, name) are not described at all.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scales a deployment, statefulset, or replicaset to a specified number of replicas, and specifically mentions scaling down with replicas=0. This distinguishes it from sibling tools like k8s_autoscale_resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for manual scaling but does not explicitly advise when to use this tool versus alternatives like k8s_autoscale_resource or k8s_update_resources. 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.

k8s_set_resources_for_containerB

Set resource limits and requests for containers in a deployment, statefulset, or daemonset. Example: limits={'cpu': '500m', 'memory': '256Mi'}, requests={'cpu': '100m', 'memory': '128Mi'}.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitsNo
contextYes
requestsNo
namespaceNo
containersNo
resource_nameYes
resource_typeYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description only states it sets resources, lacking disclosure of idempotency, merge vs overwrite behavior, authorization needs, or effects on running pods.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with a helpful example. No fluff, every element serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters and no output schema, description leaves significant gaps: missing explanation of how 'containers' works, namespace behavior, or return values. Lacks completeness for reliable agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Provides example for 'limits' and 'requests' parameters but does not explain other key parameters (context, resource_type, resource_name, namespace, containers). Schema description coverage is 0%, so description should compensate but falls short.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action (set resource limits and requests) and specific target resource types (deployment, statefulset, daemonset). Distinguishes from sibling tools like k8s_update_resources by focusing on container resource settings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage from mentioning supported resource types, but no explicit guidance on when to use this tool versus alternatives (e.g., k8s_update_resources) 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.

k8s_taint_nodeC

Add a taint to a node. Taints prevent pods without matching tolerations from being scheduled. Effects: NoSchedule (hard), PreferNoSchedule (soft), NoExecute (evict existing pods too).

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
valueNo
effectNoNoSchedule
contextYes
node_nameYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries the burden. Discloses that NoExecute evicts pods, but does not mention idempotency, overwriting behavior, or if node must be scheduled/unscheduled. Missing side effects like potential pod rescheduling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short and front-loaded, but omits critical parameter info. Could include parameter descriptions in the same number of sentences. Efficiency is poor because the space is not used to convey necessary semantics.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given moderate complexity (5 parameters, no output schema, no annotations), the description only covers the 'effect' parameter and general purpose. Missing guidance on context requirements, required parameters, and expected behavior. Incomplete for safe and correct usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, yet description only explains the 'effect' parameter (listing valid values). Key, value, node_name, and context are entirely unexplained. The agent cannot infer appropriate values for 4 out of 5 parameters from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Add a taint to a node' and explains the concept of taints. Differentiates from sibling k8s_untaint_node implicitly by naming, but does not explicitly contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides general use (repel pods without tolerations) but lacks guidance on when to use specific effects, prerequisites (node must exist, context), or when not to use this tool versus alternatives like cordon/drain.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_top_nodesB

Display CPU and memory usage of all nodes in the cluster. Requires metrics-server to be installed. Shows usage alongside capacity.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes

TDQS

B3.4/5.0
Behavior2/5

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 what the tool displays and a prerequisite, but fails to disclose safety (e.g., read-only nature), potential errors if metrics-server is missing, or any side effects. This is insufficient for an agent to gauge behavioral impact.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no extraneous words. The first sentence states the core purpose, the second adds a crucial prerequisite and a detail about the display format. Information is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and one undocumented parameter, the description should provide more detail on output format and parameter usage. It hints at output ('Shows usage alongside capacity') but lacks precision. The prerequisite is helpful, but completeness is moderate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'context' is not described in the schema (0% coverage) nor in the description. The description gives no guidance on its purpose or format, leaving the agent to infer meaning from the tool name alone, which is inadequate for correct invocation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it displays CPU and memory usage of all nodes, distinguishing it from sibling tools like k8s_top_pods which focuses on pod metrics. The verb+resource 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.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions a prerequisite (metrics-server installation), providing context for successful use. While it doesn't explicitly list alternatives or when not to use, the purpose is distinct enough among siblings to avoid confusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_top_podsA

Display CPU and memory usage of pods, broken down by container. Requires metrics-server to be installed. Omit namespace for all namespaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
namespaceNo

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It reveals a dependency (metrics-server) and the breakdown by container. However, it does not mention read-only status, error behavior if metrics-server is missing, or output format. 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, 14 words, no redundant information. Every sentence provides essential information (purpose, prerequisite, usage hint). Highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters and no output schema, the description covers the main functionality, a prerequisite, and a key usage note. It could mention that the output includes CPU/memory per container, but the return format is not specified. Overall sufficient for the complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no parameter descriptions). The description adds meaning for the 'namespace' parameter ('Omit namespace for all namespaces') but does not explain the 'context' parameter (required, likely kubeconfig context). Partial compensation for low coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly uses the verb 'display' with the resource 'CPU and memory usage of pods' and specifies 'broken down by container'. It distinguishes from sibling tools like k8s_top_nodes, so the purpose 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.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states a prerequisite ('Requires metrics-server') and a usage hint ('Omit namespace for all namespaces'). It does not explicitly address when to use or alternatives, but the sibling list shows k8s_top_nodes for nodes, so usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_uncordon_nodeA

Mark a previously cordoned node as schedulable again. New pods can be scheduled on this node after uncordoning.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextYes
node_nameYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist; the description merely states the scheduling effect. It lacks details on side effects, permissions, or state transitions, which is adequate but not informative.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The primary action is front-loaded, making it easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters and no output schema, the description is minimally sufficient but lacks context on how to verify node state before use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

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 ('context' and 'node_name'). The meaning of 'context' is ambiguous without elaboration.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('mark a previously cordoned node as schedulable') and the resource ('node'). It distinguishes from siblings like k8s_cordon_node and k8s_drain_node.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for cordoned nodes but provides no explicit guidance on when to use versus alternatives, nor any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_untaint_nodeB

Remove a taint from a node. Omit effect to remove all taints with the given key.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
effectNo
contextYes
node_nameYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description should disclose behavioral traits but only mentions the key removal behavior. It omits side effects (e.g., pod scheduling impact), required permissions, or return format, making it 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: one sentence with two clauses, front-loaded with the action, and no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 4 parameters, the description is minimal. It lacks return value, error conditions, node state requirements, and permission details, which are critical for a mutation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains the 'effect' parameter behavior (omit to remove all taints with key) and implies 'key' is required, but does not describe 'context' or 'node_name', which are not self-explanatory to new users given 0% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Remove a taint from a node') and distinguishes behavior by specifying that omitting effect removes all taints with that key, differentiating it from sibling k8s_taint_node.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when or when not to use this tool, nor prerequisites or alternatives. The description only implies usage for taint removal, but does not mention exclusions or comparison to other tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

k8s_update_resourcesB

Update CPU/memory requests and limits for a specific container in a deployment, statefulset, or daemonset. Values use Kubernetes notation (e.g., '128Mi', '500m', '1Gi', '2').

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contextYes
containerYes
cpu_limitNo
namespaceYes
cpu_requestNo
memory_limitNo
resource_typeYes
memory_requestNo

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides some transparency by specifying the value notation (Kubernetes notation) and giving examples. However, it does not disclose side effects, permissions required, whether it performs a replace or patch, or what happens when optional parameters are omitted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise with two sentences, no extraneous words, and front-loads the action. It efficiently conveys the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (9 parameters, 5 required, no output schema, no annotations), the description is insufficient. It does not explain return values, how to handle optional parameters, or error scenarios, leaving many gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 adds meaning by explaining that CPU/memory requests and limits are updated and the expected value format. However, it does not describe each parameter individually, such as context, namespace, resource_type, name, container, leaving their roles implicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (Update), the resource (CPU/memory requests and limits for a container), and the target resource types (deployment, statefulset, daemonset). It is specific and informative, but does not explicitly distinguish from the sibling tool k8s_set_resources_for_container, which likely has similar functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 conditions or prerequisites mentioned. The description only states what the tool does without contextual usage advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.1/5.0
Disambiguation3/5

Most tools are distinct, but several pairs like k8s_update_resources and k8s_set_resources_for_container have nearly identical purposes, which could cause confusion. Additionally, k8s_create_ns and k8s_create_resource overlap in creating namespaces.

Naming Consistency2/5

Tool names mix different patterns: some use 'get_' (k8s_get_contexts), others 'list_' (k8s_list_secret), and several are noun-only like k8s_cluster_info or verb-only like k8s_describe. The naming is inconsistent and not predictable.

Tool Count3/5

57 tools is high but justified by Kubernetes' complexity, covering many resource types and operations. However, some redundancy suggests the set could be streamlined, making it borderline too large.

Completeness5/5

The tool set covers nearly all common Kubernetes operations: CRUD for resources, rollout management, scaling, node operations, RBAC, storage, network policies, jobs, and diagnostics. Only niche features like operator management are missing.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables comprehensive Kubernetes cluster management through kubectl operations, Helm chart deployments, pod troubleshooting, and node management. Supports both read-only and full cluster administration capabilities with built-in safety features.
    8,657
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables interaction with Kubernetes clusters through 32 specialized tools for managing resources, deployments, and services. Provides both CLI and web interfaces for real-time Kubernetes operations powered by Google Gemini.
    5
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to interact with Kubernetes clusters through 50 specialized tools for comprehensive cluster management. Supports both local kubectl and remote SSH-based execution for managing pods, deployments, services, and other Kubernetes resources.
    49
    MIT

Latest Blog Posts

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/razvanmacovei/k8s-multicluster-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server