Skip to main content
Glama
abhijeetka
by abhijeetka

MCP Kubernetes Server

This is an MCP (Model Context Protocol) server for Kubernetes that provides control over Kubernetes clusters through interactions with LLMs.

Overview

This client allows you to perform common Kubernetes operations through MCP tools. It wraps kubectl commands to provide a simple interface for managing Kubernetes resources. The Model Context Protocol (MCP) enables seamless interaction between language models and Kubernetes operations.

Related MCP server: mcp-kubernetes-server

What is MCP?

Model Context Protocol (MCP) is a framework that enables Language Models to interact with external tools and services in a structured way. It provides:

  • A standardized way to expose functionality to language models

  • Context management for operations

  • Tool discovery and documentation

  • Type-safe interactions between models and tools

Usage Examples

  • Create a new deployment for me with name nginx-app and image nginx:latest in the production namespace with 3 replicas.

  • Update the deployment nginx-app to version 1.19 in the production namespace.

  • Scale the deployment nginx-app to 5 replicas in the production namespace.

  • Get me the pods in the production namespace.

  • Get me all namespaces in the cluster.

  • Get me all nodes in the cluster.

  • Get me all services in the cluster.

  • Get me all deployments in the cluster.

  • Get me all jobs in the cluster.

  • Get me all cronjobs in the cluster.

  • Get me all statefulsets in the cluster.

  • Get me all daemonsets in the cluster.

  • What is the current context.

  • list all contexts.

  • switch to context .

  • Get me the logs of pod in the production namespace.

  • Get me the events in the production namespace.

  • annotate pod with key1=value1 in the production namespace.

  • remove annotation key1 from pod in the production namespace.

  • add label key1=value1 to pod in the production namespace.

  • remove label key1 from pod in the production namespace.

  • expose deployment nginx-app in the production namespace on port 80.

  • port-forward pod,deployment,service with name in the production namespace to local port 8080.

  • delete pod, deployment, service, job, cronjob, statefulset, daemonset with name in the production namespace.

Upcoming Features

  • Create cluster role.

  • delete cluster role.

  • create cluster role binding.

  • delete cluster role binding.

  • create namespace.

  • delete namespace.

  • create service account.

  • delete service account.

  • create role.

  • delete role.

  • create role binding.a

  • delete role binding.

LLM Integration

This MCP client is designed to work seamlessly with Large Language Models (LLMs). The functions are decorated with @mcp.tool(), making them accessible to LLMs through the Model Context Protocol framework.

Example LLM Prompts

LLMs can interact with your Kubernetes cluster using natural language. Here are some example prompts:

  • "Create a new nginx deployment with 3 replicas in the production namespace"

  • "Scale the nginx-app deployment to 5 replicas"

  • "Update the image of nginx-app to version 1.19"

The LLM will interpret these natural language requests and call the appropriate MCP functions with the correct parameters.

Benefits of LLM Integration

  1. Natural Language Interface: Manage Kubernetes resources using conversational language

  2. Reduced Command Complexity: No need to remember exact kubectl syntax

  3. Error Prevention: LLMs can validate inputs and provide helpful error messages

  4. Context Awareness: LLMs can maintain context across multiple operations

  5. Structured Interactions: MCP ensures type-safe and documented interactions between LLMs and tools

Requirements

  • Kubernetes cluster access configured via kubectl

  • Python 3.x

  • MCP framework installed and configured

Security Note

When using this client with LLMs, ensure that:

  • Proper access controls are in place for your Kubernetes cluster

  • The MCP server is running in a secure environment

  • API access is properly authenticated and authorized

Usage with Claude Desktop

{
    "mcpServers": {
        "Kubernetes": {
            "command": "uv",
            "args": [
                "--directory",
                "~/mcp/mcp-k8s-server",
                "run",
                "kubernetes.py"
            ]
        }
    }
}

Contributing

We welcome contributions to the MCP Kubernetes Server! If you'd like to contribute:

  1. Fork the repository

  2. Create a new branch for your feature (git checkout -b feature/amazing-feature)

  3. Make your changes

  4. Write or update tests as needed

  5. Commit your changes (git commit -m 'Add some amazing feature')

  6. Push to your branch (git push origin feature/amazing-feature)

  7. Open a Pull Request

For major changes, please open an issue first to discuss what you would like to change.

Installing via Smithery

To install Kubernetes Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @abhijeetka/mcp-k8s-server --client claude

Available Tools

25 tools
annotate_resourceC

Annotate a Kubernetes resource with the specified annotation

Args:
    resource_type: Type of the resource (e.g., pod, service, deployment)
    resource_name: Name of the resource to annotate
    annotation: Annotation to add (e.g., key=value)
    namespace: Namespace of the resource
ParametersJSON Schema
NameRequiredDescriptionDefault
resource_typeYes
resource_nameYes
annotationYes
namespaceNodefault

TDQS

C2.9/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 the tool 'annotates' a resource, implying a mutation, but lacks details on permissions required, whether it's idempotent, error handling (e.g., if resource doesn't exist), or side effects. This is a significant gap for a mutation tool with zero annotation coverage.

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

Conciseness4/5

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

The description is front-loaded with the core purpose in the first sentence, followed by a structured Args section. Each sentence earns its place by clarifying parameters, but it could be more concise by integrating examples directly or omitting redundant formatting like quotes around the description.

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 Kubernetes mutation tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It lacks behavioral context (e.g., safety, errors), output details, and comprehensive usage guidelines. This is inadequate for a tool that modifies cluster state.

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 lists all 4 parameters with brief examples (e.g., 'pod, service, deployment' for resource_type, 'key=value' for annotation), adding meaning beyond the schema's bare titles. However, it doesn't explain parameter interactions or constraints (e.g., namespace defaulting to 'default'), leaving some gaps.

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 ('annotate') and target ('Kubernetes resource'), making the purpose evident. It specifies adding an annotation with key=value format, which distinguishes it from sibling tools like 'label_resource' or 'remove_annotation'. However, it doesn't explicitly differentiate from all siblings, such as 'update_deployment', which might also modify 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?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing proper Kubernetes context or permissions), contrast with 'label_resource' for labeling instead of annotating, or specify scenarios like debugging or metadata addition. Usage is implied but not articulated.

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

create_deploymentB

Create a Kubernetes deployment with specified name, image, namespace and replicas

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
imageYes
namespaceNodefault
replicasNo

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 full burden for behavioral disclosure. It states this is a creation operation but doesn't mention permissions required, whether it's idempotent, what happens on conflicts, or what the typical response looks like. For a Kubernetes deployment creation tool with zero annotation coverage, this leaves significant behavioral gaps.

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

Conciseness5/5

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

The description is a single, efficient sentence that states the core purpose and key parameters without any wasted words. It's appropriately sized and front-loaded with the essential information.

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 Kubernetes deployment creation tool with no annotations, no output schema, and 4 parameters, the description is insufficient. It doesn't cover error conditions, response format, side effects, or integration with other tools. Given the complexity of Kubernetes operations, more context is needed for safe and effective use.

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 substantial value by listing the four key parameters (name, image, namespace, replicas) and their purpose. It doesn't provide format details or constraints, but gives meaningful context beyond the bare schema. The baseline would be lower without this parameter information.

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 'create' and resource 'Kubernetes deployment', and specifies the key parameters (name, image, namespace, replicas). It distinguishes from siblings like 'update_deployment' by focusing on creation, but doesn't explicitly differentiate from other creation tools that might exist in the broader Kubernetes ecosystem.

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 'update_deployment' or other Kubernetes resource creation tools. It doesn't mention prerequisites, dependencies, or typical scenarios for deployment creation versus other operations.

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

delete_resourceB

Delete a Kubernetes resource

Args:
    resource_type: Type of the resource (e.g., pod, service, deployment,configmap,secret,ingress,statefulset,replicaset,damonset,newtorkpolicy,rolebinding,role,serviceaccount,job,cronjob)
    resource_name: Name of the resource to delete
    namespace: Namespace of the resource
ParametersJSON Schema
NameRequiredDescriptionDefault
resource_typeYes
resource_nameYes
namespaceNodefault

TDQS

B3/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 states the destructive action ('Delete') but doesn't mention critical behaviors like whether deletion is permanent, requires confirmation, has side effects (e.g., cascading deletions), or what happens on success/failure. This leaves significant gaps for a destructive 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 appropriately sized and front-loaded, starting with the core purpose followed by parameter explanations. Each sentence adds value, with no redundant information. However, the parameter list could be slightly more structured (e.g., bullet points) for better readability.

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 (destructive operation with 3 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't address behavioral aspects like error handling, return values, or safety considerations, which are crucial for a deletion tool in a Kubernetes context with many sibling alternatives.

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?

The description adds substantial value beyond the input schema, which has 0% description coverage. It explains each parameter's purpose: 'resource_type' with examples (e.g., pod, service), 'resource_name' as the target, and 'namespace' with context. This compensates well for the schema's lack of documentation, though it doesn't cover format details like case sensitivity.

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 ('Delete') and resource ('a Kubernetes resource'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'remove_annotation' or 'remove_label', which might also involve deletion operations on specific resource aspects rather than entire 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?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing appropriate permissions), when not to use it (e.g., for partial deletions), or refer to sibling tools like 'remove_annotation' for more specific operations. The usage context is implied but not explicitly stated.

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

describe_podC

Describe a specific pod

ParametersJSON Schema
NameRequiredDescriptionDefault
pod_nameYes
namespaceNodefault

TDQS

C2.4/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 the full burden of behavioral disclosure. 'Describe a specific pod' implies a read-only operation that returns information, but it doesn't specify what information (e.g., status, configuration, events), whether it requires permissions, if it's safe or has side effects, or how errors are handled. This leaves critical behavioral traits undocumented.

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, efficient sentence ('Describe a specific pod') that is front-loaded and wastes no words. However, it's overly concise to the point of under-specification, as it omits necessary details for a tool with 2 parameters and no annotations, slightly reducing its effectiveness.

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 (Kubernetes pod operations), lack of annotations, 2 parameters with 0% schema coverage, and no output schema, the description is incomplete. It doesn't cover what the tool returns, how to interpret results, error conditions, or dependencies on other tools (e.g., 'get_pods' to find pod names). This makes it inadequate for safe and effective 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?

The input schema has 2 parameters with 0% description coverage, so the schema provides no semantic context. The description adds no meaning beyond the schema—it doesn't explain what 'pod_name' or 'namespace' represent, their formats, or examples. This fails to compensate for the low schema coverage, leaving parameters largely unexplained.

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

Purpose3/5

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

The description 'Describe a specific pod' clearly states the action (describe) and resource (pod), but it's vague about what 'describe' entails (e.g., returns detailed metadata vs. basic info) and doesn't distinguish it from siblings like 'get_pods' (which likely lists pods) or 'get_failing_pods' (which might filter for issues). It avoids tautology by not just restating the name, but lacks specificity.

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 doesn't mention siblings like 'get_pods' for listing pods or 'get_logs' for accessing pod logs, nor does it specify prerequisites (e.g., needing a pod name) or contexts (e.g., for debugging vs. monitoring). Usage is implied only by the tool name and parameters.

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

expose_serviceC

Expose a resource as a new kubernetes service k8s_object can be pod (po), service (svc), replicationcontroller (rc), deployment (deploy), replicaset (rs) Type for this service: ClusterIP, NodePort, LoadBalancer, or ExternalName. Default is 'ClusterIP'.

ParametersJSON Schema
NameRequiredDescriptionDefault
k8s_objectYes
nameYes
namespaceNodefault
typeNoClusterIP
portNo
target_portNo
protocolNoTCP

TDQS

C2.9/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 explains what the tool does and lists parameter options, but doesn't cover critical behavioral aspects like whether this is a read-only or destructive operation, what permissions are required, error handling, or what the output looks like. For a tool that creates/modifies Kubernetes resources, this is a significant gap.

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

Conciseness4/5

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

The description is appropriately concise with three sentences that each serve a purpose: stating the tool's function, explaining the 'k8s_object' parameter, and explaining the 'type' parameter. It's front-loaded with the main purpose and wastes no words, though it could be slightly more structured with bullet points for clarity.

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 Kubernetes service creation tool with 7 parameters, no annotations, and no output schema, the description is incomplete. It lacks information about behavioral traits, usage context, most parameter meanings, and what the tool returns. For a tool that likely modifies cluster state, this level of documentation is inadequate.

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 meaningful context for two parameters: it explains that 'k8s_object' can be various Kubernetes resource types with abbreviations, and that 'type' has specific service type options with a default. However, with 7 total parameters and 0% schema description coverage, it doesn't cover the semantics of 'name', 'namespace', 'port', 'target_port', or 'protocol'. The baseline is 3 since it adds some value but doesn't fully compensate for the coverage gap.

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's purpose: 'Expose a resource as a new kubernetes service'. It specifies the verb ('expose') and resource ('kubernetes service'), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'create_deployment' or 'get_services', which would require a 5.

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 lists valid values for 'k8s_object' and 'type', but doesn't explain scenarios where exposing a service is appropriate compared to other tools like 'create_deployment' or 'get_services'. There's no mention of prerequisites or exclusions.

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

get_cronjobsC

Get all cronjobs in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.9/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 the full burden of behavioral disclosure. It states it 'gets all cronjobs', implying a read-only operation, but doesn't clarify if it requires specific permissions, returns partial/full data, handles errors, or has rate limits. For a tool with zero annotation coverage, this leaves significant behavioral gaps.

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

Conciseness5/5

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

The description is a single, efficient sentence with zero wasted words. It front-loads the core action ('Get all cronjobs') and specifies the scope directly, making it easy to parse. Every part of the sentence contributes essential information.

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 annotations and output schema, the description is incomplete for a tool that likely interacts with a cluster system. It doesn't cover behavioral aspects like authentication needs, error handling, or return format, which are critical for an agent to use it correctly. The minimal parameter info and absence of usage guidelines further 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 mentions 'specified namespace', which aligns with the single parameter in the schema. However, schema description coverage is 0%, so the description adds some semantic context (it's for namespace filtering) but doesn't explain the parameter's purpose, format, or default value beyond what's implied. This meets the baseline for minimal parameter information.

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 ('Get') and resource ('all cronjobs'), making the purpose unambiguous. It specifies the scope ('in the specified namespace'), which distinguishes it from generic list operations. However, it doesn't explicitly differentiate from similar sibling tools like 'get_jobs' or 'get_deployments' beyond the 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 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 doesn't mention prerequisites (e.g., needing cluster access), compare it to similar tools like 'get_jobs', or indicate scenarios where it's preferred over other listing tools. The only implicit context is the namespace parameter, but no explicit usage rules are given.

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

get_current_contextB

Get the current Kubernetes context

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.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 but only states what the tool does without disclosing behavioral traits. It doesn't mention whether this is a read-only operation, what format the output returns, potential errors if no context is configured, or authentication requirements. The description is minimal and lacks behavioral context.

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

Conciseness5/5

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

The description is a single, focused sentence that efficiently communicates the core purpose with zero wasted words. It's appropriately sized for a simple tool and front-loads the essential information.

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 0-parameter tool with no output schema, the description is minimally complete. However, given the Kubernetes domain complexity and lack of annotations, it should ideally explain what a 'context' returns (cluster, namespace, user info) and potential failure modes. The description meets basic requirements but leaves contextual 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?

The tool has 0 parameters with 100% schema description coverage, so the baseline is 4. The description doesn't need to explain parameters since none exist, and it correctly reflects this by not mentioning any 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 verb ('Get') and resource ('current Kubernetes context'), making the purpose immediately understandable. It distinguishes from sibling 'list_contexts' by focusing on the current context rather than listing all contexts. However, it doesn't fully specify what a 'context' entails in Kubernetes terms.

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 should be used when you need to know which Kubernetes context is currently active. It distinguishes from 'list_contexts' by focusing on current vs. all contexts, but doesn't provide explicit guidance on when to choose this over alternatives or mention prerequisites like kubectl configuration.

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

get_daemonsetsC

Get all daemonsets in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.8/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 mentions retrieval ('Get') but doesn't specify whether this requires specific permissions, what format the output takes, if there are rate limits, or how errors are handled. This is inadequate for a read operation with zero annotation coverage.

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

Conciseness5/5

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

The description is a single, efficient sentence with no wasted words. It's appropriately sized for a simple retrieval tool and front-loads the core action and resource.

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 annotations, no output schema, and minimal parameter explanation, the description is incomplete. It doesn't address key contextual aspects like output format, error conditions, or dependencies on other tools (e.g., 'use_context'), leaving significant gaps for agent understanding.

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 schema has 1 parameter with 0% description coverage, and the description only vaguely references 'the specified namespace' without explaining its purpose, format, or default behavior. It adds minimal semantic value beyond what the schema's title ('Namespace') already implies.

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 ('Get') and resource ('all daemonsets') with scope ('in the specified namespace'), making the purpose unambiguous. However, it doesn't differentiate from potential sibling tools like 'get_deployments' or 'get_pods' beyond mentioning daemonsets 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 provides no guidance on when to use this tool versus alternatives like 'get_deployments' or 'get_pods', nor does it mention prerequisites such as namespace permissions or context setup. It simply states what the tool does without contextual usage information.

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

get_deploymentsC

Get all deployments in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.9/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 mentions retrieving deployments but lacks details on permissions needed, rate limits, pagination, or response format. This is inadequate for a tool that likely interacts with a Kubernetes API.

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, efficient sentence with zero wasted words, clearly front-loaded with the core action. It's appropriately sized for a simple retrieval 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 of Kubernetes operations, no annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't cover behavioral aspects like authentication, error handling, or return values, leaving significant 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 specifying that the 'namespace' parameter filters deployments, but doesn't explain the default value 'default' or provide examples. This partial compensation justifies a baseline score.

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 ('Get') and resource ('deployments') with scope ('in the specified namespace'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_daemonsets' or 'get_statefulsets' that also retrieve Kubernetes resources, missing full sibling distinction.

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 'get_pods' or 'get_services', nor any context about prerequisites or exclusions. The description only states what it does without usage context.

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

get_eventsC

Get the events of a specific namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.3/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states what the tool does ('get events') without any information on permissions required, rate limits, whether it's read-only or has side effects, or what the output format might be. This leaves critical behavioral traits unspecified.

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, straightforward sentence that efficiently conveys the core purpose without unnecessary words. It's front-loaded with the main action, making it easy to parse, though it could be slightly more informative without sacrificing brevity.

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 retrieving events (likely in a Kubernetes or similar context), no annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't address key aspects like what events are returned, error handling, or how this tool fits into the broader ecosystem of sibling tools, leaving significant gaps for an AI 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?

The description mentions 'specific namespace' which aligns with the 'namespace' parameter, but with 0% schema description coverage, it doesn't add meaningful semantics. It fails to explain what a namespace is in this context, valid values, or the implications of the default value 'default'. The description doesn't 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.

Purpose3/5

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

The description 'Get the events of a specific namespace' clearly states the action (get) and resource (events), but it's vague about what 'events' are in this context (e.g., Kubernetes events, calendar events, system logs). It doesn't differentiate from siblings like 'get_pods' or 'get_logs', which also retrieve data from namespaces.

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. For example, it doesn't specify if this is for monitoring, debugging, or if other tools like 'get_failing_pods' might be more appropriate in certain scenarios. The description implies usage but offers no explicit context or exclusions.

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

get_failing_podsB

Get all pods with issues in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

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 full burden but offers minimal behavioral context. It implies a read-only operation but doesn't specify what constitutes 'issues' (e.g., crash loops, readiness failures), whether results are filtered or comprehensive, or any performance/rate limit considerations for a Kubernetes query 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 a single, efficient sentence that front-loads the core purpose without unnecessary words. Every element ('Get', 'pods with issues', 'specified namespace') contributes directly to understanding the tool's function.

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 diagnostic tool with no annotations, no output schema, and minimal parameter documentation, the description is insufficient. It doesn't explain what 'issues' means, what data is returned, how results are formatted, or any error conditions—critical gaps for effective agent use.

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 only one parameter (namespace) and 0% schema description coverage, the description compensates by specifying 'in the specified namespace', clarifying the parameter's role in scoping the query. However, it doesn't explain the default value behavior or namespace format requirements.

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 'Get' and the resource 'pods with issues', specifying the scope as 'in the specified namespace'. It distinguishes from generic sibling tools like 'get_pods' by focusing on problematic pods, though it doesn't explicitly contrast with other diagnostic tools like 'get_events' or 'describe_pod'.

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 doesn't mention prerequisites, timing considerations, or how it differs from other troubleshooting tools like 'get_events' for error details or 'describe_pod' for individual pod diagnostics.

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

get_jobsC

Get all jobs in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.9/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 but offers minimal behavioral context. It doesn't disclose whether this is a read-only operation, what permissions are needed, whether results are paginated, or what format the output takes. 'Get all jobs' implies a list operation but lacks details on scope, limits, or error conditions.

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

Conciseness5/5

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

Extremely concise single sentence with zero waste. Front-loaded with the core action ('Get all jobs') followed by the key parameter context. Every word earns its place 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?

For a tool with no annotations, no output schema, and minimal schema documentation, the description is inadequate. It doesn't explain what constitutes a 'job' in this system, what information is returned, or how this tool fits into the broader context of sibling tools like 'get_cronjobs' and 'get_deployments'.

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 only 1 parameter and 0% schema description coverage, the description compensates by explaining the parameter's purpose ('specified namespace'). However, it doesn't clarify what a namespace is in this context, valid values, or the implications of using 'default' versus other namespaces.

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

Purpose3/5

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

The description states the verb ('Get') and resource ('jobs'), but is vague about scope ('all jobs') without clarifying if this includes completed/failed jobs or only active ones. It distinguishes from siblings like 'get_cronjobs' by focusing on jobs, but doesn't explain what a 'job' is in this context.

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 like 'get_deployments' or 'get_cronjobs'. The description mentions 'specified namespace' but doesn't explain when to specify a namespace versus using default, or whether this is for monitoring, debugging, or administrative purposes.

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

get_logsC

Get the logs of a specific pod

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
namespaceNodefault
tailNo

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 carries full burden. It states what the tool does but lacks behavioral details: it doesn't specify if this is a read-only operation, what permissions are required, how logs are formatted (e.g., text, JSON), whether it streams or returns static data, or any rate limits. The description is minimal and doesn't compensate for the 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.

Conciseness5/5

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

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to scan. Every word earns its place, though it may be overly concise given the lack of detail elsewhere.

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 (3 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't explain what logs contain, how they're returned, or parameter usage. For a tool that likely outputs text logs, more context is needed to use it effectively without trial and error.

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. It mentions 'a specific pod', which hints at the 'name' parameter, but doesn't explain the 'namespace' (defaults to 'default') or 'tail' (defaults to 1000) parameters. No additional meaning is provided beyond the schema's titles, leaving key semantics undocumented.

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 'Get' and the resource 'logs of a specific pod', which is specific and actionable. It distinguishes from siblings like get_pods (which lists pods) and describe_pod (which provides pod details), though it doesn't explicitly mention this distinction. The purpose is not vague or tautological.

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 doesn't mention prerequisites (e.g., needing pod name), exclusions, or compare to siblings like get_events (for event logs) or describe_pod (for pod status). Usage is implied by the name but not explicitly stated.

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

get_namespacesB

Get all namespaces in the cluster

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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 states 'Get all namespaces' but doesn't clarify aspects like whether this requires specific permissions, how data is returned (e.g., pagination, format), or any rate limits. This leaves significant gaps for a tool in a Kubernetes context where such details are crucial.

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, efficient sentence with no wasted words, clearly front-loading the core action. It's appropriately sized for a simple tool with no parameters, making it highly concise and well-structured.

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 Kubernetes tools and the lack of annotations and output schema, the description is insufficient. It doesn't explain return values, error handling, or behavioral traits like permissions or data format, leaving the agent with incomplete information for proper invocation.

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?

The input schema has 0 parameters with 100% coverage, meaning no parameters need documentation. The description doesn't add parameter details, which is acceptable here, but it could slightly enhance value by noting the lack of filters or options. Thus, it scores above baseline but not perfectly.

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 ('Get') and resource ('all namespaces in the cluster'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_contexts' or 'get_current_context', which might also retrieve cluster-related information, so it doesn't reach the highest score.

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, such as 'list_contexts' or other 'get_' tools. It lacks context about prerequisites, exclusions, or specific scenarios where this tool is preferred, offering only a basic statement of function.

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

get_nodesB

Get all nodes in the cluster

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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 the full burden of behavioral disclosure. It states 'Get all nodes' but doesn't describe what 'get' entails—whether it returns a list, summary, or detailed view; if it's read-only or has side effects; or any limitations like rate limits or authentication needs. For a tool with zero annotation coverage, this leaves critical behavioral traits unspecified.

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, efficient sentence: 'Get all nodes in the cluster.' It's front-loaded with the core purpose, has zero wasted words, and is appropriately sized for a simple tool. Every word earns its place by specifying the action, resource, and scope.

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 simplicity (0 parameters, no output schema, no annotations), the description is minimal but incomplete. It lacks context on behavioral traits (e.g., read-only nature, return format) and usage guidelines. While it states the purpose clearly, it doesn't provide enough information for an agent to confidently invoke it without guessing about its behavior or when to use it.

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?

The tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter details in the description. The description doesn't add parameter semantics, but that's acceptable here. A baseline of 4 is appropriate as the schema fully documents the lack of parameters, and the description doesn't need to compensate.

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 'Get all nodes in the cluster' clearly states the action (get) and resource (nodes) with scope (all, in the cluster). It distinguishes from siblings like get_pods, get_services, etc., which target different resource types. However, it doesn't explicitly differentiate from tools like get_current_context or get_namespaces that also retrieve cluster information but for different purposes.

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 doesn't mention prerequisites (e.g., cluster access), exclusions (e.g., when not to use it), or compare to siblings like get_failing_pods for troubleshooting. The agent must infer usage from the tool name alone, which is insufficient for optimal selection.

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

get_podsC

Get all pods in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.9/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 but offers minimal behavioral insight. It implies a read operation ('Get') but doesn't disclose if it requires permissions, returns paginated results, or handles errors. For a tool with zero annotation coverage, this leaves critical behavioral traits unspecified.

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, efficient sentence with no wasted words. It front-loads the core action ('Get all pods') and specifies the scope concisely. Every word earns its place, 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 no annotations, 0% schema coverage, and no output schema, the description is incomplete. It lacks details on permissions, response format, error handling, or usage context. For a tool in a Kubernetes environment with many siblings, more guidance is needed to ensure correct agent invocation.

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 context by mentioning 'specified namespace', which clarifies the purpose of the single parameter. However, it doesn't explain the parameter's role beyond this, such as default behavior or valid values. With 1 parameter, the baseline is 4, but the description only partially compensates for the lack of schema details.

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 ('Get') and resource ('all pods'), specifying the scope with 'in the specified namespace'. It distinguishes from siblings like 'describe_pod' (detailed view) and 'get_failing_pods' (filtered subset), though it doesn't explicitly name alternatives. The purpose is specific and actionable.

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. It doesn't mention prerequisites like needing cluster access, compare to 'get_failing_pods' for filtered results, or advise on namespace selection. The description only states what it does, not when to choose it.

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

get_servicesC

Get all services in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

TDQS

C2.9/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 the full burden of behavioral disclosure. It states it 'gets' services, implying a read-only operation, but doesn't specify if it's safe, what data is returned (e.g., list format, metadata), or any constraints like rate limits or authentication needs. For a tool with zero annotation coverage, this leaves significant gaps in understanding its 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?

The description is a single, efficient sentence that front-loads the core purpose ('Get all services') without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function, making it appropriately sized and well-structured.

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 (Kubernetes service retrieval), lack of annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't cover what 'services' entail in this context, return format, error handling, or how it fits with sibling tools like 'get_pods'. For a tool in a rich ecosystem, more context is needed to be fully helpful.

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 minimal meaning beyond the input schema. It mentions 'specified namespace,' which aligns with the 'namespace' parameter in the schema, but with 0% schema description coverage, the schema lacks details on this parameter. The description doesn't explain what a namespace is, default behavior, or valid values, offering little compensation for the coverage gap.

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 ('Get all services') and resource ('services in the specified namespace'), making the purpose immediately understandable. It distinguishes from siblings like 'get_pods' or 'get_deployments' by specifying the resource type. However, it doesn't specify the verb's scope beyond 'all' (e.g., whether it returns active only, includes metadata).

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. The description doesn't mention prerequisites (e.g., needing cluster access), exclusions (e.g., not for filtered views), or related tools like 'expose_service' or 'describe_pod' for different use cases. It's a basic statement without contextual advice.

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

get_statefulsetsC

Get all statefulsets in the specified namespace

ParametersJSON Schema
NameRequiredDescriptionDefault
namespaceNodefault

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 carries the full burden. It states the action ('Get all statefulsets') but lacks behavioral details such as permissions required, output format, pagination, error handling, or rate limits. For a read operation with zero annotation coverage, this is a significant gap in 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?

The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to parse. Every word contributes directly to the tool's 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 complexity (Kubernetes resource query), lack of annotations, no output schema, and low parameter coverage, the description is incomplete. It doesn't address return values, error cases, or operational context, leaving gaps for an AI agent to understand how to use it effectively.

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 schema has 1 parameter with 0% description coverage, and the description adds minimal semantics. It mentions 'specified namespace' but doesn't explain the parameter's role, default value, or format. This doesn't compensate for the low schema coverage, leaving the parameter poorly documented.

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 ('Get') and resource ('all statefulsets'), specifying the scope ('in the specified namespace'). It distinguishes from siblings like get_deployments or get_pods by focusing on statefulsets, though it doesn't explicitly contrast them. The purpose is specific and actionable.

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 doesn't mention prerequisites, such as needing cluster access, or differentiate from similar tools like get_deployments or get_daemonsets. Usage is implied by the name and description alone, with no explicit context or exclusions.

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

label_resourceA

Label a Kubernetes resource with the specified label

Args:
    resource_type: Type of the resource (e.g., pod, service, deployment)
    resource_name: Name of the resource to label
    label: Label to add (e.g., key=value)
    namespace: Namespace of the resource
ParametersJSON Schema
NameRequiredDescriptionDefault
resource_typeYes
resource_nameYes
labelYes
namespaceNodefault

TDQS

A3.7/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 the full burden of behavioral disclosure. While 'label' implies a mutation, the description doesn't specify whether this overwrites existing labels, requires specific permissions, or has side effects like triggering redeployments. It lacks details on error conditions or response 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?

The description is front-loaded with the core purpose in the first sentence, followed by a structured Args section. Every sentence adds value without redundancy, making it efficient and easy to parse.

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 mutation tool with no annotations and no output schema, the description is moderately complete. It covers the basic operation and parameters but lacks details on behavioral traits like idempotency, error handling, or return values. Given the complexity of Kubernetes operations, more context would be beneficial.

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 description coverage is 0%, so the description must compensate. It provides clear semantics for all parameters with examples (e.g., 'key=value' for label, 'pod, service, deployment' for resource_type), adding meaningful context beyond the bare schema. However, it doesn't explain the default namespace behavior mentioned 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?

The description clearly states the verb 'label' and the resource 'Kubernetes resource', making the purpose specific and actionable. It distinguishes from sibling tools like 'remove_label' (which removes labels) and 'annotate_resource' (which adds annotations rather than labels).

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 by specifying it's for labeling Kubernetes resources, but it doesn't explicitly state when to use this tool versus alternatives like 'annotate_resource' or 'remove_label'. No guidance is provided on prerequisites, such as requiring the resource to exist or having appropriate permissions.

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

list_contextsB

List all available Kubernetes contexts

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

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 for behavioral disclosure. It states what the tool does but doesn't describe how it behaves: no information about output format (e.g., list of context names with metadata), whether it requires cluster access permissions, if it's read-only (implied but not stated), or potential errors. For a tool with zero annotation coverage, this leaves significant behavioral gaps.

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

Conciseness5/5

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

The description is a single, clear sentence that efficiently communicates the core functionality. Every word earns its place: 'List' (action), 'all available' (scope), 'Kubernetes contexts' (resource). There's no redundancy, unnecessary elaboration, or structural issues. It's front-loaded with the essential information.

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's simplicity (zero parameters, no output schema, no annotations), the description is adequate but minimal. It states what the tool does but doesn't provide context about typical use cases, relationship to other context operations, or what the output looks like. For a read-only listing tool in a Kubernetes environment, more guidance about when and why to use it would improve completeness.

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?

The tool has zero parameters (schema coverage 100%), so there are no parameters to document. The description appropriately doesn't discuss parameters, focusing instead on the tool's purpose. With no parameters to explain, the description meets the baseline expectation for parameter semantics without needing to compensate for schema gaps.

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 ('List') and resource ('all available Kubernetes contexts'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'get_current_context', but the scope ('all available') provides some implicit distinction. The description avoids tautology by specifying what is being listed rather than just restating the tool name.

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 'get_current_context' (which retrieves only the active context) or 'use_context' (which switches contexts). There's no mention of prerequisites, typical use cases, or when this tool would be preferred over other context-related operations. 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.

port_forwardC

Port forward a resource to the outside world k8s_object can be a pod, deployment or a service and it should be in the format pod/, deployment/, service/

ParametersJSON Schema
NameRequiredDescriptionDefault
k8s_objectYes
nameYes
namespaceNodefault
portNo
target_portNo

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 carries full burden but only states the action without behavioral details. It doesn't disclose if this creates persistent resources, requires specific permissions, has side effects, or how it handles errors—critical for a mutation tool in Kubernetes.

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 with zero waste: first states purpose, second clarifies k8s_object format. Well-structured and front-loaded, though slightly terse given the tool's complexity.

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 5-parameter mutation tool with no annotations or output schema, the description is incomplete. It lacks details on behavioral traits, parameter interactions, return values, and error handling, making it inadequate for safe and effective use by 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%, but the description adds value by explaining k8s_object format with examples (pod/<name>, etc.). However, it doesn't cover other parameters like name, namespace, port, or target_port, leaving significant gaps in parameter understanding.

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 ('port forward') and resource ('a resource to the outside world'), with specific examples of Kubernetes object types. It distinguishes from siblings like expose_service by focusing on port forwarding rather than service exposure, though not explicitly compared.

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 like expose_service or when not to use it. The description implies usage for external access but lacks explicit context or prerequisites for effective tool selection.

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

remove_annotationC

Remove an annotation from a Kubernetes resource

Args:
    resource_type: Type of the resource (e.g., pod, service, deployment)
    resource_name: Name of the resource to remove the annotation from
    annotation_key: Key of the annotation to remove
    namespace: Namespace of the resource
ParametersJSON Schema
NameRequiredDescriptionDefault
resource_typeYes
resource_nameYes
annotation_keyYes
namespaceNodefault

TDQS

C2.9/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 but offers minimal behavioral context. It states this is a removal operation (implying mutation) but doesn't disclose permissions needed, whether changes are reversible, potential side effects, or what happens if the annotation doesn't exist. For a mutation tool with zero annotation coverage, this is inadequate.

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 efficiently structured with a clear purpose statement followed by parameter explanations. Each sentence serves a purpose, though the parameter explanations could be more detailed. The format is clean and easy to parse.

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 mutation tool with 4 parameters, 0% schema coverage, no annotations, and no output schema, the description is insufficient. It covers basic parameter identification but lacks critical information about behavior, permissions, error conditions, and what constitutes successful execution.

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?

With 0% schema description coverage, the description partially compensates by listing all 4 parameters with brief explanations. However, it doesn't provide format details (e.g., namespace defaults to 'default' as shown in schema), validation rules, or examples. The parameter explanations are minimal but cover the basics.

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 ('Remove an annotation') and target ('from a Kubernetes resource'), making the purpose immediately understandable. It distinguishes from sibling 'remove_label' by specifying annotation removal rather than label removal, but doesn't explicitly contrast with other annotation-related tools like 'annotate_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?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'annotate_resource' for adding annotations or 'delete_resource' for complete resource removal, nor does it specify prerequisites or appropriate contexts for annotation removal.

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

remove_labelB

Remove a label from a Kubernetes resource

Args:
    resource_type: Type of the resource (e.g., pod, service, deployment)
    resource_name: Name of the resource to remove the label from
    label_key: Key of the label to remove
    namespace: Namespace of the resource
ParametersJSON Schema
NameRequiredDescriptionDefault
resource_typeYes
resource_nameYes
label_keyYes
namespaceNodefault

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 for behavioral disclosure. It states this is a removal operation (implying mutation) but doesn't mention critical behavioral aspects: whether this requires specific permissions, if it's destructive (removing labels can affect resource selection), rate limits, error conditions, or what happens if the label doesn't exist. The description is minimal beyond stating the basic action.

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

Conciseness5/5

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

The description is perfectly structured and concise. The first sentence clearly states the purpose, followed by a well-organized parameter explanation. Every sentence earns its place with no redundant information. The formatting with clear parameter explanations makes it easy to parse.

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 this is a mutation tool with no annotations and no output schema, the description is incomplete. While it covers the basic action and parameters adequately, it lacks important context about behavioral implications, error handling, and what the tool returns. For a tool that modifies Kubernetes resources, more guidance about permissions and consequences would be valuable.

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?

The description provides a helpful 'Args' section that explains each parameter's purpose, adding significant value beyond the schema which has 0% description coverage. It clarifies that 'namespace' defaults to 'default' (though this is also in the schema), and gives examples for 'resource_type'. However, it doesn't explain parameter constraints or provide examples for 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 verb ('remove') and resource ('label from a Kubernetes resource'), making the purpose immediately understandable. It distinguishes from siblings like 'label_resource' (which adds labels) and 'remove_annotation' (which handles annotations rather than labels). However, it doesn't explicitly mention that this is a mutation operation or contrast with all similar tools.

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 doesn't mention prerequisites (e.g., needing proper permissions), when not to use it (e.g., for bulk operations), or direct alternatives like 'annotate_resource' or 'update_deployment' that might serve similar purposes in different contexts.

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

update_deploymentC

Update a Kubernetes deployment with new replicas count and/or image

Args:
    name: Name of the deployment to update
    namespace: Namespace of the deployment
    replicas: New number of replicas (optional)
    image: New container image (optional)
ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
namespaceNodefault
replicasNo
imageNo

TDQS

C2.9/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 mentions the tool updates a deployment, implying mutation, but fails to describe critical behaviors like required permissions, whether changes are reversible, potential downtime, or error handling. This leaves significant 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.

Conciseness4/5

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

The description is front-loaded with the core purpose in the first sentence, followed by a structured parameter list. It avoids unnecessary fluff, but the parameter section could be more integrated into the narrative rather than a separate block, slightly affecting flow.

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 updating a Kubernetes deployment, no annotations, no output schema, and low schema coverage, the description is incomplete. It lacks details on return values, error cases, side effects, and how it fits with sibling tools, making it inadequate for safe and effective use by 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?

The description adds minimal semantics by listing parameters and noting they are optional, but with 0% schema description coverage, it doesn't compensate adequately. It doesn't explain parameter constraints (e.g., valid image formats, replicas range) or interactions, relying on the schema's basic structure without enhancing understanding.

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 ('Update a Kubernetes deployment') and specifies what can be updated ('new replicas count and/or image'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'create_deployment' or 'label_resource', which would require a 5.

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 'create_deployment' for initial creation or 'label_resource' for other modifications. It lacks context about prerequisites (e.g., deployment must exist) or exclusions, offering only basic parameter info without usage scenarios.

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

use_contextB

Switch to a specific Kubernetes context Args: context_name: The name of the Kubernetes context to switch to

ParametersJSON Schema
NameRequiredDescriptionDefault
context_nameYes

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 but offers minimal behavioral insight. It states the action ('Switch to') implying a state change, but doesn't disclose effects (e.g., whether this affects subsequent commands, if it requires specific permissions, or if it's reversible). More context on operational impact is needed.

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

Conciseness5/5

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

The description is extremely concise and well-structured: a clear purpose statement followed by a parameter explanation. Every sentence earns its place with no redundant information, making it easy to parse.

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's moderate complexity (state-changing operation), lack of annotations, and no output schema, the description is minimally adequate but incomplete. It covers the basic action and parameter, but misses behavioral details like side effects, error conditions, or dependencies on other tools for context discovery.

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?

The description adds meaningful semantics for the single parameter 'context_name', explaining it as 'The name of the Kubernetes context to switch to'. With 0% schema description coverage and only one parameter, this adequately compensates, though it could specify format or source (e.g., from 'list_contexts').

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 ('Switch to') and resource ('a specific Kubernetes context'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_contexts' or 'get_current_context', which prevents a perfect score.

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. It doesn't mention prerequisites (e.g., needing existing contexts), exclusions, or relationships with siblings like 'list_contexts' (to see available contexts) or 'get_current_context' (to check current state).

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
Disambiguation4/5

Most tools have distinct purposes targeting specific Kubernetes resources or operations, with clear boundaries like annotate_resource vs. remove_annotation. However, some overlap exists between get_pods and describe_pod, and expose_service and port_forward could be confused for similar networking tasks, though descriptions help differentiate them.

Naming Consistency4/5

The naming follows a consistent verb_noun pattern throughout, such as get_pods, create_deployment, and delete_resource. Minor deviations include describe_pod (singular noun) and expose_service (which could be named create_service for consistency), but overall the pattern is predictable and readable.

Tool Count3/5

With 25 tools, the count feels heavy for a Kubernetes server, bordering on excessive. While Kubernetes is a complex domain, this many tools may overwhelm agents and could be streamlined, such as by consolidating get_* tools into a single generic get_resource with parameters.

Completeness5/5

The tool set provides comprehensive coverage of Kubernetes operations, including CRUD for deployments, resource management (annotate, label, delete), monitoring (get_logs, get_events), and cluster administration (context switching, namespace listing). No obvious gaps are present for core workflows, ensuring agents can handle most tasks without dead ends.

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
    A Model Context Protocol server that enables AI assistants to interact with Kubernetes clusters through natural language, supporting core Kubernetes operations, monitoring, security, and diagnostics.
    94
    956
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that enables AI assistants to interact with Kubernetes clusters by translating natural language into kubectl and Helm operations. It allows users to query, manage, and diagnose Kubernetes resources and cluster states through a seamless integration.
    20
    Apache 2.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    A lightweight MCP server that enables natural language interaction with Kubernetes clusters, allowing management of pods, deployments, namespaces, and cluster resources through conversational queries or API endpoints.
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    An Model Context Protocol server that lets language models directly manage and visualize Kubernetes clusters through safe, high-level operational tools.
    1

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/abhijeetka/mcp-k8s-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server