NestDaddy

NetBox MCP

io.github.mhajder/netbox-mcp · v0.3.0

MCP server for NetBox DCIM/IPAM with read-only and dry-run modes

Connect Runs on your machine

Terminal
claude mcp add netbox-mcp -e NETBOX_URL=<NETBOX_URL> -e NETBOX_TOKEN=<NETBOX_TOKEN> -e NETBOX_VERIFY_SSL=<NETBOX_VERIFY_SSL> -e NETBOX_TIMEOUT=<NETBOX_TIMEOUT> -e NETBOX_BRANCHING_ENABLED=<NETBOX_BRANCHING_ENABLED> -e NETBOX_BRANCH=<NETBOX_BRANCH> -e NETBOX_PLUGIN_DISCOVERY=<NETBOX_PLUGIN_DISCOVERY> -e READ_ONLY_MODE=<READ_ONLY_MODE> -e DRY_RUN_MODE=<DRY_RUN_MODE> -e DISABLED_TAGS=<DISABLED_TAGS> -e LOG_LEVEL=<LOG_LEVEL> -e RESPONSE_MAX_SIZE=<RESPONSE_MAX_SIZE> -e RATE_LIMIT_ENABLED=<RATE_LIMIT_ENABLED> -e RATE_LIMIT_MAX_REQUESTS=<RATE_LIMIT_MAX_REQUESTS> -e RATE_LIMIT_WINDOW_MINUTES=<RATE_LIMIT_WINDOW_MINUTES> -e TOOL_SEARCH_ENABLED=<TOOL_SEARCH_ENABLED> -e TOOL_SEARCH_STRATEGY=<TOOL_SEARCH_STRATEGY> -e TOOL_SEARCH_MAX_RESULTS=<TOOL_SEARCH_MAX_RESULTS> -- uvx netbox-mcp==0.3.0
claude_desktop_config.json
{
  "mcpServers": {
    "netbox-mcp": {
      "command": "uvx",
      "args": [
        "netbox-mcp==0.3.0"
      ],
      "env": {
        "NETBOX_URL": "<NETBOX_URL>",
        "NETBOX_TOKEN": "<NETBOX_TOKEN>",
        "NETBOX_VERIFY_SSL": "<NETBOX_VERIFY_SSL>",
        "NETBOX_TIMEOUT": "<NETBOX_TIMEOUT>",
        "NETBOX_BRANCHING_ENABLED": "<NETBOX_BRANCHING_ENABLED>",
        "NETBOX_BRANCH": "<NETBOX_BRANCH>",
        "NETBOX_PLUGIN_DISCOVERY": "<NETBOX_PLUGIN_DISCOVERY>",
        "READ_ONLY_MODE": "<READ_ONLY_MODE>",
        "DRY_RUN_MODE": "<DRY_RUN_MODE>",
        "DISABLED_TAGS": "<DISABLED_TAGS>",
        "LOG_LEVEL": "<LOG_LEVEL>",
        "RESPONSE_MAX_SIZE": "<RESPONSE_MAX_SIZE>",
        "RATE_LIMIT_ENABLED": "<RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<TOOL_SEARCH_MAX_RESULTS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "netbox-mcp": {
      "command": "uvx",
      "args": [
        "netbox-mcp==0.3.0"
      ],
      "env": {
        "NETBOX_URL": "<NETBOX_URL>",
        "NETBOX_TOKEN": "<NETBOX_TOKEN>",
        "NETBOX_VERIFY_SSL": "<NETBOX_VERIFY_SSL>",
        "NETBOX_TIMEOUT": "<NETBOX_TIMEOUT>",
        "NETBOX_BRANCHING_ENABLED": "<NETBOX_BRANCHING_ENABLED>",
        "NETBOX_BRANCH": "<NETBOX_BRANCH>",
        "NETBOX_PLUGIN_DISCOVERY": "<NETBOX_PLUGIN_DISCOVERY>",
        "READ_ONLY_MODE": "<READ_ONLY_MODE>",
        "DRY_RUN_MODE": "<DRY_RUN_MODE>",
        "DISABLED_TAGS": "<DISABLED_TAGS>",
        "LOG_LEVEL": "<LOG_LEVEL>",
        "RESPONSE_MAX_SIZE": "<RESPONSE_MAX_SIZE>",
        "RATE_LIMIT_ENABLED": "<RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<TOOL_SEARCH_MAX_RESULTS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "netbox-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "netbox-mcp==0.3.0"
      ],
      "env": {
        "NETBOX_URL": "<NETBOX_URL>",
        "NETBOX_TOKEN": "<NETBOX_TOKEN>",
        "NETBOX_VERIFY_SSL": "<NETBOX_VERIFY_SSL>",
        "NETBOX_TIMEOUT": "<NETBOX_TIMEOUT>",
        "NETBOX_BRANCHING_ENABLED": "<NETBOX_BRANCHING_ENABLED>",
        "NETBOX_BRANCH": "<NETBOX_BRANCH>",
        "NETBOX_PLUGIN_DISCOVERY": "<NETBOX_PLUGIN_DISCOVERY>",
        "READ_ONLY_MODE": "<READ_ONLY_MODE>",
        "DRY_RUN_MODE": "<DRY_RUN_MODE>",
        "DISABLED_TAGS": "<DISABLED_TAGS>",
        "LOG_LEVEL": "<LOG_LEVEL>",
        "RESPONSE_MAX_SIZE": "<RESPONSE_MAX_SIZE>",
        "RATE_LIMIT_ENABLED": "<RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<TOOL_SEARCH_MAX_RESULTS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
NETBOX_URL
Required
NetBox base URL (e.g., https://netbox.example.com)
NETBOX_TOKEN
Required, secret
NetBox API token: v2 (nbt_<key>.<token>, NetBox 4.5+) or legacy v1
NETBOX_VERIFY_SSL
Optional
Verify SSL certificates (true/false)
NETBOX_TIMEOUT
Optional
Total time allowed for one NetBox request, retries included (seconds)
NETBOX_BRANCHING_ENABLED
Optional
Enable netbox-branching support: branch tools and the 'branch' argument (requires the netbox-branching plugin) (true/false)
NETBOX_BRANCH
Optional
Default netbox-branching branch (name or schema ID) for every call; requires NETBOX_BRANCHING_ENABLED=true
NETBOX_PLUGIN_DISCOVERY
Optional
Discover plugin object types from /api/core/object-types/ (true/false)
READ_ONLY_MODE
Optional
Hide all write tools (create, update, delete) (true/false)
DRY_RUN_MODE
Optional
Write tools only simulate changes and never modify NetBox (true/false)
DISABLED_TAGS
Optional
Comma-separated tool tags to disable (e.g. delete,graphql,branching)
LOG_LEVEL
Optional
Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
RESPONSE_MAX_SIZE
Optional
Maximum tool response size in bytes (unset = unlimited)
RATE_LIMIT_ENABLED
Optional
Enable rate limiting
RATE_LIMIT_MAX_REQUESTS
Optional
Maximum requests per rate limit window
RATE_LIMIT_WINDOW_MINUTES
Optional
Rate limit window in minutes
TOOL_SEARCH_ENABLED
Optional
Enable FastMCP tool search transform
TOOL_SEARCH_STRATEGY
Optional
Tool search strategy (bm25 or regex)
TOOL_SEARCH_MAX_RESULTS
Optional
Maximum tool search results returned by search_tools

Details

Package[email protected] (PYPI, stdio)
Package[email protected] (PYPI, streamable-http)
Packageghcr.io/mhajder/netbox-mcp:0.3.0 (OCI, streamable-http)
First published7 Nov 2026
Last updated7 Nov 2026
Registry nameio.github.mhajder/netbox-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.