基于 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 的 MCP 设置中添加:
{
"mcpServers": {
"ensp-ai": {
"command": "A:\\ensp-AI-go\\ensp-ai.exe"
}
}
}启动 eNSP 拓扑后,AI 会自动通过 MCP 工具与设备交互:
> 自动发现设备
> 查看 R1 的路由表
> 给 SW1 配置 VLAN 10
> 检查所有设备健康状态
> 解析拓扑文件
| 工具 | 说明 |
|---|---|
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