NetBox MCP服务器
一种模型上下文协议(MCP)服务器,连接到NetBox并公开网络基础设施数据,供Claude和其他兼容MCP的LLM使用。
概述
此服务器在NetBox和兼容MCP的LLM(如Claude)之间提供了一个桥梁,允许您:
- 查询和分析您的网络基础设施数据
- 检查设备配置和连接
- 检查虚拟化集群和虚拟机
- 分析VLAN、IP地址分配等
- 生成网络拓扑信息
- 检测群集中的NVMe存储
服务器公开:
- 工具:执行操作的功能
需求
- Python 3.10或更高版本
- 具有API访问权限的NetBox实例
- 具有读取权限的NetBox API令牌
httpxHTTP请求库mcp用于模型上下文协议的Python SDK
安装
使用紫外线(推荐)
# Create a virtual environment
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install required packages
uv add mcp httpx使用pip
# Create a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install required packages
pip install mcp httpx用法
直接运行服务器
python netbox_server.py --url https://your-netbox-instance.example.com --token your-api-token您还可以设置环境变量,而不是使用命令行参数:
export NETBOX_URL="https://your-netbox-instance.example.com"
export NETBOX_TOKEN="your-api-token"
python netbox_server.py与Claude Desktop集成
要与Claude Desktop集成,请执行以下操作:
- 从以下位置安装Claude Desktop
- 打开克劳德菜单,选择“设置…”
- 点击左侧边栏中的“开发人员”
- 点击“编辑配置”
- 将NetBox服务器配置添加到
claude_desktop_config.json:
{
"mcpServers": {
"netbox": {
"command": "python",
"args": [
"/path/to/netbox_server.py",
"--url",
"https://your-netbox-instance.example.com",
"--token",
"your-api-token"
]
}
}
}- 保存文件并重新启动Claude Desktop
可用特征
工具
服务器提供以下工具:
get_all_clusters-获取所有包含关键信息的集群列表get_cluster_virtual_machines-获取特定集群中的所有虚拟机get_cluster_interfaces-从群集中的所有VM获取所有接口
Claude的查询示例
服务器连接到Claude Desktop后,您可以提出以下问题:
- “显示NetBox实例中所有集群的列表”
- “显示主群集中的所有虚拟机”
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

