Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Custom nmap scans with arbitrary flags, plus scan history retrieval and management. Use when running nmap with custom flags, reviewing past scan results, comparing before/after scans, or retrieving a previous scan by ID
.claude/skills/automateyournetwork-nmap-scan-management/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 6% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -30% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 60% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 273% | 0% |
bashpython3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" TOOL_NAME '{"param":"value"}'
| Tool | Purpose | |------|---------| | nmap_custom_scan | Run nmap with arbitrary flags (scope-enforced + audit-logged) | | nmap_list_scans | List recent saved scans with IDs, timestamps, targets | | nmap_get_scan | Retrieve full results of a previous scan by ID |
For power users who need flags not covered by the dedicated tools:
bash# Aggressive scan with version detection python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_custom_scan '{"target":"192.168.1.1","flags":"-A -T4"}' # Scan specific ports with timing template python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_custom_scan '{"target":"10.0.0.0/24","flags":"-sS -p 22,80,443 -T3 --open"}' # Idle scan using a zombie host python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_custom_scan '{"target":"192.168.1.1","flags":"-sI 192.168.1.254"}' # IPv6 scan python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_custom_scan '{"target":"fd00:cc:1:2::1","flags":"-6 -sT -p 179,22,80"}'
Safety: The following are blocked in custom scans:
;, &, |, , $, etc.)-oN, -oX, -oG, -oA)--datadir, --servicedb, --script with path)Use the dedicated nmap_script_scan or nmap_vuln_scan tools for NSE scripts.
bashpython3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_list_scans '{"limit":20}'
Returns newest-first list with scan_id, timestamp, tool used, and target.
bashpython3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_get_scan '{"scan_id":"20250307_143022_a1b2c3"}'
Returns the full scan result as originally captured.
When validating a change:
bash# Baseline python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_top_ports '{"target":"192.168.1.1","count":1000}' # Note: scan_id from output, e.g. "20250307_140000_abc123" # ... make changes ... # Post-change python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_top_ports '{"target":"192.168.1.1","count":1000}' # Retrieve both for comparison python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_get_scan '{"scan_id":"20250307_140000_abc123"}' python3 $MCP_CALL "python3 -u $NMAP_MCP_SCRIPT" nmap_get_scan '{"scan_id":"20250307_141500_def456"}'
target (required): IP, hostname, or CIDR rangeflags (required): Raw nmap flags (do NOT include the target in flags)limit (optional): Max number of scans to return (default: 20, newest first)scan_id (required): The scan_id returned by any scan tool or nmap_list_scansflags parameter — it's added automaticallyOther measured skills in the registry, with their headline benchmark lift.