/ Verzeichnis / Playground / Wazuh-MCP-Server
● Community gensecaihq ⚡ Sofort

Wazuh-MCP-Server

von gensecaihq · gensecaihq/Wazuh-MCP-Server

Conversational SOC for Wazuh — query alerts, hunt threats, check vulnerabilities, and trigger active responses in plain English, with 48 tools and audit logging.

Wazuh-MCP-Server turns your Wazuh SIEM into a chat-driven SOC. 48 tools across alerts/agents/vulnerabilities/active response/compliance. Built for real SOC work: output sanitization, rate limiting, circuit breakers, per-tool RBAC, and destructive-action audit logs.

Warum nutzen

Hauptfunktionen

Live-Demo

In der Praxis

wazuh.replay ▶ bereit
0/0

Installieren

Wählen Sie Ihren Client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "wazuh": {
      "command": "uvx",
      "args": [
        "Wazuh-MCP-Server"
      ],
      "_inferred": true
    }
  }
}

Öffne Claude Desktop → Settings → Developer → Edit Config. Nach dem Speichern neu starten.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "wazuh": {
      "command": "uvx",
      "args": [
        "Wazuh-MCP-Server"
      ],
      "_inferred": true
    }
  }
}

Cursor nutzt das gleiche mcpServers-Schema wie Claude Desktop. Projektkonfiguration schlägt die globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "wazuh": {
      "command": "uvx",
      "args": [
        "Wazuh-MCP-Server"
      ],
      "_inferred": true
    }
  }
}

Klicken Sie auf das MCP-Servers-Symbol in der Cline-Seitenleiste, dann "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "wazuh": {
      "command": "uvx",
      "args": [
        "Wazuh-MCP-Server"
      ],
      "_inferred": true
    }
  }
}

Gleiche Struktur wie Claude Desktop. Windsurf neu starten zum Übernehmen.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "wazuh",
      "command": "uvx",
      "args": [
        "Wazuh-MCP-Server"
      ]
    }
  ]
}

Continue nutzt ein Array von Serverobjekten statt einer Map.

~/.config/zed/settings.json
{
  "context_servers": {
    "wazuh": {
      "command": {
        "path": "uvx",
        "args": [
          "Wazuh-MCP-Server"
        ]
      }
    }
  }
}

In context_servers hinzufügen. Zed lädt beim Speichern neu.

claude mcp add wazuh -- uvx Wazuh-MCP-Server

Einzeiler. Prüfen mit claude mcp list. Entfernen mit claude mcp remove.

Anwendungsfälle

Praxisnahe Nutzung: Wazuh-MCP-Server

Triage overnight alerts in 10 minutes instead of 2 hours

👤 SOC analysts ⏱ ~20 min advanced

Wann einsetzen: Shift start. Hundreds of alerts overnight. You need to find the real ones without reading every row.

Voraussetzungen
  • Wazuh Manager API creds — Wazuh UI > API credentials
Ablauf
  1. Summarize
    For last 12 hours: group alerts by rule group, count severity 10+ per group, top 5 agents with most high-sev alerts.✓ Kopiert
    → Ranked summary
  2. Investigate
    For top agent, pull the 10 most recent high-sev alerts with full details.✓ Kopiert
    → Detailed events
  3. Determine action
    Based on these events, is this a true positive? If yes, propose response: isolate agent / disable account / create ticket.✓ Kopiert
    → Verdict + action plan

Ergebnis: Faster MTTD/MTTR without more eyeballs.

Fallstricke
  • Auto-triggering active response before confirming — Keep active response tools behind a confirmation gate

Weekly vulnerability posture report

👤 Security managers ⏱ ~30 min intermediate

Wann einsetzen: Friday report for leadership. How many CVEs open? Where? Trend vs last week?

Ablauf
  1. Pull vulnerabilities
    From Wazuh vulnerability module: total open CVEs by severity, top 10 agents by critical CVE count.✓ Kopiert
    → Numbers + top agents
  2. Compare to last week
    Compare counts to last Friday's report [paste]. What improved, what regressed?✓ Kopiert
    → Delta analysis
  3. Prioritize
    List the 5 critical CVEs affecting most hosts that should be patched this weekend.✓ Kopiert
    → Actionable patch list

Ergebnis: Board-ready security posture summary.

Fallstricke
  • Vuln data only as fresh as last scan — Check scan timestamps before drawing conclusions
Kombinieren mit: notion

Isolate a compromised host on confirmation

👤 SOC on-call ⏱ ~10 min advanced

Wann einsetzen: Alert fires: unambiguous malware on endpoint. You need to isolate fast.

Ablauf
  1. Confirm scope
    For agent 'ws-4412': show active processes with parent PID, recent listening ports, and last 20 alerts. Is this clearly compromised?✓ Kopiert
    → Risk assessment
  2. Isolate
    Isolate agent ws-4412 via active response. Require my explicit confirm first.✓ Kopiert
    → Confirmation prompt, then isolation + audit log entry

Ergebnis: Compromised host isolated within minutes.

Fallstricke
  • False-positive isolation of prod server — Double-check agent ID and classification before confirming; keep an out-of-band way to re-enable

Kombinationen

Mit anderen MCPs für 10-fache Wirkung

wazuh + notion

Weekly security digest to exec

Compose a weekly Wazuh summary and create a Notion page in 'Security Weekly'.✓ Kopiert

Werkzeuge

Was dieses MCP bereitstellt

WerkzeugEingabenWann aufrufenKosten
list_alerts filter: obj, from, to, limit Investigate by time/severity/rule 1 API call
get_agent agent_id Profile a specific endpoint 1 API call
list_vulnerabilities agent_id?, severity? Vuln posture checks 1 API call
trigger_active_response agent_id, command, arguments? Isolate / kill process / disable account — destructive; confirm 1 API call + physical effect
compliance_report framework: 'pci'|'hipaa'|'nist', scope Audit readiness 1 API call

Kosten & Limits

Was der Betrieb kostet

API-Kontingent
Bounded by Wazuh Manager API limits
Tokens pro Aufruf
Alert listings can be huge — always filter by time + severity
Kosten in €
Free. Wazuh itself is open-source.
Tipp
Use limit aggressively. Don't list a week's alerts without grouping.

Sicherheit

Rechte, Secrets, Reichweite

Minimale Scopes: Wazuh API user scoped read-only for inspection; elevate for active response
Credential-Speicherung: Wazuh API creds in env or Docker secrets
Datenabfluss: Alert/event data goes to your LLM provider
Niemals gewähren: Active-response scope to a dev/eval instance

Fehlerbehebung

Häufige Fehler und Lösungen

401 from Wazuh API

Creds wrong, or JWT expired. Server auto-rotates; if persistent, check ENV.

Empty alert list despite known alerts

Indexer (Elasticsearch) not reachable from MCP container. Check docker-compose networks.

Active response failed / no effect

Confirm the active-response script is enabled on that agent (ossec.conf). Some actions are agent-side only.

Alternativen

Wazuh-MCP-Server vs. andere

AlternativeWann stattdessenKompromiss
Splunk / Sentinel MCPsYou use Splunk or Sentinel insteadDifferent SIEM
Wazuh UI directlySingle-alert deep diveSlower; no LLM synthesis

Mehr

Ressourcen

📖 Offizielle README auf GitHub lesen

🐙 Offene Issues ansehen

🔍 Alle 400+ MCP-Server und Skills durchsuchen