NetBox MCP
Rank #20,958io.github.mhajder/netbox-mcp
MCP server for NetBox DCIM/IPAM with read-only and dry-run modes
What you can do with NetBox MCP
NetBox MCP is a Model Context Protocol (MCP) server published by mhajder. It ranks #20,958 of 144,396 active servers on MCP Toplist, and its repository has 1 GitHub stars. NetBox MCP is listed across 2 registries — Official MCP and Glama, with 1 tracked version. It was first listed on Sep 26, 2026 and most recently updated on Sep 26, 2026.
Not verifiedMCP Toplist has not yet written a checked profile for this server, so the paragraph above is assembled from registry data only. The repository README is the authority on what it does.
What NetBox MCP can and cannot do
Not verifiedMCP Toplist has not catalogued this server's tools or limitations. The repository README lists them.
What you need before using NetBox MCP
The registry listing declares required configuration before first use — typically an API key, token or connection string set via environment variables.
Declared by Glama, last synced Oct 16, 2026. Not independently verified by MCP Toplist.
- NETBOX_URL · required
- NETBOX_TOKEN · required
- NETBOX_VERIFY_SSL · optional
- NETBOX_TIMEOUT · optional
- NETBOX_BRANCHING_ENABLED · optional
- NETBOX_BRANCH · optional
- NETBOX_PLUGIN_DISCOVERY · optional
- READ_ONLY_MODE · optional
- DRY_RUN_MODE · optional
- DISABLED_TAGS · optional
- LOG_LEVEL · optional
- RESPONSE_MAX_SIZE · optional
- RATE_LIMIT_ENABLED · optional
- RATE_LIMIT_MAX_REQUESTS · optional
- RATE_LIMIT_WINDOW_MINUTES · optional
- TOOL_SEARCH_ENABLED · optional
- TOOL_SEARCH_STRATEGY · optional
- TOOL_SEARCH_MAX_RESULTS · optional
- MCP_HTTP_PORT · optional
- MCP_TRANSPORT · optional
Connect NetBox MCP and confirm it works
claude mcp add netbox-mcp -e "NETBOX_URL=<your NETBOX_URL>" -e "NETBOX_TOKEN=<your NETBOX_TOKEN>" -e "NETBOX_VERIFY_SSL=<your NETBOX_VERIFY_SSL>" -e "NETBOX_TIMEOUT=<your NETBOX_TIMEOUT>" -e "NETBOX_BRANCHING_ENABLED=<your NETBOX_BRANCHING_ENABLED>" -e "NETBOX_BRANCH=<your NETBOX_BRANCH>" -e "NETBOX_PLUGIN_DISCOVERY=<your NETBOX_PLUGIN_DISCOVERY>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DRY_RUN_MODE=<your DRY_RUN_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RESPONSE_MAX_SIZE=<your RESPONSE_MAX_SIZE>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -- uvx netbox-mcpReplace each placeholder with your own value before saving.
claude mcp add netbox-mcp -e "NETBOX_URL=<your NETBOX_URL>" -e "NETBOX_TOKEN=<your NETBOX_TOKEN>" -e "NETBOX_VERIFY_SSL=<your NETBOX_VERIFY_SSL>" -e "NETBOX_TIMEOUT=<your NETBOX_TIMEOUT>" -e "NETBOX_BRANCHING_ENABLED=<your NETBOX_BRANCHING_ENABLED>" -e "NETBOX_BRANCH=<your NETBOX_BRANCH>" -e "NETBOX_PLUGIN_DISCOVERY=<your NETBOX_PLUGIN_DISCOVERY>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DRY_RUN_MODE=<your DRY_RUN_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RESPONSE_MAX_SIZE=<your RESPONSE_MAX_SIZE>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -e "MCP_HTTP_PORT=<your MCP_HTTP_PORT>" -e "MCP_TRANSPORT=<your MCP_TRANSPORT>" -- uvx netbox-mcpReplace each placeholder with your own value before saving.
claude mcp add netbox-mcp -e "NETBOX_URL=<your NETBOX_URL>" -e "NETBOX_TOKEN=<your NETBOX_TOKEN>" -e "NETBOX_VERIFY_SSL=<your NETBOX_VERIFY_SSL>" -e "NETBOX_TIMEOUT=<your NETBOX_TIMEOUT>" -e "NETBOX_BRANCHING_ENABLED=<your NETBOX_BRANCHING_ENABLED>" -e "NETBOX_BRANCH=<your NETBOX_BRANCH>" -e "NETBOX_PLUGIN_DISCOVERY=<your NETBOX_PLUGIN_DISCOVERY>" -e "READ_ONLY_MODE=<your READ_ONLY_MODE>" -e "DRY_RUN_MODE=<your DRY_RUN_MODE>" -e "DISABLED_TAGS=<your DISABLED_TAGS>" -e "LOG_LEVEL=<your LOG_LEVEL>" -e "RESPONSE_MAX_SIZE=<your RESPONSE_MAX_SIZE>" -e "RATE_LIMIT_ENABLED=<your RATE_LIMIT_ENABLED>" -e "RATE_LIMIT_MAX_REQUESTS=<your RATE_LIMIT_MAX_REQUESTS>" -e "RATE_LIMIT_WINDOW_MINUTES=<your RATE_LIMIT_WINDOW_MINUTES>" -e "TOOL_SEARCH_ENABLED=<your TOOL_SEARCH_ENABLED>" -e "TOOL_SEARCH_STRATEGY=<your TOOL_SEARCH_STRATEGY>" -e "TOOL_SEARCH_MAX_RESULTS=<your TOOL_SEARCH_MAX_RESULTS>" -e "MCP_HTTP_PORT=<your MCP_HTTP_PORT>" -- docker run -i --rm -p "{MCP_HTTP_PORT}:8000" ghcr.io/mhajder/netbox-mcp:0.1.0Replace each placeholder with your own value before saving.
[mcp_servers.netbox-mcp]
command = "uvx"
args = ["netbox-mcp"]
[mcp_servers.netbox-mcp.env]
NETBOX_URL = "<your NETBOX_URL>"
NETBOX_TOKEN = "<your NETBOX_TOKEN>"
NETBOX_VERIFY_SSL = "<your NETBOX_VERIFY_SSL>"
NETBOX_TIMEOUT = "<your NETBOX_TIMEOUT>"
NETBOX_BRANCHING_ENABLED = "<your NETBOX_BRANCHING_ENABLED>"
NETBOX_BRANCH = "<your NETBOX_BRANCH>"
NETBOX_PLUGIN_DISCOVERY = "<your NETBOX_PLUGIN_DISCOVERY>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DRY_RUN_MODE = "<your DRY_RUN_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RESPONSE_MAX_SIZE = "<your RESPONSE_MAX_SIZE>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.netbox-mcp]
command = "uvx"
args = ["netbox-mcp"]
[mcp_servers.netbox-mcp.env]
NETBOX_URL = "<your NETBOX_URL>"
NETBOX_TOKEN = "<your NETBOX_TOKEN>"
NETBOX_VERIFY_SSL = "<your NETBOX_VERIFY_SSL>"
NETBOX_TIMEOUT = "<your NETBOX_TIMEOUT>"
NETBOX_BRANCHING_ENABLED = "<your NETBOX_BRANCHING_ENABLED>"
NETBOX_BRANCH = "<your NETBOX_BRANCH>"
NETBOX_PLUGIN_DISCOVERY = "<your NETBOX_PLUGIN_DISCOVERY>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DRY_RUN_MODE = "<your DRY_RUN_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RESPONSE_MAX_SIZE = "<your RESPONSE_MAX_SIZE>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"
MCP_HTTP_PORT = "<your MCP_HTTP_PORT>"
MCP_TRANSPORT = "<your MCP_TRANSPORT>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.netbox-mcp]
command = "docker"
args = ["run", "-i", "--rm", "-p", "{MCP_HTTP_PORT}:8000", "ghcr.io/mhajder/netbox-mcp:0.1.0"]
[mcp_servers.netbox-mcp.env]
NETBOX_URL = "<your NETBOX_URL>"
NETBOX_TOKEN = "<your NETBOX_TOKEN>"
NETBOX_VERIFY_SSL = "<your NETBOX_VERIFY_SSL>"
NETBOX_TIMEOUT = "<your NETBOX_TIMEOUT>"
NETBOX_BRANCHING_ENABLED = "<your NETBOX_BRANCHING_ENABLED>"
NETBOX_BRANCH = "<your NETBOX_BRANCH>"
NETBOX_PLUGIN_DISCOVERY = "<your NETBOX_PLUGIN_DISCOVERY>"
READ_ONLY_MODE = "<your READ_ONLY_MODE>"
DRY_RUN_MODE = "<your DRY_RUN_MODE>"
DISABLED_TAGS = "<your DISABLED_TAGS>"
LOG_LEVEL = "<your LOG_LEVEL>"
RESPONSE_MAX_SIZE = "<your RESPONSE_MAX_SIZE>"
RATE_LIMIT_ENABLED = "<your RATE_LIMIT_ENABLED>"
RATE_LIMIT_MAX_REQUESTS = "<your RATE_LIMIT_MAX_REQUESTS>"
RATE_LIMIT_WINDOW_MINUTES = "<your RATE_LIMIT_WINDOW_MINUTES>"
TOOL_SEARCH_ENABLED = "<your TOOL_SEARCH_ENABLED>"
TOOL_SEARCH_STRATEGY = "<your TOOL_SEARCH_STRATEGY>"
TOOL_SEARCH_MAX_RESULTS = "<your TOOL_SEARCH_MAX_RESULTS>"
MCP_HTTP_PORT = "<your MCP_HTTP_PORT>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:8000",
"ghcr.io/mhajder/netbox-mcp:0.1.0"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:8000",
"ghcr.io/mhajder/netbox-mcp:0.1.0"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"servers": {
"netbox-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"netbox-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"netbox-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:8000",
"ghcr.io/mhajder/netbox-mcp:0.1.0"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:8000",
"ghcr.io/mhajder/netbox-mcp:0.1.0"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "uvx",
"args": [
"netbox-mcp"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>",
"MCP_TRANSPORT": "<your MCP_TRANSPORT>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"netbox-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"{MCP_HTTP_PORT}:8000",
"ghcr.io/mhajder/netbox-mcp:0.1.0"
],
"env": {
"NETBOX_URL": "<your NETBOX_URL>",
"NETBOX_TOKEN": "<your NETBOX_TOKEN>",
"NETBOX_VERIFY_SSL": "<your NETBOX_VERIFY_SSL>",
"NETBOX_TIMEOUT": "<your NETBOX_TIMEOUT>",
"NETBOX_BRANCHING_ENABLED": "<your NETBOX_BRANCHING_ENABLED>",
"NETBOX_BRANCH": "<your NETBOX_BRANCH>",
"NETBOX_PLUGIN_DISCOVERY": "<your NETBOX_PLUGIN_DISCOVERY>",
"READ_ONLY_MODE": "<your READ_ONLY_MODE>",
"DRY_RUN_MODE": "<your DRY_RUN_MODE>",
"DISABLED_TAGS": "<your DISABLED_TAGS>",
"LOG_LEVEL": "<your LOG_LEVEL>",
"RESPONSE_MAX_SIZE": "<your RESPONSE_MAX_SIZE>",
"RATE_LIMIT_ENABLED": "<your RATE_LIMIT_ENABLED>",
"RATE_LIMIT_MAX_REQUESTS": "<your RATE_LIMIT_MAX_REQUESTS>",
"RATE_LIMIT_WINDOW_MINUTES": "<your RATE_LIMIT_WINDOW_MINUTES>",
"TOOL_SEARCH_ENABLED": "<your TOOL_SEARCH_ENABLED>",
"TOOL_SEARCH_STRATEGY": "<your TOOL_SEARCH_STRATEGY>",
"TOOL_SEARCH_MAX_RESULTS": "<your TOOL_SEARCH_MAX_RESULTS>",
"MCP_HTTP_PORT": "<your MCP_HTTP_PORT>"
}
}
}
}Replace each placeholder with your own value before saving.
After adding the config, ask your client to list this server's tools. A tool list confirms the connection; an empty list or an error means the server did not start or needs credentials.
When to choose another server
No task-specific alternatives are catalogued for NetBox MCPyet; the list above is its publisher's other servers.
What changed, and when this was checked
- First listed
- Sep 26, 2026
- Latest version published
- Sep 26, 2026
- Version history
- 1 version tracked (below)
- Requirements evidence
- Declared by Glama, last synced Oct 16, 2026. Not independently verified by MCP Toplist.
- Profile checked
- Not yet — purpose, capabilities and requirements above come from registry data only
- Ranking data as of
- Oct 16, 2026
- Official MCP ↗listed since Sep 27, 2026 · still listed
- Glama ↗listed since Sep 27, 2026 · still listed
Do you maintain NetBox MCP? to correct or enrich this profile.
Available versions (1)
| Version | Published |
|---|---|
| 0.1.0 | Sep 26, 2026 |
Ranks ahead of 123,438 of 144,396 servers on MCP Toplist.
Show your rank
Maintain this server? Add the live rank badge to your README — it updates automatically as the leaderboard changes.
[](https://mcptoplist.com/server/io.github.mhajder%2Fnetbox-mcp)<a href="https://mcptoplist.com/server/io.github.mhajder%2Fnetbox-mcp"><img src="https://mcptoplist.com/badge/io.github.mhajder%2Fnetbox-mcp.svg" alt="MCP Toplist: Top 25% of 144,396" /></a>Variants: append ?metric=score or ?metric=stars to the image URL.
Frequently asked questions
- Who maintains NetBox MCP?
- NetBox MCP is maintained by mhajder, which publishes 5 MCP servers (42 total versions) tracked on MCP Toplist.
- Is NetBox MCP listed on the Official MCP Registry?
- Yes — NetBox MCP is listed on the Official MCP Registry, alongside Glama.
- How many versions does NetBox MCP have?
- MCP Toplist tracks 1 version of NetBox MCP, most recently published on Sep 26, 2026.
- Where can I find the source code for NetBox MCP?
- The source code for NetBox MCP is hosted at github.com/mhajder/netbox-mcp.
Do you run this server?
Community projects list the MCP servers behind real agents and apps. Publish yours and this page will link to it.