Documentation

Tools Ecosystem#

You can use a rich set of built-in tools through Model Context Protocol (MCP) servers, plus add your own custom tools. Two primary MCP servers serve the tools: kagent-tool-server (Kubernetes, Helm, Istio, Cilium, Argo) and kagent-grafana-mcp (Grafana, Prometheus, Loki, Incidents).

kagent-tool-server Tools#

Kubernetes#

The following tools provide comprehensive cluster management.

ToolDescription
k8s_get_resourcesQuery resources, such as pods, deployments, and services.
k8s_describe_resourceGet detailed resource information.
k8s_get_resource_yamlGet YAML representation of a resource.
k8s_get_pod_logsRetrieve pod logs.
k8s_get_eventsGet cluster events.
k8s_get_available_api_resourcesList supported API resources.
k8s_get_cluster_configurationRetrieve cluster configuration.
k8s_check_service_connectivityTest service connectivity.
k8s_execute_commandExecute commands in pods.
k8s_patch_resourcePatch resources with strategic merge.
k8s_label_resourceAdd labels to resources.
k8s_remove_labelRemove labels from resources.
k8s_annotate_resourceAdd annotations to resources.
k8s_remove_annotationRemove annotations from resources.
k8s_delete_resourceDelete resources.
k8s_apply_manifestApply YAML manifests.
k8s_create_resourceCreate a resource from a local file.
k8s_create_resource_from_urlCreate a resource from a URL.
k8s_generate_resourceGenerate YAML for Istio, Gateway API, or Argo resources.
k8s_rolloutManage rollouts (restart, status, history).
k8s_scaleScale a resource (deployment, statefulset, etc.).

Helm#

ToolDescription
helm_list_releasesList installed releases.
helm_get_releaseGet details of a specific release.
helm_upgradeUpgrade a release.
helm_uninstallRemove a release.
helm_repo_addAdd a chart repository.
helm_repo_updateUpdate chart repositories.

Istio#

ToolDescription
istio_proxy_statusCheck proxy synchronization status.
istio_proxy_configInspect proxy configuration.
istio_install_istioInstall Istio.
istio_generate_manifestGenerate installation manifests.
istio_analyze_cluster_configurationAnalyze Istio configuration for issues.
istio_versionGet Istio version info.
istio_remote_clustersManage remote cluster configuration.
istio_waypoint_statusGet waypoint proxy status.
istio_list_waypointsList waypoint proxies.
istio_generate_waypointGenerate waypoint configuration.
istio_apply_waypointApply waypoint configuration.
istio_delete_waypointDelete a waypoint proxy.
istio_ztunnel_configInspect ztunnel configuration.

Argo Rollouts#

ToolDescription
argo_verify_argo_rollouts_controller_installVerify the Argo Rollouts controller is running.
argo_rollouts_listList Argo Rollouts in a namespace.
argo_promote_rolloutPromote a paused rollout.
argo_pause_rolloutPause a rollout.
argo_set_rollout_imageSet the image of a rollout.
argo_check_plugin_logsCheck Argo Rollouts plugin logs.
argo_verify_kubectl_plugin_installVerify the kubectl Argo Rollouts plugin is installed.
argo_verify_gateway_pluginVerify the Argo Rollouts gateway plugin.

Cilium#

The following table shows a subset of Cilium tools. Cilium has 30+ tools available.

ToolDescription
cilium_status_and_versionCheck Cilium status and version.
cilium_install_ciliumInstall Cilium.
cilium_upgrade_ciliumUpgrade Cilium.
cilium_toggle_cluster_meshEnable or disable cluster mesh.
cilium_show_cluster_mesh_statusView cluster mesh status.
cilium_list_bgp_peersView BGP peers.
cilium_list_bgp_routesView BGP routes.
cilium_get_endpoints_listList endpoints.
cilium_get_endpoint_detailsGet endpoint details.
cilium_validate_cilium_network_policiesValidate network policies.
cilium_toggle_hubbleEnable or disable Hubble observability.

Kubescape#

ToolDescription
kubescape_check_healthCheck Kubescape health status.
kubescape_list_vulnerabilitiesList vulnerabilities.
kubescape_get_vulnerability_detailsGet details of a specific vulnerability.
kubescape_list_vulnerability_manifestsList vulnerability manifests.
kubescape_list_configuration_scansList configuration scans.
kubescape_get_configuration_scanGet a specific configuration scan.
kubescape_list_application_profilesList application profiles.
kubescape_get_application_profileGet a specific application profile.
kubescape_list_network_neighborhoodsList network neighborhoods.
kubescape_get_network_neighborhoodGet a specific network neighborhood.

kagent-grafana-mcp Tools#

A separate kagent-grafana-mcp MCP server (RemoteMCPServer) serves tools for Prometheus, Grafana, Loki, and incident management.

Prometheus#

ToolDescription
query_prometheusExecute PromQL queries.
list_prometheus_metric_namesList available metric names.
list_prometheus_metric_metadataGet metric metadata.
list_prometheus_label_namesList available label names.
list_prometheus_label_valuesList values for a specific label.

Grafana#

ToolDescription
search_dashboardsSearch dashboards.
update_dashboardUpdate a dashboard.
get_dashboard_by_uidGet a dashboard by UID.
get_dashboard_panel_queriesGet panel queries from a dashboard.
list_datasourcesList data sources.
get_datasourceGet a data source by name or UID.
alerting_manage_rulesManage alert rules (list, create, update, delete).
alerting_manage_routingManage alerting routing, notification policies, and contact points.

Loki#

ToolDescription
query_loki_logsQuery logs via Loki.
query_loki_statsQuery Loki statistics.
list_loki_label_namesList Loki label names.
list_loki_label_valuesList Loki label values.

Incidents & On-Call#

ToolDescription
list_incidentsList incidents.
get_incidentGet incident details.
create_incidentCreate a new incident.
add_activity_to_incidentAdd activity to an incident.
list_oncall_usersList on-call users.
get_current_oncall_usersGet current on-call users.
list_oncall_schedulesList on-call schedules.

Agent Built-in Tools#

The following tools are automatically available to every agent without any configuration.

ToolDescription
ask_userPose questions to users with optional choices.
SkillsToolDiscover and load skills (Go ADK).
bashExecute shell commands (Python ADK).
read_fileRead file contents with pagination (Python ADK).
write_fileWrite file content (Python ADK).
edit_fileEdit files via string replacement (Python ADK).

Configuring Tools on an Agent#

Single MCP Server#

The following example shows how to configure an agent with a single MCP server.

apiVersion: kagent.dev/v1alpha2
kind: Agent
metadata:
name: k8s-agent
namespace: kagent
spec:
type: Declarative
declarative:
modelConfig: default-model-config
systemMessage: "You manage Kubernetes clusters."
tools:
- type: McpServer
mcpServer:
apiGroup: kagent.dev
name: kagent-tool-server
kind: RemoteMCPServer
toolNames:
- k8s_get_resources
- k8s_describe_resource
- k8s_get_pod_logs
- k8s_get_events

With Tool Approval#

You can require user approval for sensitive tools by adding requireApproval.

tools:
- type: McpServer
mcpServer:
apiGroup: kagent.dev
name: kagent-tool-server
kind: RemoteMCPServer
toolNames:
- k8s_get_resources
- k8s_describe_resource
- k8s_delete_resource
- k8s_apply_manifest
requireApproval: # These tools pause for user approval
- k8s_delete_resource
- k8s_apply_manifest

Agent as Tool (A2A)#

You can use another agent as a tool via the A2A protocol.

tools:
- type: Agent
agent:
name: specialist-agent

Community / Contrib MCP Servers#

You can find additional MCP servers in contrib/tools/.

ServerDescription
GitHub MCP ServerGitHub Copilot MCP server with tools for issues, PRs, repos, actions, and more.
k8sgpt MCP ServerK8sGPT integration for AI-powered Kubernetes diagnostics.
Kagent Lab: Discover kagent and kmcp
Free, on‑demand lab: build custom AI agents with kagent and integrate tools via kmcp on Kubernetes.