使用说明

项目简介

NetSensei 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在辅助网络管理员进行日常的网络管理工作。它通过集成各种网络工具,如 ping、traceroute、Nmap、tshark 和 Netmiko,为 LLM 客户端(如 Claude 或 OpenWebUI)提供强大的网络诊断和操作能力。用户可以通过自然语言指令,让 LLM 客户端调用 NetSensei 提供的工具,实现自动化网络任务。

主要功能点

  • 网络连通性测试 (Ping): 快速检测目标 IP 地址的网络连通性。
  • 路由追踪 (Traceroute): 分析数据包到达目标 IP 地址的网络路径。
  • 端口扫描 (Nmap Scan): 扫描目标 IP 地址或网段的开放端口和服务。支持自定义 Nmap 参数,提供灵活的扫描选项。
  • 数据包嗅探 (Packet Sniffer): 捕获和分析网络数据包,支持基于协议或关键词进行过滤,例如 DNS, HTTP, ICMP。
  • SSH 远程命令执行 (SSH connection): 通过 SSH 连接到网络设备(如交换机、路由器、服务器),并执行指定命令。支持多种设备类型,例如 Cisco, Aruba, Linux 服务器等。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/solaconsay/netsensei.git
    cd netsensei
  2. 安装依赖: 确保你的系统已安装 Python 3.x。然后,使用 pip 或 uv 安装项目依赖:

    pip install -r requirements.txt

    或者使用 uv (更快速):

    uv pip install -r requirements.txt

    注意: 确保 'tshark' (Wireshark 的命令行工具), 'nmap', 和 'netmiko' 已安装并添加到系统 PATH 环境变量中。

  3. 配置 MCP 客户端: 你需要配置你的 MCP 客户端(例如 Claude Desktop 或 OpenWebUI)来连接到 NetSensei 服务器。

服务器配置 (MCP 客户端)

以下是配置 Claude Desktop 连接 NetSensei 服务器的 JSON 格式示例。你需要将以下配置添加到 Claude Desktop 的配置文件中。

{
    "mcpServers": {
        "NetSensei": {
            "command": "uv",
            "args": [
                "run",
                "--with",
                "mcp[cli]",
                "mcp",
                "run",
                "/path/to/netsensei/main.py"  // 请替换为 netsensei 仓库 main.py 文件的实际路径
            ]
        }
    }
}

配置参数说明:

  • '"NetSensei"': 服务器名称,可以自定义,用于在 MCP 客户端中标识该服务器。
  • '"command": "uv"': 指定用于启动服务器的命令。这里使用 'uv' (一个更快的 pip 和 venv 替代品,如果使用 pip,则 command 为 'python')。
  • '"args"': 启动服务器的参数列表。
    • '"run"': 'uv run' 的子命令,用于运行 Python 脚本。
    • '"--with"': 'mcp run' 的参数,指定要加载的插件或扩展。
    • '"mcp[cli]"': 指定加载 'mcp' 命令行界面插件,这是运行 MCP 服务器的必要组件。
    • '"mcp"': 'mcp run' 命令本身。
    • '"run"': 'mcp run' 的子命令,表示运行服务器。
    • '"/path/to/netsensei/main.py"': 重要: 指向 'netsensei' 仓库中 'main.py' 文件的绝对路径。你需要根据你的实际文件路径进行修改。

如果你使用 OpenWebUI,可以使用以下命令启动 NetSensei 服务器并将其注册为 MCP 服务器:

uvx mcpo --port 9003 -- mcp run main.py

然后在 OpenWebUI 的 MCP 服务器配置中,配置服务器地址为 'http://localhost:9003'。

基本使用方法

配置完成后,在你的 MCP 客户端(如 Claude 或 OpenWebUI)中,你可以通过自然语言指令来调用 NetSensei 提供的网络工具。例如,你可以向 Claude 提问:

  • "Ping baidu.com"
  • "Traceroute to google.com"
  • "使用 Nmap 扫描 192.168.1.1/24 网段,使用快速扫描"
  • "列出我的网络接口"
  • "抓取接口 7 上 10 个 DNS 数据包"
  • "通过 SSH 连接到 IP 地址 10.10.10.1 的 Cisco 设备,并执行命令 show version"

LLM 客户端会将这些自然语言指令转换为对 NetSensei 服务器工具的调用,并将结果返回给你。

注意: SSH 功能需要提供用户名和密码,请在安全的环境下使用,并妥善保管你的 SSH 凭据。

信息

分类

开发者工具