Nmap MCP 服务器基于模型控制协议(MCP)构建,为用户提供便捷访问 nmap 网络扫描功能的途径,可实现扫描操作、结果存储与分析等功能。
Nmap MCP 服务器能让你轻松使用 nmap 进行网络扫描。你可以按照以下步骤快速开启使用:
python-libnmap
库。安装 python-libnmap
:
pip install python-libnmap
安装 nmap:
# 在 Debian/Ubuntu 上
sudo apt-get install nmap
# 在 Fedora/CentOS 上
sudo dnf install nmap
python -m src.nmap_mcp
pip install -e .
nmap-mcp
run-nmap-scan
target
:目标主机或网络(例如 192.168.1.1 或 192.168.1.0/24)。options
:nmap 选项(例如 -sV -p 1-1000)。get-scan-details
scan_id
:要检索的扫描 ID。list-all-scans
analyze-scan
scan_id
:要分析的扫描 ID。focus
:分析焦点(安全/服务/概述)。扫描结果以带有 nmap://scan/{scan_id}
URI 方案的资源形式提供。
调用工具:run-nmap-scan
参数:{"target": "192.168.1.0/24", "options": "-sV -p 22,80,443"}
调用工具:get-scan-details
参数:{"scan_id": "<上一步骤中的 scan_id>"}
调用工具:list-all-scans
获取提示:analyze-scan
参数:{"scan_id": "", "focus": "安全"}
⚠️ 重要提示
此服务器会在您的系统上执行 nmap 命令。请谨慎扫描您没有所有权或未获得许可的网络,因为未经授权的扫描在某些司法管辖区可能是非法的。
若遇到与 nmap 未找到或执行错误相关的问题,可按以下步骤排查:
你可以将 MCP 服务器运行在 Docker 容器中,具体操作如下:
# 构建 Docker 镜像
docker build -t nmap-mcp-server .
# 运行 Docker 容器
docker run -it --rm nmap-mcp-server
与 Glama MCP 目录集成后,Docker 容器能让其他人无需担心安装依赖项即可轻松使用此 MCP 服务器。
本项目采用 MIT 许可证,具体内容请参阅 LICENSE 文件。