A comprehensive Model Context Protocol (MCP) server for automated vulnerability assessment and security testing.
THIS TOOL IS FOR AUTHORIZED SECURITY TESTING ONLY
- β Only use on systems you own or have explicit written permission to test
- β Obtain proper authorization before conducting any security assessments
- β Follow responsible disclosure practices for any vulnerabilities found.
- β NEVER use this tool for unauthorized scanning or malicious purposes.
- β Unauthorized security testing is illegal and unethical.
By using this tool, you agree to use it responsibly and in accordance with applicable laws and regulations.
- Host Discovery: Discover live hosts in network ranges
- Port Scanning: Comprehensive port scanning with service detection
- Service Enumeration: Identify services and versions on open ports
- Banner Grabbing: Extract service banners and version information
- Vulnerability Scanning: Test for XSS, SQL Injection, LFI, RFI, CSRF
- Security Headers Analysis: Check for missing security headers
- SSL/TLS Configuration Testing: Analyze SSL/TLS security
- Clickjacking Detection: Test for frame protection vulnerabilities
- OWASP Top 10: Test against OWASP Top 10 (2017 & 2021)
- CIS Benchmarks: Compliance checking for Linux, Windows, Apache, Nginx
- Custom Security Frameworks: Extensible compliance checking
- CVE Database Integration: Look up CVE information from NVD
- Known Vulnerability Matching: Check services against vulnerability databases
- Risk Assessment: CVSS scoring and severity classification
- Multiple Report Formats: JSON, HTML, CSV, PDF support
- Executive Summaries: High-level security assessment summaries
- Detailed Findings: Comprehensive vulnerability documentation
- Remediation Guidance: Actionable security recommendations
- Authorized Target Management: Strict scope verification
- Authorization Tracking: Document testing permissions
- Audit Logging: Comprehensive activity logging
- Node.js 18.0.0 or higher
- TypeScript 5.0.0 or higher
- Windows/Linux/macOS support
- Clone and Setup:
cd vulnerability-assessment-mcp
npm install- Build the Project:
npm run build- Initialize Database:
npm run start
# Database will be automatically initialized on first runAdd to your MCP client configuration:
{
"mcpServers": {
"vulnerability-assessment": {
"command": "node",
"args": ["C:/Users/PrassanthVG/vulnerability-assessment-mcp/dist/index.js"],
"env": {
"NVD_API_KEY": "your-nvd-api-key-optional"
}
}
}
}Before conducting any scans, you MUST add authorized targets:
// Add an authorized target
await mcp.call("scope_management", {
action: "add",
target: "example.com",
authorization_ref: "PENTEST-2024-001"
});
// List authorized targets
await mcp.call("scope_management", {
action: "list"
});
// Verify target authorization
await mcp.call("scope_management", {
action: "verify",
target: "192.168.1.100"
});// Discover hosts in a network range
await mcp.call("network_discovery", {
target: "192.168.1.0/24"
});
// Scan ports on a specific target
await mcp.call("port_scan", {
target: "192.168.1.100",
port_range: "top1000",
scan_type: "tcp"
});
// Enumerate services on open ports
await mcp.call("service_enumeration", {
target: "192.168.1.100",
aggressive: false
});// Comprehensive web vulnerability scan
await mcp.call("web_vulnerability_scan", {
url: "https://example.com",
scan_depth: 3,
include_checks: ["xss", "sqli", "csrf", "headers"]
});
// SSL/TLS security analysis
await mcp.call("ssl_tls_analysis", {
hostname: "example.com",
port: 443
});// Look up specific CVE
await mcp.call("vulnerability_lookup", {
cve_id: "CVE-2021-44228"
});
// Check service for known vulnerabilities
await mcp.call("check_known_vulnerabilities", {
service: "apache",
version: "2.4.49"
});// OWASP Top 10 assessment
await mcp.call("owasp_top10_check", {
url: "https://example.com",
year: "2021"
});
// CIS benchmark check
await mcp.call("cis_benchmark_check", {
target: "192.168.1.100",
benchmark_type: "linux"
});// Generate comprehensive HTML report
await mcp.call("generate_report", {
scan_id: "scan-2024-001",
format: "html",
include_remediation: true
});network_discovery- Discover live hostsport_scan- Scan network portsservice_enumeration- Identify serviceswhois_lookup- Domain/IP WHOIS informationdns_enumeration- DNS record enumeration
web_vulnerability_scan- Web application security testingssl_tls_analysis- SSL/TLS configuration analysis
vulnerability_lookup- CVE information lookupcheck_known_vulnerabilities- Service vulnerability checking
owasp_top10_check- OWASP Top 10 assessmentcis_benchmark_check- CIS compliance checking
generate_report- Generate assessment reportsscope_management- Manage authorized targets
# Optional NVD API key for better rate limits
export NVD_API_KEY="your-nvd-api-key"
# Custom database path (optional)
export DB_PATH="/custom/path/vulnerabilities.db"vulnerability-assessment-mcp/
βββ src/ # Source code
β βββ index.ts # Main MCP server
β βββ scanners/ # Security scanners
β βββ database/ # Vulnerability database
β βββ reports/ # Report generation
β βββ config/ # Configuration management
β βββ compliance/ # Compliance checkers
β βββ utils/ # Utility functions
βββ config/ # Configuration files
β βββ authorized_scope.json # Authorized targets
βββ data/ # Database files
βββ logs/ # Application logs
βββ reports/ # Generated reports
βββ README.md # This file
Here's a complete example of conducting a security assessment:
// 1. Add target to authorized scope
await mcp.call("scope_management", {
action: "add",
target: "testapp.local",
authorization_ref: "ASSESSMENT-2024-001"
});
// 2. Discover hosts
const hosts = await mcp.call("network_discovery", {
target: "192.168.1.0/24"
});
// 3. Scan ports on discovered hosts
const portScan = await mcp.call("port_scan", {
target: "192.168.1.100",
port_range: "top1000"
});
// 4. Enumerate services
const services = await mcp.call("service_enumeration", {
target: "192.168.1.100",
aggressive: true
});
// 5. Web application testing
const webScan = await mcp.call("web_vulnerability_scan", {
url: "http://192.168.1.100",
scan_depth: 3
});
// 6. Compliance assessment
const owasp = await mcp.call("owasp_top10_check", {
url: "http://192.168.1.100",
year: "2021"
});
// 7. Generate comprehensive report
const report = await mcp.call("generate_report", {
scan_id: "assessment-2024-001",
format: "html",
include_remediation: true
});The framework generates detailed reports including:
- Executive Summary: High-level risk assessment
- Vulnerability Details: Technical findings with CVSS scores
- Compliance Results: Framework compliance status
- Remediation Guidance: Actionable security recommendations
- Risk Prioritization: Severity-based finding prioritization
- Always obtain written authorization before testing
- Limit scope to authorized targets only
- Use rate limiting to avoid impacting production systems
- Document findings responsibly and securely
- Follow responsible disclosure for vulnerability reporting
- Keep dependencies updated regularly
- Use secure configurations for all components
- Protect assessment data with appropriate access controls
- Log all activities for audit purposes
- Regular backup of vulnerability database and configurations
We welcome contributions! Please:
- Fork the repository
- Create a feature branch
- Add tests for new functionality
- Follow TypeScript/ESLint standards
- Submit a pull request with detailed description
# Install dependencies
npm install
# Run in development mode
npm run dev
# Run tests
npm test
# Build for production
npm run buildThis project is licensed under the MIT License - see the LICENSE file for details.
This tool is provided for educational and legitimate security testing purposes only. The authors and contributors are not responsible for any misuse or damage caused by this tool. Users are solely responsible for complying with applicable laws and obtaining proper authorization before conducting security assessments.
- Issues: Report bugs and request features on GitHub
- Documentation: Additional documentation available in
/docs - Security: For security issues, please email security@example.com
- Initial release
- Full MCP integration
- Comprehensive vulnerability assessment capabilities
- OWASP Top 10 and CIS benchmark support
- Multi-format reporting
- Integration with additional vulnerability databases
- Advanced exploitation frameworks
- Cloud security assessment capabilities
- API security testing enhancements
- Real-time vulnerability monitoring
Remember: Use this tool responsibly and only on authorized systems! π