"""Nuclei fast vulnerability scanner"""
from typing import Dict, Any
def register_nuclei_tool(mcp, kali_client):
"""Register Nuclei tool with the MCP server"""
@mcp.tool()
def nuclei_scan(target: str, templates: str = "", severity: str = "", additional_args: str = "") -> Dict[str, Any]:
"""
Execute Nuclei template-based vulnerability scanning.
Args:
target: Target URL or list of URLs
templates: Specific templates to use
severity: Filter by severity (info, low, medium, high, critical)
additional_args: Additional Nuclei arguments
Returns:
Scan results
"""
data = {
"target": target,
"templates": templates,
"severity": severity,
"additional_args": additional_args
}
return kali_client.safe_post("api/tools/nuclei", data)