| name | k8s-browser |
| description | Browser automation for Kubernetes dashboards and web UIs. Use when interacting with Kubernetes Dashboard, Grafana, ArgoCD UI, or other web interfaces. Requires MCP_BROWSER_ENABLED=true. |
| license | Apache-2.0 |
| metadata | {"author":"rohitg00","version":"1.0.0","tools":26,"category":"automation"} |
Browser Automation for Kubernetes
Automate Kubernetes web UIs using kubectl-mcp-server's browser tools (26 tools).
When to Apply
Use this skill when:
- User mentions: "dashboard", "Grafana", "ArgoCD UI", "web interface", "screenshot"
- Operations: navigating K8s dashboards, capturing screenshots, automating web UIs
- Keywords: "browser", "click", "screenshot", "web", "UI automation"
Priority Rules
| Priority | Rule | Impact | Tools |
|---|
| 1 | Enable MCP_BROWSER_ENABLED first | CRITICAL | Environment variable |
| 2 | Open URL before interactions | HIGH | browser_open |
| 3 | Wait for elements before clicking | HIGH | browser_wait_for_selector |
| 4 | Take screenshots for verification | MEDIUM | browser_screenshot |
Quick Reference
| Task | Tool | Example |
|---|
| Open URL | browser_open | browser_open(url) |
| Click element | browser_click | browser_click(selector) |
| Take screenshot | browser_screenshot | browser_screenshot(path) |
| Wait for element | browser_wait_for_selector | browser_wait_for_selector(selector) |
Prerequisites
Enable Browser Tools
export MCP_BROWSER_ENABLED=true
export MCP_BROWSER_PROVIDER=browserbase
export BROWSERBASE_API_KEY=bb_...
Basic Navigation
browser_open(url="http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/")
browser_open_with_headers(
url="https://grafana.example.com",
headers={"Authorization": "Bearer token123"}
)
browser_navigate(url="https://argocd.example.com/applications")
browser_back()
browser_forward()
browser_refresh()
Screenshots and Content
browser_screenshot(path="dashboard.png")
browser_screenshot(path="full-page.png", full_page=True)
browser_content()
browser_title()
browser_url()
Interactions
browser_click(selector="button.submit")
browser_click(selector="text=Deploy")
browser_click(selector="#sync-button")
browser_type(selector="input[name=search]", text="my-deployment")
browser_type(selector=".search-box", text="nginx")
browser_fill(selector="#namespace", text="production")
browser_select(selector="select#cluster", value="prod-cluster")
browser_press(key="Enter")
browser_press(key="Escape")
Waiting
browser_wait_for_selector(selector=".loading", state="hidden")
browser_wait_for_selector(selector=".data-table", state="visible")
browser_wait_for_navigation()
browser_wait_for_load_state(state="networkidle")
Session Management
browser_session_list()
browser_session_switch(session_id="my-session")
browser_close()
Viewport and Device
browser_set_viewport(width=1920, height=1080)
browser_set_viewport(device="iPhone 12")
Kubernetes Dashboard Workflow
browser_open(url="http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/")
browser_click(selector="text=Workloads")
browser_screenshot(path="workloads.png")
browser_type(selector="input[placeholder*=search]", text="nginx")
browser_press(key="Enter")
Grafana Dashboard Workflow
browser_open_with_headers(
url="https://grafana.example.com/d/k8s-cluster",
headers={"Authorization": "Bearer admin-token"}
)
browser_click(selector="button[aria-label='Time picker']")
browser_click(selector="text=Last 1 hour")
browser_screenshot(path="grafana-cluster.png", full_page=True)
ArgoCD UI Workflow
browser_open(url="https://argocd.example.com")
browser_fill(selector="input[name=username]", text="admin")
browser_fill(selector="input[name=password]", text="password")
browser_click(selector="button[type=submit]")
browser_wait_for_selector(selector=".applications-list")
browser_click(selector="text=my-application")
browser_click(selector="button.sync-button")
browser_click(selector="text=Synchronize")
Related Skills