NetBox MCP Server

NetBox MCP Server

site icon
2025.04.16 0
Python网络基础设施数据查询设备配置检查虚拟化管理开发效率
NetBox MCP Server 是一个模型上下文协议(MCP)服务器,用于连接 NetBox 并暴露网络基础设施数据,以便与 Claude 和其他兼容 MCP 的 LLM 一起使用。该服务器充当 NetBox 和 MCP 兼容 LLM 之间的桥梁,允许用户查询和分析网络基础设施数据、检查设备配置和连接、检查虚拟化集群和虚拟机、分析 VLAN 和 IP 地址分配等。
View on GitHub

Overview

基本能力

产品定位

NetBox MCP Server 是一个用于连接 NetBox 和 MCP 兼容 LLM 的桥梁服务器,主要用于网络基础设施数据的查询和分析。

核心功能

  • 查询和分析网络基础设施数据
  • 检查设备配置和连接
  • 检查虚拟化集群和虚拟机
  • 分析 VLAN 和 IP 地址分配
  • 生成网络拓扑信息
  • 检测集群中的 NVMe 存储

适用场景

  • 网络基础设施数据查询和分析
  • 设备配置和连接检查
  • 虚拟化集群和虚拟机管理
  • VLAN 和 IP 地址分配分析

工具列表

  • get_all_clusters - 获取所有集群及其关键信息
  • get_cluster_virtual_machines - 获取特定集群中的所有虚拟机
  • get_cluster_interfaces - 获取集群中所有虚拟机的接口

常见问题解答

使用教程

使用依赖

  • Python 3.10 或更高版本
  • 具有 API 访问权限的 NetBox 实例
  • 具有读取权限的 NetBox API 令牌
  • httpx 库用于 HTTP 请求
  • mcp Python SDK 用于模型上下文协议

安装教程

使用 uv(推荐)

# 创建虚拟环境
uv venv
source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate

# 安装所需包
uv add mcp httpx

使用 pip

# 创建虚拟环境
python -m venv venv
source venv/bin/activate  # 在 Windows 上:venv\Scripts\activate

# 安装所需包
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 集成

  1. https://claude.ai/download 安装 Claude Desktop
  2. 打开 Claude 菜单并选择 "Settings..."
  3. 点击左侧边栏中的 "Developer"
  4. 点击 "Edit Config"
  5. 将 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"
      ]
    }
  }
}
  1. 保存文件并重启 Claude Desktop

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。