诺基亚SR OS NETCONF MCP服务器
MCP服务器,用于通过Claude Desktop的NETCONF管理诺基亚SR OS设备。
特性
- MD-CLI命令 --通过诺基亚特定的NETCONF RPC执行显示命令
- 获取配置/获取状态 --使用子树过滤器检索配置和操作状态
- 编辑配置 --使用合并/替换/删除操作修改配置
- 候选人工作流程 --编辑→ 比较→ 提交/回滚以确保安全更改
- 运行时凭据 --配置文件中没有密码;通过工具调用连接
- 多设备 --同时管理多个SR OS设备
安装
先决条件
- Python 3.10+
- 紫外线 (推荐)或pip
设置
# Clone or copy the project
cd nokia-netconf-mcp
# Option A: uv (recommended for Claude Desktop)
uv sync
# Option B: pip
pip install -e .本地测试
# With uv
uv run nokia-netconf-mcp
# With pip
nokia-netconf-mcp服务器通过stdio进行通信,它将在stdin上等待MCP协议消息。
Claude桌面配置
编辑您的Claude Desktop配置文件:
- 视窗:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
使用紫外线(推荐)
{
"mcpServers": {
"nokia-netconf": {
"command": "uv",
"args": [
"--directory",
"C:\\Users\\YourUser\\nokia-netconf-mcp",
"run",
"nokia-netconf-mcp"
]
}
}
}直接使用Python
{
"mcpServers": {
"nokia-netconf": {
"command": "python",
"args": [
"-m",
"nokia_netconf_mcp.server"
],
"env": {
"PYTHONPATH": "C:\\Users\\YourUser\\nokia-netconf-mcp\\src"
}
}
}
}用法
配置后,重新启动Claude Desktop。工具将自动显示。
1.连接到设备
使用用户名admin和密码Nokia123连接到我的SR OS路由器192.168.1.1,称之为pe1
克劳德会打电话的 sros_connect 凭你的证件。
2.显示命令
“显示pe1上的路由器接口” “在pe1上显示BGP摘要” “基于pe1显示服务id 100”
3.获取配置
“从pe1获取正在运行的VPRN配置” “显示pe1上的端口配置”
4.编辑配置(安全候选工作流)
“在pe1上创建IP为10.10.10.5/32的环回接口lo5”
克劳德将:
sros_edit_config→ 写信给候选人sros_compare→ 显示差异- 要求确认
sros_commit或sros_rollback
5.管理会话
“列出我的所有SROS会话” “断开与pe1的连接”
工具参考
| 工具 | 说明 |
|---|---|
sros_connect | 连接到设备(主机、端口、用户名、密码) |
sros_disconnect | 关闭NETCONF会话 |
sros_cli_command | 执行MD-CLI显示命令 |
sros_get_config | NETCONF使用子树过滤器获取配置(正在运行/候选) |
sros_get_state | 使用子树过滤器获取NETCONF(操作状态) |
sros_edit_config | NETCONF编辑配置(合并/替换/删除) |
sros_commit | 推荐候选人→ 跑步 |
sros_rollback | 放弃候选更改 |
sros_compare | 候选人与跑步者的差异 |
sros_list_sessions | 列出活动会话 |
诺基亚特别注意事项
- 用途
device_params={"name": "alu"}适用于ncclient(诺基亚/ALU NETCONF方言) - MD-CLI命令执行完毕
md-cli-raw-commandRPC(urn:nokia.com:sros:ns:yang:sr:oper-global) - 配置命名空间:
urn:nokia.com:sros:ns:yang:sr:conf - 状态命名空间:
urn:nokia.com:sros:ns:yang:sr:state - 子树过滤器遵循诺基亚杨型号结构
故障排除
连接被拒绝:确保SR OS设备上启用了NETCONF:
configure system management-interface netconf admin-state enable
configure system management-interface netconf auto-config-save
configure system security user-params local-user user "admin" access netconf超时:增加超时时间 sros_connect (默认60秒)。较大的get配置响应可能需要更多时间。
功能不匹配:服务器使用 device_params={"name": "alu"}。如果您的SR操作系统版本有问题,请检查ncclient兼容性。
