Commit Graph

17 Commits

Author SHA1 Message Date
Gianluca Brigandi
5f452bac9d feat: Refactor tools and upgrade wazuh-client
This commit introduces a major refactoring of the tool implementation by splitting the tools into separate modules based on their domain (agents, alerts, rules, stats, vulnerabilities). This improves modularity and
maintainability.

Key changes:
- Upgraded wazuh-client to version 0.1.7 to leverage the new builder pattern for client instantiation.
- Refactored the main WazuhToolsServer to delegate tool calls to the new domain-specific tool modules.
- Created a tools module with submodules for each domain, each containing the relevant tool implementations and parameter structs.
- Updated the default limit for most tools from 100 to 300, while the vulnerability summary limit is set to 10,000 to ensure comprehensive scans.
- Removed a problematic manual test from the test script that was causing it to hang.
2025-07-10 14:56:37 -07:00
Gianluca Brigandi
4e39ca6bba Improved design by factoring out tool-speciic logic into their own
module leaving the main MCP server entrypoint as just a dispatcher of
the former.
2025-06-27 09:32:31 -07:00
Gianluca Brigandi
6e7463382e Fixed get_wazuh_log_collector_stats mcp tool 2025-06-25 17:04:55 -07:00
Gianluca Brigandi
e160888906 several fixes and improvements around playing nice with MCP tool selection and parametrization. 2025-06-25 15:52:07 -07:00
Gianluca Brigandi
2df4408f1a version bump to 0.2.3 2025-06-24 12:18:35 -07:00
Gianluca Brigandi
77914b5097 Upgraded to latest wazuh client that fixes fetching critical vulnerabilities 2025-06-24 12:03:58 -07:00
Gianluca Brigandi
943fabddd3 release bump 2025-06-23 14:33:40 -07:00
Gianluca Brigandi
5254df7aa1 Bumped Wazuh API version which fixes vulnerability fetching 2025-06-23 12:37:33 -07:00
Gianluca Brigandi
e95b3fb199 addressing opessl issue 2025-06-18 17:49:13 -07:00
Gianluca Brigandi
168bb7b8f7 Using used wazuh-client-rs with rusttls support 2025-06-18 17:34:46 -07:00
Gianluca Brigandi
d23eef6269 Bumped to new 0.2.0 version 2025-06-18 17:02:05 -07:00
Gianluca Brigandi
47b33414cb feat: comprehensive Wazuh integration with Docker CI/CD and expanded security operations
Major enhancements:
- Added Docker image building and publishing to GitHub Container Registry with multi-platform support (linux/amd64, linux/arm64)
- Expanded from basic alert retrieval to comprehensive security operations with 14 MCP tools covering:
  * Vulnerability management (agent vulnerability summaries, critical vulnerabilities)
  * Agent monitoring (running agents, processes, network ports)
  * System statistics (weekly stats, remoted stats, log collector stats)
  * Log analysis (manager logs, error logs with search capabilities)
  * Cluster management (health checks, node listing)
- Updated environment configuration to support both Wazuh Manager API and Wazuh Indexer with proper SSL handling
- Enhanced documentation with detailed use cases, Docker deployment options, and comprehensive tool descriptions
- Upgraded wazuh-client dependency to v0.1.1 for expanded API capabilities
- Added agent ID formatting and validation for consistent three-digit zero-padded identifiers

This transforms the server from a simple alert fetcher into a full-featured security operations platform for AI-assisted Wazuh management.
2025-06-18 16:50:26 -07:00
Gianluca Brigandi
bfffdbfb52 Replaced bespoke indexer client with full fledges indexer and manager API crate. 2025-06-17 22:46:55 -07:00
Gianluca Brigandi
f9efb70f19 * Ported code to RMCP
* Implemented unit and e2e testing
* Other fixes and enhancements
2025-05-22 20:02:41 -07:00
Gianluca Brigandi
87ac8a6695 Port mcp-server-wazuh to rmcp framework
- Replaced custom MCP implementation with rmcp framework
- Simplified architecture to use stdio transport only
- Implemented WazuhToolsServer with #[tool(tool_box)] attribute
- Added get_wazuh_alert_summary tool with proper parameter schema
- Removed HTTP transport and axum dependencies
- Updated README with new installation and usage instructions
- Maintained compatibility with existing Wazuh Indexer client
- Simplified error handling by removing axum-specific code
2025-05-22 16:24:11 -07:00
Gianluca Brigandi
13494cf101 Wazuh MCP server successfully tested with Claude 2025-05-12 19:29:09 -07:00
Gianluca Brigandi
ce2460928a first commit 2025-05-07 11:16:24 -07:00