这是一个模型上下文协议(MCP)服务器,使AI助手能够使用NMAP执行网络扫描操作。该服务器提供了一个标准化接口,使AI模型能够与NMAP进行交互,从而通过AI对话实现网络分析和安全评估。
使用npm全局安装包:
npm install -g mcp-nmap-server
或者在项目中本地安装:
npm install mcp-nmap-server
服务器通过一个简单的接口提供了对NMAP核心功能的访问。它支持快速扫描、全端口扫描、版本检测以及自定义时间模板。实现使用了NMAP的原生命令行界面,确保了与标准NMAP操作的一致性和可靠性。
要在Windows上使用此服务器与Claude Desktop,您需要在以下位置的Claude配置文件中对其进行配置:
C:\Users\YOUR_USERNAME\AppData\Roaming\Claude\config.json
通过添加到mcpServers部分来将NMAP服务器添加到您的配置中。这里是一个完整的Claude Desktop配置文件示例:
{
"mcpServers": {
"nmap": {
"command": "node",
"args": [
"C:\\Users\\YOUR_USERNAME\\Downloads\\mcp-nmap-server\\dist\\index.js"
]
}
},
"globalShortcut": "Ctrl+Q"
}
将YOUR_USERNAME替换为您在Windows上的用户名,并根据您安装NMAP服务器的位置调整路径。
一旦配置完成,像Claude这样的AI助手可以通过run_nmap_scan函数使用该服务器。该函数接受以下参数:
{
target: string; // 要扫描的目标主机或网络
ports?: string; // 可选的端口规格(例如:"80,443" 或 "1-1000")
scanType?: 'quick' | 'full' | 'version'; // 扫描类型(默认:'quick')
timing?: number; // NMAP时间模板 0-5(默认:3)
additionalFlags?: string; // 可选的附加NMAP标志
}
与Claude的示例对话:
Human: 你能扫描本地主机以查找开放端口吗?
Claude: 我会帮助您使用NMAP扫描本地主机。
<运行具有参数的nmap扫描>
目标: "localhost"
扫描类型: "quick"
时间: 3
MIT许可证
对于问题、建议或贡献,请访问GitHub仓库。 </中文翻译>