NetBox MCP Server
A Model Context Protocol (MCP) server that connects to NetBox and exposes network infrastructure data for use with Claude and other MCP-compatible LLMs.
Overview
This server provides a bridge between NetBox and MCP-compatible LLMs like Claude, allowing you to:
- Query and analyze your network infrastructure data
- Check device configurations and connections
- Examine virtualization clusters and virtual machines
- Analyze VLANs, IP address allocations, and more
- Generate network topology information
- Detect NVMe storage in clusters
The server exposes:
- Tools: Functions that perform operations
Requirements
- Python 3.10 or higher
- NetBox instance with API access
- NetBox API token with read permissions
httpxlibrary for HTTP requestsmcpPython SDK for Model Context Protocol
Installation
Using uv (recommended)
# Create a virtual environment
uv venv
source .venv/bin/activate # On Windows: .venv\\Scripts\\activate
# Install required packages
uv add mcp httpx
Using 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
Usage
Running the Server Directly
python netbox_server.py --url https://your-netbox-instance.example.com --token your-api-token
You can also set environment variables instead of using command-line arguments:
export NETBOX_URL="https://your-netbox-instance.example.com"
export NETBOX_TOKEN="your-api-token"
python netbox_server.py
Integration with Claude Desktop
To integrate with Claude Desktop:
- Install Claude Desktop from https://claude.ai/download
- Open the Claude menu and select "Settings..."
- Click on "Developer" in the left sidebar
- Click on "Edit Config"
- Add the NetBox server configuration to
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"
]
}
}
}
- Save the file and restart Claude Desktop
Available Features
Tools
The server provides these tools:
get_all_clusters- Get list of all clusters with key informationget_cluster_virtual_machines- Get all VMs in a specific clusterget_cluster_interfaces- Get all interfaces from all VMs in a cluster
Example Queries for Claude
Once the server is connected to Claude Desktop, you can ask questions like:
- "Show me a list of all clusters in our NetBox instance"
- "Show me all the virtual machines in our primary cluster"
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- NetBox - Network infrastructure modeling
- Model Context Protocol - Protocol for providing context to LLMs
- Claude - Anthropic's AI assistant
Recommend MCP Servers 💡
MalwareBazaar_MCP
An AI-driven MCP server that autonomously interfaces with Malware Bazaar, delivering real-time threat intel and sample metadata for authorized cybersecurity research workflows.
fluxui-mcp-server
An MCP server providing reference information and documentation for Flux UI components, enabling AI assistants to access component details and usage examples.
CLDGeminiPDF
An MCP server that enables Claude Desktop to analyze PDF documents using Google's Gemini AI models, extracting text and providing intelligent analysis.
@powerdrillai/powerdrill-mcp
A Model Context Protocol (MCP) server that enables interaction with Powerdrill datasets using User ID and Project API Key.
youtube-video-summarizer-mcp
An MCP server that enables Claude to fetch and summarize YouTube videos by extracting titles, descriptions, and transcripts
@sakce/mcp-server-monday
An MCP server for Monday.com, allowing clients to interact with Monday.com boards, items, updates, and documents.