Wazuh-MCP-Server

gensecaihq/Wazuh-MCP-Server

3.6

If you are the rightful owner of Wazuh-MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

Wazuh MCP Server is an AI-powered security operations platform that integrates conversational AI with traditional SIEM operations.

Tools
5
Resources
0
Prompts
0

Wazuh MCP Server

License: MIT Python 3.13+ MCP 2025-11-25 Docker

Production-ready MCP server connecting AI assistants to Wazuh SIEM.

Version 4.0.6 | Wazuh 4.8.0 - 4.14.3 |


Why This MCP Server?

Security teams using Wazuh SIEM generate thousands of alerts, vulnerabilities, and events daily. Analyzing this data requires constant context-switching between dashboards, writing API queries, and manually correlating information.

This MCP server solves that problem by providing a secure bridge between AI assistants (like Claude) and your Wazuh deployment. Query alerts, analyze threats, check agent health, and generate compliance reports—all through natural conversation.

You: "Show me critical alerts from the last 24 hours"
Claude: [Uses get_wazuh_alerts tool] Found 12 critical alerts...

You: "Which agents have unpatched critical vulnerabilities?"
Claude: [Uses get_wazuh_critical_vulnerabilities tool] 3 agents affected...

Take It Further: Autonomous Agentic SOC

Ready to move beyond manual security operations?

Combine this MCP server with Wazuh OpenClaw Autopilot to build a fully autonomous Security Operations Center powered by AI agents.

While this MCP server gives you conversational access to Wazuh, OpenClaw takes it to the next level—deploying AI agents that work around the clock to triage alerts, correlate incidents, and recommend responses without human intervention.

CapabilityWhat It Does
Autonomous Alert TriageAI agents continuously analyze incoming alerts, prioritize threats, and create structured incident cases
Intelligent CorrelationAutomatically groups related alerts into attack timelines with blast radius assessment
AI-Powered Response PlanningGenerates actionable response recommendations with risk scoring
Human-in-the-Loop SafetyCritical actions require Slack approval—automation with guardrails
Traditional SOC: Alert → Analyst reviews → Hours later → Response
Agentic SOC:     Alert → AI triages → Seconds later → Response ready for approval

This is the future of security operations. Start with the MCP server, scale to autonomous agents.

Explore OpenClaw Autopilot →


Features

CategoryCapabilities
MCP Protocol100% compliant with MCP 2025-11-25, Streamable HTTP + Legacy SSE
Security Tools29 specialized tools for alerts, agents, vulnerabilities, compliance
AuthenticationOAuth 2.0 with DCR, Bearer tokens (JWT), or authless mode
Production ReadyCircuit breakers, rate limiting, graceful shutdown, Prometheus metrics
DeploymentDocker containerized, multi-platform (AMD64/ARM64), serverless-ready
Token EfficiencyCompact output mode reduces responses by ~66%

29 Security Tools

CategoryTools
Alerts (3)get_wazuh_alerts, get_wazuh_alert_summary, analyze_alert_patterns
Agents (6)get_wazuh_agents, get_wazuh_running_agents, check_agent_health, get_agent_processes, get_agent_ports, get_agent_configuration
Vulnerabilities (3)get_wazuh_vulnerabilities, get_wazuh_critical_vulnerabilities, get_wazuh_vulnerability_summary
Security Analysis (7)search_security_events, analyze_security_threat, check_ioc_reputation, perform_risk_assessment, get_top_security_threats, generate_security_report, run_compliance_check
System (10)get_wazuh_statistics, get_wazuh_weekly_stats, get_wazuh_cluster_health, get_wazuh_cluster_nodes, get_wazuh_rules_summary, get_wazuh_remoted_stats, get_wazuh_log_collector_stats, search_wazuh_manager_logs, get_wazuh_manager_error_logs, validate_wazuh_connection

Quick Start

Prerequisites

  • Docker 20.10+ with Compose v2.20+
  • Wazuh 4.8.0 - 4.14.3 with API access

1. Clone and Configure

git clone https://github.com/gensecaihq/Wazuh-MCP-Server.git
cd Wazuh-MCP-Server
cp .env.example .env

Edit .env with your Wazuh credentials:

WAZUH_HOST=https://your-wazuh-server.com
WAZUH_USER=your-api-user
WAZUH_PASS=your-api-password

2. Deploy

python deploy.py
# Or: docker compose up -d

3. Verify

curl http://localhost:3000/health

4. Connect Claude Desktop

  1. Go to SettingsConnectorsAdd custom connector
  2. Enter: https://your-server-domain.com/mcp
  3. Add authentication in Advanced settings

Detailed setup:


Configuration

Required Variables

VariableDescription
WAZUH_HOSTWazuh server URL
WAZUH_USERAPI username
WAZUH_PASSAPI password

Optional Variables

VariableDefaultDescription
WAZUH_PORT55000API port
MCP_HOST0.0.0.0Server bind address
MCP_PORT3000Server port
AUTH_MODEbeareroauth, bearer, or none
AUTH_SECRET_KEYautoJWT signing key
ALLOWED_ORIGINShttps://claude.aiCORS origins
REDIS_URL-Redis URL for serverless mode

Wazuh Indexer (Required for vulnerabilities in 4.8.0+)

VariableDescription
WAZUH_INDEXER_HOSTIndexer hostname
WAZUH_INDEXER_PORTIndexer port (default: 9200)
WAZUH_INDEXER_USERIndexer username
WAZUH_INDEXER_PASSIndexer password

API Endpoints

EndpointDescription
/mcpRecommended - Streamable HTTP (MCP 2025-11-25)
/sseLegacy SSE endpoint
/healthHealth check
/metricsPrometheus metrics
/docsOpenAPI documentation
/auth/tokenToken exchange (bearer mode)

Documentation

GuideDescription
Claude Desktop setup, authentication modes
HA, serverless, compact mode, MCP compliance
Common issues and solutions
Deployment, monitoring, maintenance
Tool-specific documentation
Security configuration and best practices

Project Structure

src/wazuh_mcp_server/
├── server.py           # MCP server with 29 tools
├── config.py           # Configuration management
├── auth.py             # JWT authentication
├── oauth.py            # OAuth 2.0 with DCR
├── security.py         # Rate limiting, CORS
├── monitoring.py       # Prometheus metrics
├── resilience.py       # Circuit breakers, retries
├── session_store.py    # Pluggable sessions
└── api/
    ├── wazuh_client.py    # Wazuh Manager API
    └── wazuh_indexer.py   # Wazuh Indexer API

Security

  • Authentication: JWT tokens, OAuth 2.0 with DCR
  • Rate Limiting: Per-client request throttling
  • Input Validation: SQL injection and XSS protection
  • Container Security: Non-root user, read-only filesystem
# Generate secure API key
openssl rand -hex 32

# Set file permissions
chmod 600 .env

Contributing

We welcome contributions! Please see:


License

MIT License - see


Acknowledgments


Contributors

Contributors

AvatarUsernameContributions
@alokemajumderCode, Issues, Discussions
@gensecai-devCode, Discussions
@aiunmuktoCode, PRs
@KaribusanCode, Issues, PRs
@lwsinclairCode, PRs
@taylorwaltonPRs
@MilkyWay88PRs
@kanylbullenCode, PRs
@UberkarhuIssues
@cbassonbgroupIssues
@cybersentinel-06Issues
@daod-arshadIssues
@mamemaIssues
@marcolinux46Issues
@matveevandreyIssues
@punkpeyeIssues
@tonyliu9189Issues
@Vasanth120vDiscussions
@gnix45Discussions
@melmasry1987Discussions

Auto-updated by