Nmap MCP 服务器
这是一个模型控制协议 (MCP) 服务器,提供对 nmap 网络扫描功能的访问。
特征
使用可自定义的选项对指定目标运行 nmap 扫描
存储和检索扫描结果
使用 AI 提示分析扫描结果
Related MCP server: Semgrep MCP Server
安装
要求:
Python 3.10+
python-libnmap
nmap(安装在系统上)
确保您的系统上安装了 nmap:
用法
运行服务器
要直接从源代码运行服务器:
要安装包并作为命令运行:
可用工具
运行 nmap 扫描
对指定目标运行 nmap 扫描
参数:
target:目标主机或网络(例如,192.168.1.1 或 192.168.1.0/24)options:Nmap 选项(例如 -sV -p 1-1000)
获取扫描详细信息
获取有关特定扫描的详细信息
参数:
scan_id:要检索的扫描的 ID
列出所有扫描
列出所有可用的扫描结果
无需参数
可用提示
分析扫描
分析nmap扫描结果
参数:
scan_id:要分析的扫描的 IDfocus:重点领域(安全/服务/概述)
资源
扫描结果可作为具有nmap://scan/{scan_id} URI 方案的资源使用。
示例工作流程
运行扫描:
Call tool: run-nmap-scan Parameters: {"target": "192.168.1.0/24", "options": "-sV -p 22,80,443"}获取扫描详细信息:
Call tool: get-scan-details Parameters: {"scan_id": "<scan_id from previous step>"}列出所有扫描:
Call tool: list-all-scans分析扫描结果:
Get prompt: analyze-scan Parameters: {"scan_id": "<scan_id>", "focus": "security"}
安全注意事项
此服务器在您的系统上执行 nmap 命令。扫描不属于您或您无权扫描的网络时请务必谨慎,因为未经授权的扫描在某些司法管辖区可能是违法的。
故障排除
如果遇到与 nmap 未找到或执行不正确相关的错误:
确保 nmap 已安装并位于 PATH 中
检查正在使用 nmap 可执行文件的日志
服务器将尝试使用 nmap 的完整路径以避免冲突
Docker 使用
您可以在 Docker 容器中运行 MCP 服务器:
为了与 Glama MCP 目录集成,Docker 容器允许其他人轻松使用此 MCP 服务器,而无需担心安装依赖关系。
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。