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