k8s AIops
Governed Kubernetes ops — 55 MCP tools with audit, budget, undo, risk-tier audit labels.
Connector by AIops-tools · GitHub account verified by the MCP Registry
Install
Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.
npx agentmarket install connector/aiops-tools-k8s-aiops
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.
- Tools
- 39 read · 12 write · 4 delete
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Tools by what they do 55
Read from the source code; the running server may list different tools.
Read 39 · Look things up without changing anything.
api_resourcescluster_infoconfigmap_getconfigmap_listcronjob_getcronjob_listdaemonset_getdaemonset_listdeployment_getdeployment_listendpoints_listevent_list
Show 27 more tools
ingress_getingress_listjob_getjob_listnamespace_listnode_describenode_listnode_toppod_describepod_getpod_health_rcapod_listpod_logspod_toppv_listpvc_getpvc_listreplicaset_listrollout_historyrollout_statussecret_listservice_liststatefulset_getstatefulset_liststorageclass_listundo_listworkload_readiness_rca
Write 12 · Create, change, send or run things.
cordon_nodecreate_namespacedrain_noderollout_pauserollout_restart_deploymentrollout_resumerollout_undo_deploymentscale_deploymentscale_statefulsetset_deployment_imageuncordon_nodeundo_apply
Delete 4 · Delete, drop, revoke or wipe things.
delete_deploymentdelete_jobdelete_namespacedelete_pod
Network hosts it talks to 3
anthropic.com· found in codegithub.com· found in codeglama.ai· found in code
Files it touches
~/.kube/config- Your home directory (~)
~/.k8s-aiops~/.k8s-aiops/audit.db~/.k8s-aiops/config.yaml~/.k8s-aiops/undo.db
Tools (55)
Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].
api_resources[READ] List available API groups and their versions. Args: target: k8s target name from config; omit to use the default.
cluster_info[READ] Friendly cluster health summary: server version, node/ns counts. Args: target: k8s target name from config; omit to use the default.
configmap_get[READ] Return a configmap's data (keys + values — config, not secrets). Args: name: ConfigMap name (see configmap_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
configmap_list[READ] List configmaps (name, namespace, key count, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
cordon_node[WRITE][risk=medium] Mark a node unschedulable (no new pods land). Inverse: uncordon_node. Pass dry_run=True to preview without cordoning. Args: name: Node name (see node_list). dry_run: If True, preview without cordoning. target: k8s target name from config.
create_namespace[WRITE][risk=medium] Create a namespace. Inverse: delete_namespace. Pass dry_run=True to preview without creating. Args: name: Namespace name to create. dry_run: If True, preview without creating. target: k8s target name from config.
cronjob_get[READ] Return detail for a single cronjob by name. Args: name: CronJob name (see cronjob_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
cronjob_list[READ] List cronjobs (name, namespace, schedule, suspend, active, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
daemonset_get[READ] Return detail for a single daemonset by name. Args: name: DaemonSet name (see daemonset_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
daemonset_list[READ] List daemonsets (name, namespace, desired/ready/available, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
delete_deployment[WRITE][risk=high] Delete a deployment and its pods. HIGH RISK — no undo. Pass dry_run=True to preview without deleting. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without deleting. target: k8s target name from config.
delete_job[WRITE][risk=high] Delete a job and its pods. HIGH RISK — no undo. Pass dry_run=True to preview without deleting. Args: name: Job name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without deleting. target: k8s target name from config.
delete_namespace[WRITE][risk=high] Delete a namespace and EVERYTHING in it. HIGH RISK — no undo. Pass dry_run=True to preview without deleting. Two namespaces are refused. The cluster's control-plane namespaces (kube-system, kube-public, kube-node-lease) need confirm=True — deleting one takes DNS and pod networking with it. The namespace holding this target's own ServiceAccount credential is refused outright and confirm does NOT override it: that delete revokes the credential it is running on. Both refusals are raised on the dry_run path too, so a preview never shows a green wouldDelete for a delete that wo…
delete_pod[WRITE][risk=medium] Delete a pod. No undo — a controller usually recreates it. Pass dry_run=True to preview without deleting. Args: name: Pod name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without deleting. target: k8s target name from config.
deployment_get[READ] Return detail for a single deployment by name. Args: name: Deployment name (see deployment_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
Show 40 more tools
deployment_list[READ] List deployments (name, namespace, desired/ready/available, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
drain_node[WRITE][risk=high] Cordon a node and evict its pods. HIGH RISK — no full undo. DaemonSet-managed and mirror pods are skipped (like ``kubectl drain``). The cordon is reversible (uncordon_node); the evictions are not. Pass dry_run=True to preview without draining. Args: name: Node name (see node_list). dry_run: If True, preview without cordoning or evicting. target: k8s target name from config.
endpoints_list[READ] List endpoints (name, namespace, ready addresses, ports, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
event_list[READ] List recent events (type, reason, object, message, age). Useful for diagnosing why a pod is not starting (FailedScheduling, etc.). Returns {"events": [...], "returned": N, "limit": L, "truncated": bool}. When ``truncated`` is true there are MORE events than shown — re-run with a higher ``limit`` instead of reporting the shown set as complete. Args: namespace: Namespace; omit for all namespaces. limit: Maximum number of events to return. target: k8s target name from config.
ingress_get[READ] Return detail for a single ingress, including path→backend rules. Args: name: Ingress name (see ingress_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
ingress_list[READ] List ingresses (name, namespace, class, hosts, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
job_get[READ] Return detail for a single job by name. Args: name: Job name (see job_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
job_list[READ] List jobs (name, namespace, completions, succeeded/failed, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
namespace_list[READ] List namespaces (name, phase, age). Args: target: k8s target name from config; omit to use the default.
node_describe[READ] Describe a node: capacity, allocatable, conditions, taints. Args: name: Node name (see node_list). target: k8s target name from config.
node_list[READ] List cluster nodes (name, status, roles, version, schedulable, age). Args: target: k8s target name from config; omit to use the default.
node_top[READ] CPU/memory usage per node (requires metrics-server). Returns ``available: False`` with a clear message when metrics-server is not installed. Args: target: k8s target name from config; omit to use the default.
pod_describe[READ] Describe a pod: status, conditions, container states, recent events. The fastest single call to diagnose why a pod is not Ready (CrashLoopBackOff, ImagePullBackOff, scheduling failures). Args: name: Pod name (see pod_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
pod_get[READ] Return detail for a single pod by name. Args: name: Pod name (see pod_list). namespace: Namespace; omit to use the target's default namespace. target: k8s target name from config.
pod_health_rca[READ] Scan pods for CrashLoopBackOff, image-pull failures, OOMKilled, unschedulable Pending pods, and high restart counts. Returns worst-first findings, each citing the reason string / restart count that tripped it plus a concrete kubectl action. Omit namespace to scan all. Args: namespace: Namespace to scope to; omit for all namespaces. label_selector: Optional label selector, e.g. "app=web". target: k8s target name from config; omit to use the default.
pod_list[READ] List pods (name, namespace, phase, ready, restarts, node, age). Omit namespace to list across all namespaces. Use pod_get for full detail. Args: namespace: Namespace to scope to; omit for all namespaces. label_selector: Optional label selector, e.g. "app=web". target: k8s target name from config; omit to use the default.
pod_logs[READ] Return the most recent log lines for a pod (default 100). Args: name: Pod name. namespace: Namespace; omit for the target's default namespace. tail_lines: Number of trailing log lines to return. container: Container name (required only for multi-container pods). target: k8s target name from config.
pod_top[READ] CPU/memory usage per pod (requires metrics-server). Returns ``available: False`` with a clear message when metrics-server is not installed. Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
pv_list[READ] List persistent volumes (name, capacity, status, claim, class, age). Args: target: k8s target name from config; omit to use the default.
pvc_get[READ] Return detail for a single PVC by name. Args: name: PVC name (see pvc_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
pvc_list[READ] List persistent volume claims (name, status, capacity, class, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
replicaset_list[READ] List replicasets (name, namespace, desired/ready, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
rollout_history[READ] List a deployment's rollout revisions (from its replicasets). Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
rollout_pause[WRITE][risk=medium] Pause a deployment's rollout. Inverse: rollout_resume. Pass dry_run=True to preview without pausing. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without pausing. target: k8s target name from config.
rollout_restart_deployment[WRITE][risk=medium] Trigger a rolling restart of a deployment. No clean undo. Pass dry_run=True to preview without restarting. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without restarting. target: k8s target name from config.
rollout_resume[WRITE][risk=medium] Resume a paused deployment's rollout. Inverse: rollout_pause. Pass dry_run=True to preview without resuming. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without resuming. target: k8s target name from config.
rollout_status[READ] Rollout status: desired/updated/available/unavailable + paused. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
rollout_undo_deployment[WRITE][risk=high] Roll a deployment back to a prior revision. HIGH RISK. Defaults to the immediately previous revision. No clean automatic inverse — re-deploy the intended image/revision to move forward again. Pass dry_run=True to preview without rolling back. Args: name: Deployment name. namespace: Namespace; omit for the target's default namespace. to_revision: Specific revision to roll back to (0 = previous). dry_run: If True, preview without rolling back. target: k8s target name from config.
scale_deployment[WRITE][risk=medium] Scale a deployment to ``replicas``. Inverse: restore previous count. Returns ``previous_replicas`` so the change can be undone. Pass dry_run=True to preview without changing anything (no undo is recorded for a preview). Args: name: Deployment name. replicas: Desired replica count. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without scaling. target: k8s target name from config.
scale_statefulset[WRITE][risk=medium] Scale a statefulset to ``replicas``. Inverse: restore previous count. Pass dry_run=True to preview without scaling (no undo is recorded for a preview). Args: name: StatefulSet name. replicas: Desired replica count. namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without scaling. target: k8s target name from config.
secret_list[READ] List secrets — names, types, and key NAMES only (values redacted). Secret VALUES are never returned. Use this to discover which secrets and keys exist, then mount/reference them via the kubeconfig-authorized workload. Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
service_list[READ] List services (name, namespace, type, cluster IP, ports). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
set_deployment_image[WRITE][risk=medium] Update a deployment container's image. Inverse: restore previous. Returns ``previous_image`` so the change can be undone. Pass dry_run=True to preview without changing anything (no undo is recorded for a preview). Args: name: Deployment name. container: Container name within the pod template (see deployment_get). image: New image reference (e.g. "nginx:1.27"). namespace: Namespace; omit for the target's default namespace. dry_run: If True, preview without updating the image. target: k8s target name from config.
statefulset_get[READ] Return detail for a single statefulset by name. Args: name: StatefulSet name (see statefulset_list). namespace: Namespace; omit for the target's default namespace. target: k8s target name from config.
statefulset_list[READ] List statefulsets (name, namespace, desired/ready/current, age). Args: namespace: Namespace; omit for all namespaces. target: k8s target name from config.
storageclass_list[READ] List storage classes (name, provisioner, reclaim policy, default). Args: target: k8s target name from config; omit to use the default.
uncordon_node[WRITE][risk=medium] Mark a node schedulable again. Inverse: cordon_node. Pass dry_run=True to preview without uncordoning. Args: name: Node name (see node_list). dry_run: If True, preview without uncordoning. target: k8s target name from config.
undo_apply[WRITE][risk=medium] Apply a recorded undo by dispatching its inverse tool. The inverse runs through its own governed tool, so it is audited and labelled with its own risk tier there. Pass dry_run=True to preview the inverse call without executing it. A token can only be applied once. Args: undo_id: The undoId from undo_list (or an ``_undo_id`` in a write result). dry_run: If True, preview the inverse tool + params without running it. target: Passed through to the inverse tool when it accepts a target.
undo_list[READ] List recorded, not-yet-applied undo tokens (most recent first). Each entry names the original tool, the inverse tool that ``undo_apply`` would run, and a human note. Use the ``undoId`` with ``undo_apply``. Returns {"undos": [...], "returned": N, "limit": L, "truncated": bool}. ``truncated`` is *measured* (one extra row is fetched), not guessed from a length coincidence: when it is true there are MORE tokens than shown, so re-run with a higher ``limit`` rather than reporting the list as complete. Each entry carries ``effectVerified``. False means the original write lost its response, …
workload_readiness_rca[READ] Scan Deployments/StatefulSets/DaemonSets for ready-vs-desired shortfalls, zero-ready outages, and rollout-stuck conditions. Returns worst-first findings, each citing the measured ready/desired ratio or the failing condition reason plus a concrete kubectl action. Args: namespace: Namespace to scope to; omit for all namespaces. target: k8s target name from config; omit to use the default.
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Weekly downloads
- 198
- Last commit
- Oct 15, 2026 (13 days ago)
- Last release
- Oct 15, 2026 (13 days ago)
- Last package publish
- Oct 15, 2026 (13 days ago)
From GitHub (fetched Oct 24, 2026) and the package registry.
Details
- Registry name
io.github.AIops-tools/k8s-aiops- Version
- 0.15.0
- Auth
- No auth
- Packages
- pypi k8s-aiops
- License
- MIT
- Repository
- github.com/AIops-tools/K8s-AIops
- First seen
- Oct 24, 2026
- Last checked
- Oct 25, 2026
More from AIops-tools
- 0.569score
OT AIops
AIops-tools
Governed OT tap (57 tools): OPC-UA/Modbus/S7/MC/MTConnect/MQTT/EtherNet-IP/EtherCAT.
ConnectorAFreshness: ALocal★ 7↓ 81/wkClaude Code +5 - 0.567score
Proxmox AIops
AIops-tools
Governed Proxmox VE VM/container ops — 43 MCP tools with audit, budget, undo & risk-tier guards.
ConnectorAFreshness: ALocal★ 3↓ 221/wkClaude Code +5 - 0.558score
Firewall AIops
AIops-tools
Governed OPNsense + pfSense firewall ops: rules, NAT, VPN, DHCP, RCA.
ConnectorAFreshness: ALocal★ 1↓ 231/wkClaude Code +5 - 0.550score
Veeam AIops
AIops-tools
Governed Veeam Backup & Replication ops — 27 MCP tools with audit, budget, undo guards.
ConnectorAFreshness: ALocal↓ 267/wkClaude Code +5 - 0.550score
Proxy AIops
AIops-tools
Governed Traefik + Caddy + HAProxy ops: routes, upstreams, certs, 5xx RCA.
ConnectorAFreshness: ALocal↓ 250/wkClaude Code +5 - 0.550score
Identity AIops
AIops-tools
Governed Keycloak + authentik identity ops: users, events, clients, MFA, RCA.
ConnectorAFreshness: ALocal↓ 242/wkClaude Code +5
Cite this page
k8s AIops MCP server. Agent Mart. https://agentmart.dev/connectors/aiops-tools-k8s-aiops (last updated 2026-10-25)