ClawSkills logoClawSkills

Kubernetes Skills

Browser automation for Kubernetes dashboards and web UIs. Use when interacting with Kubernetes Dashboard, Grafana, ArgoCD UI, or other web interfaces. Requires

Introduction

# Browser Automation for Kubernetes

Automate Kubernetes web UIs using kubectl-mcp-server's browser tools (26 tools).

## Enable Browser Tools

```bash export MCP_BROWSER_ENABLED=true

# Optional: Cloud provider export MCP_BROWSER_PROVIDER=browserbase # or browseruse export BROWSERBASE_API_KEY=bb_... ```

## Basic Navigation

```python # Open URL browser_open(url="http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/")

# Open with auth headers browser_open_with_headers( url="https://grafana.example.com", headers={"Authorization": "Bearer token123"} )

# Navigate browser_navigate(url="https://argocd.example.com/applications")

# Go back/forward browser_back() browser_forward()

# Refresh browser_refresh() ```

## Screenshots and Content

```python # Take screenshot browser_screenshot(path="dashboard.png")

# Full page screenshot browser_screenshot(path="full-page.png", full_page=True)

# Get page content browser_content()

# Get page title browser_title()

# Get current URL browser_url() ```

## Interactions

```python # Click element browser_click(selector="button.submit") browser_click(selector="text=Deploy") browser_click(selector="#sync-button")

# Type text browser_type(selector="input[name=search]", text="my-deployment") browser_type(selector=".search-box", text="nginx")

# Fill form browser_fill(selector="#namespace", text="production")

# Select dropdown browser_select(selector="select#cluster", value="prod-cluster")

# Press key browser_press(key="Enter") browser_press(key="Escape") ```

## Waiting

```python # Wait for element browser_wait_for_selector(selector=".loading", state="hidden") browser_wait_for_selector(selector=".data-table", state="visible")

# Wait for navigation browser_wait_for_navigation()

# Wait for network idle browser_wait_for_load_state(state="networkidle") ```

## Session Management

```python # List sessions browser_session_list()

# Switch session browser_session_switch(session_id="my-session")

# Close browser browser_close() ```

## Viewport and Device

```python # Set viewport size browser_set_viewport(width=1920, height=1080)

# Emulate device browser_set_viewport(device="iPhone 12") ```

## Kubernetes Dashboard Workflow

```python # 1. Start kubectl proxy # kubectl proxy &

# 2. Open dashboard browser_open(url="http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/")

# 3. Navigate to workloads browser_click(selector="text=Workloads")

# 4. Take screenshot browser_screenshot(path="workloads.png")

# 5. Search for deployment browser_type(selector="input[placeholder*=search]", text="nginx") browser_press(key="Enter") ```

## Grafana Dashboard Workflow

```python # 1. Open Grafana browser_open_with_headers( url="https://grafana.example.com/d/k8s-cluster", headers={"Authorization": "Bearer admin-token"} )

# 2. Set time range browser_click(selector="button[aria-label='Time picker']") browser_click(selector="text=Last 1 hour")

# 3. Screenshot dashboard browser_screenshot(path="grafana-cluster.png", full_page=True) ```

## ArgoCD UI Workflow

```python # 1. Open ArgoCD browser_open(url="https://argocd.example.com")

# 2. Login browser_fill(selector="input[name=username]", text="admin") browser_fill(selector="input[name=password]", text="password") browser_click(selector="button[type=submit]")

# 3. Navigate to app browser_wait_for_selector(selector=".applications-list") browser_click(selector="text=my-application")

# 4. Sync application browser_click(selector="button.sync-button") browser_click(selector="text=Synchronize") ```

## Related Skills

- [k8s-gitops](../k8s-gitops/SKILL.md) - ArgoCD CLI tools - [k8s-diagnostics](../k8s-diagnostics/SKILL.md) - Cluster analysis

More Products