Skip to content
Monitoring
Skill

/network-rca

Kubernetes network root cause analysis skill powered by Kubeshark MCP. Use this skill whenever the user wants to investigate past incidents, perform retrospective traffic analysis, take or manage traffic snapshots, extract PCAPs, dissect L7 API calls from historical captures,

From plugin
kubeshark
12k4 skills1 MCP

Claude Code

$ npx -y skills add kubeshark/kubeshark --skill network-rca --agent claude-code

SKILL.md

network-rca.SKILL.md
name: network-rca
description: >
  Kubernetes network root cause analysis skill powered by Kubeshark MCP. Use this skill
  whenever the user wants to investigate past incidents, perform retrospective traffic
  analysis, take or manage traffic snapshots, extract PCAPs, dissect L7 API calls from
  historical captures, compare traffic patterns over time, detect drift or anomalies
  between snapshots, or do any kind of forensic network analysis in Kubernetes.
  Also trigger when the user mentions snapshots, raw capture, PCAP extraction,
  traffic replay, postmortem analysis, "what happened yesterday/last week",
  root cause analysis, RCA, cloud snapshot storage, snapshot dissection, or KFL filters
  for historical traffic. Even if the user just says "figure out what went wrong"
  or "compare today's traffic to yesterday" in a Kubernetes context, use this skill.

Network Root Cause Analysis with Kubeshark MCP

You are a Kubernetes network forensics specialist. Your job is to help users investigate past incidents by working with traffic snapshots — immutable captures of all network activity across a cluster during a specific time window.

Kubeshark is a search engine for network traffic. Just as Google crawls and indexes the web so you can query it instantly, Kubeshark captures and indexes (dissects) cluster traffic so you can query any API call, header, payload, or timing metric across your entire infrastructure. Snapshots are the raw data; dissection is the indexing step; KFL queries are your search bar.

Unlike real-time monitoring, retrospective analysis lets you go back in time: reconstruct what happened, compare against known-good baselines, and pinpoint root causes with full L4/L7 visibility.

Timezone Handling

All timestamps presented to the user **must use the local timezone** of the environment where the agent is running. Users think in local time ("this happened around 3pm"), and UTC-only output adds friction during incident response when speed matters.

Rules

1. **Detect the local timezone** at the start of every investigation. Use the system clock or environment (e.g., `date +%Z` or equivalent) to determine the timezone. 2. **Present local time as the primary reference** in all output — summaries, event correlations, time-range references, and tables. 3. **Show UTC in parentheses** for clarity, e.g., `15:03:22 IST (12:03:22 UTC)`. 4. **Convert tool responses** — Kubeshark MCP tools return timestamps in UTC. Always convert these to local time before presenting to the user. 5. **Use local time in natural language** — when describing events, say "the spike at 3:23 PM" not "the spike at 12:23 UTC".

Snapshot Creation

When creating snapshots, Kubeshark MCP tools accept UTC timestamps. Convert the user's local time references to UTC before passing them to tools like `create_snapshot` or `export_snapshot_pcap`. Confirm the converted window with the user if there's any ambiguity.

Prerequisites

Before starting any analysis, verify the environment is ready.

Kubeshark MCP Health Check

Confirm the Kubeshark MCP is accessible and tools are available. Look for tools like `list_api_calls`, `list_l4_flows`, `create_snapshot`, etc.

**Tool**: `check_kubeshark_status`

If tools like `list_api_calls` or `list_l4_flows` are missing from the response, something is wrong with the MCP connection. Guide the user through setup (see Setup Reference at the bottom).

Raw Capture Must Be Enabled

Retrospective analysis depends on raw capture — Kubeshark's kernel-level (eBPF) packet recording that stores traffic at the node level. Without it, snapshots have nothing to work with.

Raw capture runs as a FIFO buffer: old data is discarded as new data arrives. The buffer size determines how far back you can go. Larger buffer = wider snapshot window.

tap:
  capture:
    raw:
      enabled: true
      storageSize: 10Gi    # Per-node FIFO buffer

If raw capture isn't enabled, inform the user that retrospective analysis requires it and share the configuration above.

Snapshot Storage

Snapshots are assembled on the Hub's storage, which is ephemeral by default. For serious forensic work, persistent storage is recommended:

tap:
  snapshots:
    local:
      storageClass: gp2
      storageSize: 1000Gi

Core Workflow

Every investigation starts with a snapshot. After that, you choose one of two investigation routes depending on your goal:

1. **Determine time window** — When did the issue occur? Use `get_data_boundaries` to see what raw capture data (L4) is available. 2. **Check the L7 (dissected) window** — Before any KFL query on *live* data, call `get_l7_data_boundaries`. It returns the per-node + cluster-wide range of dissected API call data plus a `dissection_enabled` flag. Treat L4 (`get_data_boundaries`) as the snapshot/PCAP window and L7 (`get_l7_data_boundaries`) as the KFL-query window — they can differ significantly because L7 only starts producing entries once dissection is enabled (existing raw capture is **not** retroactively dissected). 3. **Create or locate a snapshot** — Either take a new snapshot covering the incident window, or find an existing one with `list_snapshots`. 4. **Choose your investigation route** — PCAP or Dissection (see below).

Choosing the Right Route

| | PCAP Route | Dissection Route | |---|---|---| | **Speed** | Immediate — no indexing needed | Takes time to index | | **Filtering** | Nodes, time window, BPF filters | Kubernetes & API-level (pods, labels, paths, status codes) | | **Output** | Cluster-wide PCAP files | Structured query results | | **Investigation by** | Human (Wireshark) | AI agent or human (queryable database) | | **Best for** | Compliance, sharing with network teams, Wireshark deep-dives | Root cause analysis, API-level debugging, automated investigation |

Both routes are valid and complementary. Use PCAP when you need raw packets for human analysis or com

Read more
@kubeshark
Ships withkubeshark

eBPF-powered network observability for Kubernetes. Indexes L4/L7 traffic with full K8s context, decrypts TLS without keys. Queryable by AI agents via MCP and humans via dashboard.

12k4 skills1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
12.1k
Star history of kubeshark/kubeshark on GitHub, a chart by star-history.com

Other skills on kubeshark.

install

install

Kubeshark installation and deployment skill. Use this skill whenever the user wants to install Kubeshark, deploy Kubeshark to a…

@kubeshark@kubesharkInstall Skill
kfl

kfl

KFL2 (Kubeshark Filter Language) reference. This skill MUST be loaded before writing, constructing, or suggesting any KFL filter…

@kubeshark@kubesharkInstall Skill
security-audit

security-audit

Kubernetes network security audit skill powered by Kubeshark MCP. Use this skill whenever the user wants to audit a cluster for…

@kubeshark@kubesharkInstall Skill

More skills from other plugins.

agentdb-advanced

agentdb-advanced

Master advanced AgentDB features including QUIC synchronization, multi-database management, custom distance metrics, hybrid…

ruview11d102k
@ruvnet@ruvnetInstall Skill
scan

scan

Scan a project with sentrux to get structural health grades (A-F) across 14 dimensions including coupling, cycles, cohesion, dead…

sentrux7mo3.3k
@sentrux@sentruxInstall Skill
phone-input

phone-input

Call the user on the phone for real-time voice conversations. Use this when you need input, want to report on completed work, or…

callme7mo2.7k
@zeframlou@zeframlouInstall Skill
maple-agent-tracing

maple-agent-tracing

Trace an AI agent or LLM app with Maple so each conversation shows up as one Agent Session with its transcript, model calls, tool…

maple11d1.9k
@mapletechlabs@mapletechlabsInstall Skill

Questions about network-rca.

Which coding agents can use network-rca?
network-rca installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.