网络扫描服务

一个基于MCP协议的NMAP服务器,为AI助手提供网络扫描功能,支持快速扫描、全端口扫描和版本检测等核心功能。

  • by PhialsBasement
  • JavaScript
  • 本地部署
  • 49 星标
  • 更新于
在 GitHub 查看 PhialsBasement/nmap-mcp-server

使用说明

除非你愿意因迅速注射而使自己暴露在可能的漏洞中,否则不要使用这个。此存储库未被积极处理


MCP NMAP服务器

一种模型上下文协议(MCP)服务器,使AI助手能够使用NMAP执行网络扫描操作。该服务器为AI模型提供了一个标准化的接口,用于与NMAP交互,从而可以通过AI对话进行网络分析和安全评估。

先决条件

  • Windows操作系统
  • Node.js(v18或更高版本)
  • NMAP已安装,可从Windows命令行访问
  • TypeScript用于开发

安装

使用npm全局安装包:

npm install -g mcp-nmap-server

或者在项目中本地安装:

npm install mcp-nmap-server

特性

服务器通过一个简单的界面提供对NMAP核心功能的访问。它支持快速扫描、全端口扫描、版本检测和自定义计时模板。该实现使用NMAP的本机命令行界面,确保与标准NMAP操作的可靠性和一致性。

使用Claude Desktop进行配置

要将此服务器与Windows上的Claude Desktop一起使用,您需要在位于以下位置的Claude配置文件中对其进行配置: C:\Users\YOUR_USERNAME\AppData\Roaming\Claude\config.json

通过将NMAP服务器添加到 mcpServers 部分。以下是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服务器的路径。

使用AI

配置后,像Claude这样的人工智能助手可以通过 run_nmap_scan 功能。该函数接受以下参数:

{
    target: string;            // Host or network to scan
    ports?: string;           // Optional port specification (e.g., "80,443" or "1-1000")
    scanType?: 'quick' | 'full' | 'version';  // Scan type (default: 'quick')
    timing?: number;          // NMAP timing template 0-5 (default: 3)
    additionalFlags?: string; // Optional additional NMAP flags
}

与克劳德的对话示例:

Human: Can you scan localhost for open ports?

Claude: I'll help you scan localhost using NMAP.

<runs nmap scan with parameters>
target: "localhost"
scanType: "quick"
timing: 3

许可证

MIT许可证

支持

有关问题、建议或贡献,请访问GitHub存储库。