mirror of
https://github.com/hansjone/netx.git
synced 2026-10-09 00:50:46 +08:00
2.9 KiB
2.9 KiB
| name | description | user-invocable | disable-model-invocation |
|---|---|---|---|
| netx-topology | 用 netx-topology MCP 查链路、画拓扑(不污染 Fabric)。触发:画拓扑、LLDP、Fabric、netx-topology。先读再调。 | true | false |
netx 拓扑 MCP
通过 netx-topology MCP(包 netx-topology-mcp)操作 netx 拓扑。与告警/CLI 的 netx MCP 分开;画图只用本包工具。
安装与 scopes 真源:仓库 docs/MCP_TOPOLOGY.md。
硬规则
- 先读后写:任何建图/摆点前先
getTopologyTree;改已有图前可getTopologyView(大图慎拉整图)。 - 筛选交给 API:加/挪/删优先传
keyword/role/vendor/link_status(加节点再用limit/offset)。不要先 list 全量再回传成千上万 id。 - 只动已有 Fabric:禁止
managed_ne_ids/ume_ne_ids;禁止臆造 fabric id。 - 不污染 Fabric:不能手工建链、不能 populate、不能删 Fabric / 整图。邻居用
projectTopologyNeighbors。 - 写权限:需要
ne:write。tools/list 没有写工具 → 停,让用户用「MCP + 拓扑写」签发 Token。 - 无区域则先建:
createTopologyView需要folder_id;没有合适区域时用createTopologyFolder,再createTopologyView建画布。 - 单画布硬顶 2000:满了
truncated/ 触顶 → 新建另一张画布继续;全网五万设备靠多画布切片。
推荐流水线(从零画一张图)
1 getTopologyTree → 看有无区域;没有则 createTopologyFolder → folder_id
2 createTopologyView → view_id
3 addTopologyViewNodes(keyword=…, limit) → 看 added / next_offset,循环 offset 直到无更多或满 cap
4 projectTopologyNeighbors → 可选
5 updateTopologyViewPositions(layout=grid|offset|stack, keyword=…) → API 自己筛并摆
6 (少量微调才用 positions[])
查链路不画图:queryTopologyEdges / queryTopologyNeighborhood。
工具速查
| 目的 | 工具 |
|---|---|
| 树 / 区域 / 画布 | getTopologyTree, createTopologyFolder, listTopologyViews, getTopologyView, createTopologyView |
| 筛选批量加 | addTopologyViewNodes(filters + limit/offset) |
| 筛选批量挪 | updateTopologyViewPositions(layout + filters) |
| 筛选批量删 | removeTopologyViewNodes(filters) |
| 投影邻居 | projectTopologyNeighbors |
| Fabric 读 | search… / list… / queryTopologyEdges / …Neighborhood / summary |
对人说清楚
- 网页观看:拓扑页开 「实时同步」(默认关)。
- 回报:
folder_id/view_id、画布名、added/updated/removed、是否truncated/next_offset。
不要做
- 不要用
netx告警 MCP 冒充拓扑写。 - 不要为画图去造 Fabric / 改 managed-NE。
- 不要在未确认 folder/view 时连环盲写。