Skip to content

Repository files navigation

eNSP-AI-Go

基于 MCP (Model Context Protocol) 的 eNSP 网络设备管理服务器,使用 Go 编写。让 AI 助手(如 Claude)能够直接操作华为 eNSP 模拟器中的网络设备。

功能

  • 设备管理 — 自动发现、注册/注销、重命名 eNSP 设备
  • 配置下发 — 单设备/多设备批量推送配置,支持保存和查看运行配置
  • 网络诊断 — Ping、Traceroute、健康检查(单台/批量)
  • Display 快速查询 — 专用 display 工具,检测到提示符立即返回,自动禁用分页,无需等待 ---- More ----
  • 拓扑解析 — 解析 .topo 文件,提取设备、接口和链路连接关系;正确处理 eNSP 中文 Windows 环境下的 GBK 编码
  • 拓扑可视化 — 内置 Web 拓扑查看器,支持中文标注正常显示
  • CLI 执行 — 在设备上执行任意查询/配置命令

快速开始

编译

go build -o ensp-ai.exe .

配置 Claude Code

在 Claude Code 的 MCP 设置中添加:

{
  "mcpServers": {
    "ensp-ai": {
      "command": "A:\\ensp-AI-go\\ensp-ai.exe"
    }
  }
}

使用

启动 eNSP 拓扑后,AI 会自动通过 MCP 工具与设备交互:

> 自动发现设备
> 查看 R1 的路由表
> 给 SW1 配置 VLAN 10
> 检查所有设备健康状态
> 解析拓扑文件

MCP 工具列表

工具 说明
auto_discover 自动扫描发现 eNSP 设备
register_device 手动注册设备(名称 + 端口号)
unregister_device 注销设备
list_devices 列出已注册设备
rename_device 修改设备 sysname 并同步注册表
display 执行 display 子命令并立即返回完整输出(无分页等待)
execute_cli 执行任意查询命令
push_config 单设备配置下发
multi_device_push_config 多设备批量配置
get_running_config 获取运行配置
save_config 保存设备配置
ping Ping 测试(from/to 风格)
ping_from_device Ping 测试(支持指定源地址)
traceroute_from_device 路径追踪
health_check 单设备健康检查
multi_health_check 批量健康检查
discover_topology 解析 .topo 拓扑文件
find_topo_files 搜索拓扑文件
get_topology 读取已导入的拓扑数据

技术栈

  • Go 1.23
  • mcp-go — MCP 协议 SDK
  • 通过 Telnet 连接 eNSP 设备控制台端口

许可证

MIT

About

基于 MCP (Model Context Protocol) 的 eNSP 网络设备管理服务器,使用 Go 编写。让 AI 助手(如 Claude)能够直接操作华为 eNSP 模拟器中的网络设备。

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages