K8s operations
Skill ComeOnOliver/skillshub/skills/rohitg00/kubectl-mcp-server/k8s-operations
🧠The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.
npx -y skills add ComeOnOliver/skillshub --skill k8s-operationsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
3.9 KB, as published. Nobody here has run it
kubectl Operations
Execute kubectl commands using kubectl-mcp-server's operations tools.
When to Apply
Use this skill when:
- User mentions: "apply", "patch", "delete", "exec", "scale", "rollout"
- Operations: modifying resources, running commands, scaling workloads
- Keywords: "update", "change", "modify", "run command", "restart"
Priority Rules
| Priority | Rule | Impact | Tools |
|---|---|---|---|
| 1 | Dry run before apply in production | CRITICAL | kubectl_apply(dry_run=True) |
| 2 | Check current state before patching | HIGH | describe_* tools |
| 3 | Avoid force delete unless necessary | HIGH | kubectl_delete |
| 4 | Verify rollout status after changes | MEDIUM | kubectl_rollout_status |
Quick Reference
| Task | Tool | Example |
|---|---|---|
| Apply manifest | kubectl_apply | kubectl_apply(manifest=yaml) |
| Patch resource | kubectl_patch | kubectl_patch(type, name, namespace, patch) |
| Delete resource | kubectl_delete | kubectl_delete(type, name, namespace) |
| Exec command | kubectl_exec | kubectl_exec(pod, namespace, command) |
| Scale deployment | scale_deployment | scale_deployment(name, namespace, replicas) |
Apply Resources
kubectl_apply(manifest="""
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
""")
kubectl_apply(file_path="/path/to/manifest.yaml")
kubectl_apply(manifest="...", dry_run=True)
Patch Resources
kubectl_patch(
resource_type="deployment",
name="nginx",
namespace="default",
patch={"spec": {"replicas": 5}}
)
kubectl_patch(
resource_type="deployment",
name="nginx",
namespace="default",
patch=[{"op": "replace", "path": "/spec/replicas", "value": 5}],
patch_type="json"
)
kubectl_patch(
resource_type="service",
name="my-svc",
namespace="default",
patch={"metadata": {"annotations": {"key": "value"}}},
patch_type="merge"
)
Delete Resources
kubectl_delete(resource_type="pod", name="my-pod", namespace="default")
kubectl_delete(
resource_type="pods",
namespace="default",
label_selector="app=test"
)
kubectl_delete(
resource_type="pod",
name="stuck-pod",
namespace="default",
force=True,
grace_period=0
)
Execute Commands
kubectl_exec(
pod="my-pod",
namespace="default",
command="ls -la /app"
)
kubectl_exec(
pod="my-pod",
namespace="default",
container="sidecar",
command="cat /etc/config/settings.yaml"
)
kubectl_exec(
pod="my-pod",
namespace="default",
command="sh -c 'curl -s localhost:8080/health'"
)
Scale Resources
scale_deployment(name="nginx", namespace="default", replicas=5)
scale_deployment(name="nginx", namespace="default", replicas=0)
kubectl_scale(
resource_type="statefulset",
name="mysql",
namespace="default",
replicas=3
)
Rollout Management
kubectl_rollout_status(
resource_type="deployment",
name="nginx",
namespace="default"
)
kubectl_rollout_history(
resource_type="deployment",
name="nginx",
namespace="default"
)
kubectl_rollout_restart(
resource_type="deployment",
name="nginx",
namespace="default"
)
rollback_deployment(name="nginx", namespace="default", revision=1)
Labels and Annotations
kubectl_label(
resource_type="pod",
name="my-pod",
namespace="default",
labels={"env": "production"}
)
kubectl_annotate(
resource_type="deployment",
name="nginx",
namespace="default",
annotations={"description": "Main web server"}
)
Related Skills
- k8s-deploy - Deployment strategies
- k8s-helm - Helm operations