Wazuh MCP logo

Wazuh MCP

Read-only MCP access to Wazuh alerts, agents, vulnerabilities, rules, inventory, and diagnostics.

Install Wazuh MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "wazuh-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "--package",
        "wazuh-mcp",
        "wazuhctrl"
      ],
      "env": {
        "WAZUH_URL": "YOUR_VALUE_HERE",
        "WAZUH_USERNAME": "YOUR_VALUE_HERE",
        "WAZUH_PASSWORD": "YOUR_VALUE_HERE",
        "WAZUH_CA_FILE": "YOUR_VALUE_HERE",
        "WAZUH_INDEXER_URL": "YOUR_VALUE_HERE",
        "WAZUH_INDEXER_USERNAME": "YOUR_VALUE_HERE",
        "WAZUH_INDEXER_PASSWORD": "YOUR_VALUE_HERE",
        "WAZUH_INDEXER_CA_FILE": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings β†’ Developer β†’ Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-testedβ€” we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

wazuh-mcp MCP server exposes read-only Wazuh manager and optional Wazuh Indexer data to MCP-compatible clients. It supports agent triage, alert and vulnerability searches, rule and compliance review, endpoint inventory, manager diagnostics, and security findings through typed tools over stdio or Streamable HTTP. Reach for it when an AI client needs to investigate Wazuh data without performing operational changes. Sensitive fields are redacted by default, TLS verification is enabled by default, and attacker-controlled SIEM text is marked as untrusted data.

Use cases

  • Investigate recent Wazuh alerts by severity, agent, rule, or text
  • Triage disconnected agents and inspect endpoint health
  • Search vulnerability inventory by CVE, package, or severity
  • Review SCA compliance findings and remediation steps
  • Diagnose Wazuh manager, authentication, and Indexer connectivity

Key features

  • Read-only Wazuh manager and Indexer access
  • Alert, vulnerability, and rule search
  • Agent health and endpoint inventory inspection
  • SCA, FIM, rootcheck, and compliance findings
  • Stdio and authenticated Streamable HTTP modes
  • Default redaction and TLS verification

Tools28

What Wazuh MCP lets your agent do. Expand a tool for its parameters.

Self-reported~489 tokens of context

Security & health

What it can reach and how reliably it runs β€” from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

6/6 checks healthy over the last 21d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev Β· wazuh-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks β€” not a rating.

GitHub stars8Stargazers on the source repository.
npm downloads287Package downloads in the last 30 days.
Last commit4d agoMost recent push to the default branch.
Tools exposed28Callable tools this server registers over MCP.

How Wazuh MCP works

What wazuh-mcp does

wazuh-mcp connects MCP clients to a Wazuh SIEM/XDR deployment. It reads from the Wazuh manager API and, when configured, the Wazuh Indexer. The exposed operations cover agent status and details, recent and searchable alerts, vulnerability inventory, detection rules, SCA results, endpoint system inventory, File Integrity Monitoring, rootcheck findings, manager logs, configuration, groups, decoders, version information, and connection diagnostics.

The package is read-only for Wazuh data. Manager access performs JWT authentication, while Indexer access uses search queries. It is suited to investigation, triage, compliance review, and inventory questions where the calling agent should not modify the deployment.

How it works

The server can run as a local stdio process or as a shared Streamable HTTP process. The stdio mode is appropriate for a client that launches the command directly. HTTP mode listens on /mcp and requires a separate bearer token; /healthz provides an unauthenticated health response. HTTP sessions have independent MCP state, while the manager client and cached authentication token are shared.

Wazuh manager credentials provide access to manager-backed tools. Alert and vulnerability operations use the optional Indexer credentials. Without the Indexer, manager, agent, rule, decoder, and version tools remain available, while alert and vulnerability operations return a configuration message.

Setup and configuration

The published npm package can be started with npx; source installations use npm install followed by npm run build. Configure the manager URL, username, password, and CA file as needed. Indexer URL, username, password, and CA file are optional as a group. Use least-privilege Wazuh accounts rather than the Wazuh web administrator or Indexer superuser.

For HTTP mode, build the repository and run dist/mcp-bin.js --http. Set WAZUH_MCP_HTTP_TOKEN to an independent token of at least 32 characters. WAZUH_MCP_HTTP_HOST controls the bind address and defaults to IPv4 loopback; WAZUH_MCP_HTTP_PORT defaults to 3120. The listener does not provide TLS, OAuth, or browser CORS support, so remote deployments need a trusted proxy or tunnel and network controls.

Tools and capabilities

  • Filter agents by active, disconnected, never-connected, or pending status.
  • Retrieve alerts and search them by time, level, agent, rule, or text.
  • Find vulnerabilities by CVE, severity, package, agent, or description.
  • Inspect rules, decoders, SCA checks, compliance mappings, and remediation steps.
  • Review operating systems, packages, processes, ports, interfaces, IP addresses, and Windows hotfixes.
  • Read FIM, rootcheck, manager log, configuration, group, and diagnostic data.

Sensitive values such as agent IPs, full logs, hashes, and command lines are hidden unless enabled for an individual call. Manager configuration secret-like values are redacted by default.

Limitations and notes

All HTTP-token holders share the configured upstream account's read privileges; session IDs do not represent separate users. Keep HTTP mode bound to loopback for local use. The server limits HTTP request bodies to 1 MiB, applies request and header timeouts, and expires idle sessions after 30 minutes. An open idle SSE channel does not prevent expiry. TLS verification remains enabled by default.

Reviews

No reviews yet β€” be the first to share how it worked for you.

Frequently Asked Questions about Wazuh MCP

wazuh-mcp is an MCP server that connects AI clients to Wazuh manager and optional Wazuh Indexer data. Its main tools list and inspect agents, retrieve and search alerts, query vulnerabilities, review rules and SCA results, examine endpoint inventory, read security findings, and diagnose connectivity. Operations are read-only.

Install it with the published npm package through npx, or clone the repository, run npm install, and build with npm run build. Configure Wazuh manager credentials and optional Indexer credentials in a protected environment file before launching the MCP process.

Yes, wazuh-mcp can run with only Wazuh manager settings. Agent, rule, decoder, and version tools remain available; alert and vulnerability tools require the Indexer and return a configuration message when those credentials are absent.

Yes, wazuh-mcp supports authenticated Streamable HTTP through the built mcp-bin.js entry point with the --http option. Set an independent WAZUH_MCP_HTTP_TOKEN, keep local deployments on loopback, and use a trusted TLS proxy or tunnel for remote access.

Yes, wazuh-mcp documents HTTP configuration for both Claude Code and Codex. Claude Code uses an authorization-header helper, while Codex reads the bearer token from WAZUH_MCP_HTTP_TOKEN. Claude and other MCP-compatible clients can use the server through its supported transport modes.

Related MCP servers

Add a badge to your READMEShow it’s listed β€” live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewWazuh MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/wazuh-mcp?style=directory)](https://allmcps.com/mcp/wazuh-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/wazuh-mcp"><img src="https://allmcps.com/api/badge/wazuh-mcp?style=directory" alt="Wazuh MCP on AllMCPs" /></a>