Provides intelligent analysis of SonicWall firewall logs through natural language queries, real-time threat detection, connection search and investigation, network statistics and security metrics, and log export capabilities for both SonicOS 7.x and 8.x versions
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SonicWall MCP Servershow me blocked connections from the last hour"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SonicWall MCP Server
Professional SonicWall log analysis and threat detection via Model Context Protocol
๐งช Community Testing Needed
โ ๏ธ IMPORTANT: This project needs community testing and validation!
๐ฅ We need your help to test this with real SonicWall devices and environments.
๐ Test it with your SonicWall setup
๐ Report issues via GitHub Issues
๐ง Fix bugs and submit PRs
๐ Improve documentation based on real-world usage
๐ก Contribute features and enhancements
Your testing and contributions will help make this production-ready for everyone!
A production-ready MCP server that provides intelligent analysis of SonicWall firewall logs through natural language queries. Fully compliant with MCP 2025-06-18 specification with comprehensive support for both SonicOS 7.x and 8.x including accurate API endpoints and version-specific features.
Related MCP server: Fastly NGWAF MCP Server
โจ Features
๐ Natural Language Log Analysis - Query firewall logs using conversational AI
๐ก๏ธ Real-time Threat Detection - Advanced threat correlation and behavioral analysis
๐ Complete SonicOS Support - Accurate API endpoints for both 7.x and 8.x versions
๐ฏ Version-Aware Integration - Automatic endpoint resolution and feature detection
๐ Enterprise Ready - Production deployment with comprehensive security
๐ Advanced Analytics - Network intelligence and security metrics
๐ MCP 2025-06-18 Compliant - Latest protocol compliance with enhanced JSON-RPC 2.0
โก High Performance - In-memory caching with intelligent TTL management
๐ Security First - Authentication, authorization, and comprehensive audit logging
๐ Quick Start
Prerequisites
SonicWall Device running SonicOS 7.x or 8.x
API Access enabled on your SonicWall (MANAGE > System Setup > Appliance > SonicOS API)
Docker & Docker Compose (recommended) or Node.js 20+
1. Get the Server
git clone https://github.com/gensecaihq/sonicwall-mcp-server.git
cd sonicwall-mcp-server2. Configure Environment
# Copy example configuration
cp .env.example .env
# Edit with your SonicWall details
nano .envRequired configuration:
SONICWALL_HOST=192.168.1.1
SONICWALL_USERNAME=admin
SONICWALL_PASSWORD=your_password
SONICWALL_VERSION=7 # or 8 for SonicOS 8.x3. Start the Server
Using Docker (Recommended):
docker compose up -d
# or using npm script
npm run docker:upUsing Node.js:
npm install
npm run build
npm start4. Verify Installation
# Check server health
curl http://localhost:3000/health
# Expected response:
# {"status":"healthy","protocol":"MCP/2025-06-18","version":"1.0.0"}๐ Connect to Claude
Add to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"sonicwall": {
"transport": "sse",
"url": "http://localhost:3000/mcp/v1/sse"
}
}
}That's it! Start using SonicWall analysis in Claude:
"Show me blocked connections from the last hour"
"Find critical security threats from today"
"Analyze VPN authentication failures"
๐ฏ Latest Improvements
โก Enhanced SonicOS Support (v1.0.0)
Accurate API Endpoints: Complete endpoint mapping for both SonicOS 7.x (
/api/sonicos) and 8.x (/api/sonicos/v8)Version-Aware Features: Automatic detection and utilization of version-specific capabilities
Advanced Authentication: Enhanced session management with proper token refresh and error handling
Cloud Integration: Full support for SonicOS 8.x cloud management and NSM integration
๐ก๏ธ Security & Compliance Enhancements
MCP 2024-11-05 Compliance: Full protocol implementation with JSON-RPC 2.0 support
Enhanced Error Handling: SonicWall-specific error codes with intelligent retry logic
Advanced Validation: Comprehensive JSON Schema validation using AJV
Security Hardening: Improved authentication flow with comprehensive audit logging
๐ Performance & Reliability
Intelligent Caching: Enhanced TTL management with automatic cleanup
Endpoint Optimization: Version-specific timeout and rate limiting configurations
Connection Management: Improved retry logic and failover handling
Comprehensive Logging: Structured logging with performance metrics and debugging support
๐ ๏ธ Available Tools
analyze_logs
Natural language log analysis with intelligent insights
// Example usage in Claude
"Show me suspicious network activity from external IPs in the last 2 hours"
"Find brute force attacks on SSH and RDP ports"
"Analyze malware detections and their source locations"get_threats
Real-time threat monitoring and analysis
// Get critical threats
{
"severity": "critical",
"limit": 20
}search_connections
Advanced connection search and investigation
// Investigate specific IP
{
"sourceIp": "192.168.1.100",
"hoursBack": 24,
"limit": 500
}get_stats
Network statistics and security metrics
// Get top blocked IPs
{
"metric": "top_blocked_ips",
"limit": 10
}export_logs
Export filtered logs for compliance and analysis
// Export security events as CSV
{
"format": "csv",
"filters": {
"severity": ["critical", "high"],
"startTime": "2024-01-01T00:00:00Z"
}
}๐ Documentation
Complete Usage Guide - Detailed examples and use cases
Configuration Reference - All settings explained
API Documentation - Complete tool specifications
Troubleshooting Guide - Common issues and solutions
Security Guide - Security best practices
MCP Compliance - Protocol compliance details
๐๏ธ Architecture
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ Claude Code โโโโโบโ MCP Server โโโโโบโ SonicWall โ
โ โSSE โ (Port 3000) โAPI โ Device โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโ
โ Log Analysis โ
โ & Intelligence โ
โโโโโโโโโโโโโโโโโโโKey Components:
MCP Protocol Layer: Full MCP 2024-11-05 compliance with SSE transport
Enhanced API Client: Accurate SonicOS 7.x/8.x endpoints with session management
Intelligent Log Parser: Multi-format parsing with version-specific optimizations
Analysis Engine: AI-powered natural language processing and threat correlation
Performance Cache: High-performance in-memory caching with TTL management
Security Framework: Comprehensive authentication and input validation
๐ง Configuration
Basic Configuration
# SonicWall Connection
SONICWALL_HOST=your.firewall.ip
SONICWALL_USERNAME=admin
SONICWALL_PASSWORD=secure_password
SONICWALL_VERSION=7
# Server Settings
PORT=3000
LOG_LEVEL=info
CACHE_TTL_SECONDS=300Advanced Configuration
# Authentication (Optional)
MCP_BEARER_TOKEN=your_secret_token
# Performance Tuning
CACHE_MAX_SIZE=1000
API_TIMEOUT=30000
MAX_RETRIES=3
# Security
CORS_ORIGINS=https://claude.ai,https://localhost:3000
RATE_LIMIT_MAX=100๐ณ Docker Deployment
Prerequisites
Docker Engine 24.0+ (latest stable)
Docker Compose V2 (integrated plugin, comes with Docker Desktop)
Note: Legacy
docker-composecommand is deprecated, usedocker compose
Quick Start Commands
# Production deployment (detached mode)
docker compose up -d
# Development mode (with hot reload)
docker compose -f docker-compose.yml -f docker-compose.dev.yml up
# View logs
docker compose logs -f sonicwall-mcp
# Stop all services
docker compose down
# Rebuild and restart
docker compose up --build -dNPM Script Shortcuts
# Production deployment
npm run docker:up
# Development with hot reload
npm run docker:dev
# View logs
npm run docker:logs
# Stop services
npm run docker:down
# Build image only
npm run docker:buildEnvironment Configuration
# Use environment file
cp .env.example .env
# Edit .env with your SonicWall details
docker compose up -d
# Or pass environment variables directly
SONICWALL_HOST=192.168.1.1 \
SONICWALL_USERNAME=admin \
SONICWALL_PASSWORD=your_password \
docker compose up -dDocker Compose Files
docker-compose.yml- Production configurationdocker-compose.dev.yml- Development overridesdocker-compose.override.yml- Local customizations (optional)
๐งช Testing & Validation
Quick Health Check
# Server status
curl http://localhost:3000/health
# MCP endpoint test
curl -H "Accept: text/event-stream" http://localhost:3000/mcp/v1/sseSonicWall Connectivity Test
# Test authentication
curl -k https://YOUR_SONICWALL/api/sonicos/auth \
-H "Content-Type: application/json" \
-d '{"user":"admin","password":"your_password"}'Run Test Suite
# All tests
npm test
# MCP compliance tests
npm run test:mcp
# SonicWall integration tests
npm run test:integration๐ Security
Security Features
โ Transport Security - HTTPS enforcement with comprehensive CORS validation
โ Authentication - Bearer token support with intelligent rate limiting
โ Input Validation - JSON Schema validation using AJV with comprehensive sanitization
โ Container Security - Non-root user execution with read-only filesystem
โ Data Privacy - Zero sensitive data logging with audit-compliant processing
โ MCP Compliance - Full protocol security implementation
โ API Security - SonicWall credential protection with secure session management
Security Checklist
Enable API access only from trusted networks
Use strong passwords for SonicWall admin accounts
Configure MCP_BEARER_TOKEN for additional security
Monitor logs for unusual activity
Keep SonicWall firmware updated
Review firewall rules regularly
๐จ Common Issues
โ "Authentication Failed"
Problem: Cannot connect to SonicWall API
# Check API is enabled
# SonicWall: MANAGE > System Setup > Appliance > SonicOS API โ
# Test connectivity
ping YOUR_SONICWALL_HOST
curl -k https://YOUR_SONICWALL_HOST/api/sonicos/authโ "No logs returned"
Problem: Empty responses from log queries
# Check log levels in SonicWall
# Log > Settings > Categories > Enable required log types
# Verify time synchronization
dateโ "CORS Error in Browser"
Problem: Browser blocks MCP requests
# Add your domain to CORS_ORIGINS
CORS_ORIGINS=https://claude.ai,https://your-domain.com๐ Monitoring & Observability
Health Monitoring
# Detailed health status
curl http://localhost:3000/health | jq
# Response includes:
# - Server uptime and status
# - SonicWall connectivity
# - Cache statistics
# - Memory usagePerformance Metrics
# View performance logs
docker compose logs sonicwall-mcp | grep "executed successfully"
# Example output:
# {"timestamp":"2024-01-01T12:00:00.000Z","level":"info","message":"Tool analyze_logs executed successfully","executionTime":245,"resultSize":15420}Log Analysis
# Error monitoring
docker compose logs sonicwall-mcp | grep ERROR
# Performance tracking
docker compose logs sonicwall-mcp | grep "execution time"๐ค Contributing
We welcome contributions! Please read our Contributing Guidelines.
Development Setup
# Fork and clone
git clone https://github.com/your-username/sonicwall-mcp-server.git
cd sonicwall-mcp-server
# Install dependencies
npm install
# Start development server
npm run dev
# Run tests
npm test
# Submit PR
git checkout -b feature/amazing-feature
git commit -m "Add amazing feature"
git push origin feature/amazing-feature๐ License
MIT License - see LICENSE file for details.
๐ Support & Community
๐ Issues: GitHub Issues
๐ฌ Discussions: GitHub Discussions
๐ Documentation: Project Wiki
๐ง Security: security@yourorganization.com
๐ Acknowledgments
Model Context Protocol for the excellent specification
SonicWall for comprehensive API documentation
Claude Code community for feedback and testing
All contributors and users who make this project better
๐ Built with security-first principles for enterprise cybersecurity teams
Get Started โข API Docs โข Troubleshooting
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.