{"name":"io.github.AIops-tools/k8s-aiops","slug":"aiops-tools-k8s-aiops","title":"k8s AIops","description":"Governed Kubernetes ops — 55 MCP tools with audit, budget, undo, risk-tier audit labels.","url":"https://mcp.market/server/aiops-tools-k8s-aiops","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"devtools","tags":["devtools"],"presence":{"score":29,"stars":0,"forks":0,"downloads_week":509,"last_push_at":"2026-09-16T12:53:38.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/AIops-tools/K8s-AIops","website":null,"version":"0.13.3","remotes":[],"packages":[{"registryType":"pypi","identifier":"k8s-aiops","version":"0.13.3","transport":{"type":"stdio"}}],"tools":[{"name":"api_resources","description":"[READ] List available API groups and their versions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cluster_info","description":"[READ] Friendly cluster health summary: server version, node/ns counts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"configmap_get","description":"[READ] Return a configmap's data (keys + values — config, not secrets).","write_action":false,"price_micros":0,"input_schema":null},{"name":"configmap_list","description":"[READ] List configmaps (name, namespace, key count, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"cordon_node","description":"[WRITE][risk=medium] Mark a node unschedulable (no new pods land). Inverse: uncordon_node.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_namespace","description":"[WRITE][risk=medium] Create a namespace. Inverse: delete_namespace.","write_action":true,"price_micros":0,"input_schema":null},{"name":"cronjob_get","description":"[READ] Return detail for a single cronjob by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cronjob_list","description":"[READ] List cronjobs (name, namespace, schedule, suspend, active, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"daemonset_get","description":"[READ] Return detail for a single daemonset by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"daemonset_list","description":"[READ] List daemonsets (name, namespace, desired/ready/available, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"delete_deployment","description":"[WRITE][risk=high] Delete a deployment and its pods. HIGH RISK — no undo.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_job","description":"[WRITE][risk=high] Delete a job and its pods. HIGH RISK — no undo.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_namespace","description":"[WRITE][risk=high] Delete a namespace and EVERYTHING in it. HIGH RISK — no undo.","write_action":true,"price_micros":0,"input_schema":null},{"name":"delete_pod","description":"[WRITE][risk=medium] Delete a pod. No undo — a controller usually recreates it.","write_action":true,"price_micros":0,"input_schema":null},{"name":"deployment_get","description":"[READ] Return detail for a single deployment by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"deployment_list","description":"[READ] List deployments (name, namespace, desired/ready/available, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"drain_node","description":"[WRITE][risk=high] Cordon a node and evict its pods. HIGH RISK — no full undo.","write_action":false,"price_micros":0,"input_schema":null},{"name":"endpoints_list","description":"[READ] List endpoints (name, namespace, ready addresses, ports, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"event_list","description":"[READ] List recent events (type, reason, object, message, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"ingress_get","description":"[READ] Return detail for a single ingress, including path→backend rules.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ingress_list","description":"[READ] List ingresses (name, namespace, class, hosts, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"job_get","description":"[READ] Return detail for a single job by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"job_list","description":"[READ] List jobs (name, namespace, completions, succeeded/failed, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"main","description":"Run the MCP server over stdio.","write_action":true,"price_micros":0,"input_schema":null},{"name":"namespace_list","description":"[READ] List namespaces (name, phase, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"node_describe","description":"[READ] Describe a node: capacity, allocatable, conditions, taints.","write_action":false,"price_micros":0,"input_schema":null},{"name":"node_list","description":"[READ] List cluster nodes (name, status, roles, version, schedulable, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"node_top","description":"[READ] CPU/memory usage per node (requires metrics-server).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_describe","description":"[READ] Describe a pod: status, conditions, container states, recent events.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_get","description":"[READ] Return detail for a single pod by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_health_rca","description":"[READ] Scan pods for CrashLoopBackOff, image-pull failures, OOMKilled, unschedulable Pending pods, and high restart counts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_list","description":"[READ] List pods (name, namespace, phase, ready, restarts, node, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_logs","description":"[READ] Return the most recent log lines for a pod (default 100).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pod_top","description":"[READ] CPU/memory usage per pod (requires metrics-server).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pv_list","description":"[READ] List persistent volumes (name, capacity, status, claim, class, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"pvc_get","description":"[READ] Return detail for a single PVC by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pvc_list","description":"[READ] List persistent volume claims (name, status, capacity, class, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"replicaset_list","description":"[READ] List replicasets (name, namespace, desired/ready, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_history","description":"[READ] List a deployment's rollout revisions (from its replicasets).","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_pause","description":"[WRITE][risk=medium] Pause a deployment's rollout. Inverse: rollout_resume.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_restart_deployment","description":"[WRITE][risk=medium] Trigger a rolling restart of a deployment. No clean undo.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_resume","description":"[WRITE][risk=medium] Resume a paused deployment's rollout. Inverse: rollout_pause.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_status","description":"[READ] Rollout status: desired/updated/available/unavailable + paused.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rollout_undo_deployment","description":"[WRITE][risk=high] Roll a deployment back to a prior revision. HIGH RISK.","write_action":false,"price_micros":0,"input_schema":null},{"name":"scale_deployment","description":"[WRITE][risk=medium] Scale a deployment to ``replicas``. Inverse: restore previous count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"scale_statefulset","description":"[WRITE][risk=medium] Scale a statefulset to ``replicas``. Inverse: restore previous count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"secret_list","description":"[READ] List secrets — names, types, and key NAMES only (values redacted).","write_action":false,"price_micros":0,"input_schema":null},{"name":"service_list","description":"[READ] List services (name, namespace, type, cluster IP, ports).","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_deployment_image","description":"[WRITE][risk=medium] Update a deployment container's image. Inverse: restore previous.","write_action":false,"price_micros":0,"input_schema":null},{"name":"statefulset_get","description":"[READ] Return detail for a single statefulset by name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"statefulset_list","description":"[READ] List statefulsets (name, namespace, desired/ready/current, age).","write_action":false,"price_micros":0,"input_schema":null},{"name":"storageclass_list","description":"[READ] List storage classes (name, provisioner, reclaim policy, default).","write_action":false,"price_micros":0,"input_schema":null},{"name":"uncordon_node","description":"[WRITE][risk=medium] Mark a node schedulable again. Inverse: cordon_node.","write_action":false,"price_micros":0,"input_schema":null},{"name":"undo_apply","description":"[WRITE][risk=medium] Apply a recorded undo by dispatching its inverse tool.","write_action":false,"price_micros":0,"input_schema":null},{"name":"undo_list","description":"[READ] List recorded, not-yet-applied undo tokens (most recent first).","write_action":false,"price_micros":0,"input_schema":null},{"name":"workload_readiness_rca","description":"[READ] Scan Deployments/StatefulSets/DaemonSets for ready-vs-desired shortfalls, zero-ready outages, and rollout-stuck conditions.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-19T19:50:17.426Z","report":{"scannerVersion":"0.1.5","scannedAt":"2026-09-19T19:50:17.361Z","components":{"code":{"score":25,"max":25,"notes":["78 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 3 days ago"]},"identity":{"score":7,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"k8s-aiops","version":"0.13.3","found":true,"weeklyDownloads":509,"license":"MIT","dependencyCount":6,"publishedAt":"2026-09-15T06:03:08.324819Z"}],"repo":{"found":true,"owner":"AIops-tools","repo":"K8s-AIops","archived":false,"pushedAt":"2026-09-16T12:53:38Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/295714335?v=4","ownerCreatedAt":"2026-06-22T02:46:57Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":0,"forks":0,"downloadsWeek":509,"license":"MIT","lastPushAt":"2026-09-16T12:53:38.000Z","score":29}}}},"grade_history":[],"reviews":[]}