VOOZH about

URL: https://glama.ai/mcp/servers/BenedatLLC/k8stools/schema

⇱ Schema | Kubernetes Tools MCP Server | Glama


Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
get_namespacesA

Return a summary of the namespaces for this Kubernetes cluster, similar to that returned by kubectl get namespace.

Parameters
----------
None
 This function does not take any parameters.

Returns
-------
list of NamespaceSummary
 List of namespace summary objects. Each NamespaceSummary has the following fields:

 name : str
 Name of the namespace.
 status : str
 Status phase of the namespace.
 age : datetime.timedelta
 Age of the namespace (current time minus creation timestamp).
Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list namespaces fails.
get_node_summariesA

Return a summary of the nodes for this Kubernetes cluster, similar to that returned by kubectl get nodes -o wide.

Parameters
----------
None
 This function does not take any parameters.

Returns
-------
list of NodeSummary
 List of node summary objects. Each NodeSummary has the following fields:

 name : str
 Name of the node.
 status : str
 Status of the node (Ready, NotReady, etc.).
 roles : list[str]
 List of roles for the node (e.g., ['control-plane', 'master']).
 age : datetime.timedelta
 Age of the node (current time minus creation timestamp).
 version : str
 Kubernetes version running on the node.
 internal_ip : Optional[str]
 Internal IP address of the node.
 external_ip : Optional[str]
 External IP address of the node (if available).
 os_image : Optional[str]
 Operating system image running on the node.
 kernel_version : Optional[str]
 Kernel version of the node.
 container_runtime : Optional[str]
 Container runtime version on the node.

Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list nodes fails.
get_pod_summariesA
Retrieves a list of PodSummary objects for pods in a given namespace or all namespaces.

Parameters
----------
namespace : Optional[str], default=None
 The specific namespace to list pods from. If None, lists pods from all namespaces.

Returns
-------
list of PodSummary
 A list of PodSummary objects, each providing a summary of a pod's status with the following fields:

 name : str
 Name of the pod.
 namespace : str
 Namespace in which the pod is running.
 total_containers : int
 Total number of containers in the pod.
 ready_containers : int
 Number of containers currently in ready state.
 restarts : int
 Total number of restarts for all containers in the pod.
 last_restart : Optional[datetime.timedelta]
 Time since the container last restart (None if never restarted).
 age : datetime.timedelta
 Age of the pod (current time minus creation timestamp).
 ip : Optional[str]
 Pod IP address (None if not assigned).
 node : Optional[str]
 Name of the node where the pod is running (None if not scheduled).
Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list pods fails.
get_pod_container_statusesA
Get the status for all containers in a specified Kubernetes pod.

Parameters
----------
pod_name : str
 Name of the pod to retrieve container statuses for.
namespace : str, optional
 Namespace of the pod (default is "default").

Returns
-------
list of ContainerStatus
 List of container status objects for the specified pod. Each ContainerStatus has the following fields:

 pod_name : str
 Name of the pod.
 namespace : str
 Namespace of the pod.
 container_name : str
 Name of the container.
 image : str
 Image name.
 ready : bool
 Whether the container is currently passing its readiness check.
 The value will change as readiness probes keep executing.
 restart_count : int
 Number of times the container has restarted.
 started : Optional[bool]
 Started indicates whether the container has finished its postStart
 lifecycle hook and passed its startup probe.
 stop_signal : Optional[str]
 Stop signal for the container.
 state : Optional[ContainerState]
 Current state of the container.
 last_state : Optional[ContainerState]
 Last state of the container.
 volume_mounts : list[VolumeMountStatus]
 Status of volume mounts for the container
 resource_requests : dict[str, str]
 Describes the minimum amount of compute resources required. If Requests
 is omitted for a container, it defaults to Limits if that is explicitly specified,
 otherwise to an implementation-defined value. Requests cannot exceed Limits. 
 resource_limits : dict[str, str]
 Describes the maximum amount of compute resources allowed.
 allocated_resources : dict[str, str]
 Compute resources allocated for this container by the node.

Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to read the pod fails.
get_pod_eventsA
Get events for a specific Kubernetes pod. This is equivalent to the kubectl command:
`kubectl get events -n NAMESPACE --field-selector involvedObject.name=POD_NAME,involvedObject.kind=Pod`

Parameters
----------
pod_name : str
 Name of the pod to retrieve events for.
namespace : str, optional
 Namespace of the pod (default is "default").

Returns
-------
list of EventSummary
 List of events associated with the specified pod. Each EventSummary has the following fields:

 last_seen : Optional[datetime.datetime]
 Timestamp of the last occurrence of the event (if available).
 type : str
 Type of the event.
 reason : str
 Reason for the event.
 object : str
 The object this event applies to.
 message : str
 Message describing the event.
Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list events fails.
get_pod_specA
Retrieves the spec for a given pod in a specific namespace.

Args:
 pod_name (str): The name of the pod.
 namespace (str): The namespace the pod belongs to (defaults to "default").

Returns
-------
dict[str, Any]
 The pod's spec object, containing its desired state. It is converted
 from a V1PodSpec to a dictionary. Key fields include:

 containers : list of kubernetes.client.V1Container
 List of containers belonging to the pod. Each container defines its image,
 ports, environment variables, resource requests/limits, etc.
 init_containers : list of kubernetes.client.V1Container, optional
 List of initialization containers belonging to the pod.
 volumes : list of kubernetes.client.V1Volume, optional
 List of volumes mounted in the pod and the sources available for
 the containers.
 node_selector : dict, optional
 A selector which must be true for the pod to fit on a node.
 Keys and values are strings.
 restart_policy : str
 Restart policy for all containers within the pod.
 Common values are "Always", "OnFailure", "Never".
 service_account_name : str, optional
 Service account name in the namespace that the pod will use to
 access the Kubernetes API.
 dns_policy : str
 DNS policy for the pod. Common values are "ClusterFirst", "Default".
 priority_class_name : str, optional
 If specified, indicates the pod's priority_class via its name.
 node_name : str, optional
 NodeName is a request to schedule this pod onto a specific node.

Raises
------
K8SConfigError
 If unable to initialize the K8S API
K8sApiError
 If the pod is not found, configuration fails, or any other API error occurs.
get_logs_for_pod_and_containerB
Retrieves logs from a Kubernetes pod and container.

Args:
 namespace (str): The namespace of the pod.
 pod_name (str): The name of the pod.
 container_name (str, optional): The name of the container within the pod.
 If None, defaults to the first container.

Returns:
 str, optional: Log content if any found for this pod/container, or None otherwise

Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to fetch logs fails or an unexpected error occurs.
get_deployment_summariesA
Retrieves a list of DeploymentSummary objects for deployments in a given namespace or all namespaces.
Similar to `kubectl get deployements`.

Parameters
----------
namespace : Optional[str], default=None
 The specific namespace to list deployments from. If None, lists deployments from all namespaces.

Returns
-------
list of DeploymentSummary
 A list of DeploymentSummary objects, each providing a summary of a deployment's status with the following fields:

 name : str
 Name of the deployment.
 namespace : str
 Namespace in which the deployment is running.
 total_replicas : int
 Total number of replicas desired for this deployment.
 ready_replicas : int
 Number of replicas that are currently ready.
 up_to_date_replicas : int
 Number of replicas that are up to date.
 available_replicas : int
 Number of replicas that are available.
 age : datetime.timedelta
 Age of the deployment (current time minus creation timestamp).

Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list deployments fails.
get_service_summariesA

Retrieves a list of ServiceSummary objects for services in a given namespace or all namespaces. Similar to kubectl get services.

Parameters
----------
namespace : Optional[str], default=None
 The specific namespace to list services from. If None, lists services from all namespaces.

Returns
-------
list of ServiceSummary
 A list of ServiceSummary objects, each providing a summary of a service's status with the following fields:

 name : str
 Name of the service.
 namespace : str
 Namespace in which the service is running.
 type : str
 Type of the service (ClusterIP, NodePort, LoadBalancer, ExternalName).
 cluster_ip : Optional[str]
 Cluster IP address assigned to the service (None for ExternalName services).
 external_ip : Optional[str]
 External IP address if applicable (for LoadBalancer services).
 ports : list[PortInfo]
 List of ports (and their protocols) exposed by the service.
 age : datetime.timedelta
 Age of the service (current time minus creation timestamp).

Raises
------
K8sConfigError
 If unable to initialize the K8S API.
K8sApiError
 If the API call to list services fails.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/BenedatLLC/k8stools'

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