NetBox MCP Server - Read & Write Edition
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NETBOX_URL | Yes | The URL of your NetBox instance | |
| NETBOX_TOKEN | Yes | Your NetBox API token |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| netbox_get_objectsB | Get objects from NetBox based on their type and filters Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") filters: dict of filters to apply to the API call based on the NetBox API filtering options Valid object_type values: DCIM (Device and Infrastructure):
IPAM (IP Address Management):
Circuits:
Virtualization:
Tenancy:
VPN:
Wireless:
See NetBox API documentation for filtering options for each object type. |
| netbox_get_object_by_idC | Get detailed information about a specific NetBox object by its ID. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") object_id: The numeric ID of the object Returns: Complete object details |
| netbox_get_changelogsA | Get object change records (changelogs) from NetBox based on filters. Args: filters: dict of filters to apply to the API call based on the NetBox API filtering options Returns: List of changelog objects matching the specified filters Filtering options include:
Example: To find all changes made to a specific device with ID 123: {"changed_object_type_id": "dcim.device", "changed_object_id": 123} To find all deletions in the last 24 hours: {"action": "delete", "time_after": "2023-01-01T00:00:00Z"} Each changelog entry contains:
|
| netbox_create_objectB | Create a new object in NetBox. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") data: Dict containing the object data to create Returns: The created object as a dict Example: To create a new site: netbox_create_object("sites", { "name": "New Site", "slug": "new-site", "status": "active" }) To create a new device: netbox_create_object("devices", { "name": "new-device", "device_type": 1, # ID of device type "site": 1, # ID of site "role": 1, # ID of device role "status": "active" }) |
| netbox_update_objectB | Update an existing object in NetBox. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") object_id: The numeric ID of the object to update data: Dict containing the object data to update (only changed fields needed) Returns: The updated object as a dict Example: To update a site's description: netbox_update_object("sites", 1, {"description": "Updated description"}) To change a device's status: netbox_update_object("devices", 5, {"status": "offline"}) |
| netbox_delete_objectA | Delete an object from NetBox. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") object_id: The numeric ID of the object to delete Returns: True if deletion was successful WARNING: This permanently deletes the object and cannot be undone! Example: To delete a device: netbox_delete_object("devices", 5) To delete an IP address: netbox_delete_object("ip-addresses", 123) |
| netbox_bulk_create_objectsB | Create multiple objects in NetBox in a single request. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") data: List of dicts containing the object data to create Returns: List of created objects Example: To create multiple sites: netbox_bulk_create_objects("sites", [ {"name": "Site A", "slug": "site-a", "status": "active"}, {"name": "Site B", "slug": "site-b", "status": "active"} ]) |
| netbox_bulk_update_objectsA | Update multiple objects in NetBox in a single request. Args: object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") data: List of dicts containing the object data to update (must include "id" field) Returns: List of updated objects Example: To update multiple devices: netbox_bulk_update_objects("devices", [ {"id": 1, "status": "offline"}, {"id": 2, "status": "maintenance"} ]) |
| netbox_bulk_delete_objectsA | Delete multiple objects from NetBox in a single request. Args:
object_type: String representing the NetBox object type (e.g. "devices", "ip-addresses") Returns: Success status WARNING: This permanently deletes the objects and cannot be undone! Example: To delete multiple devices: netbox_bulk_delete_objects("devices", [5, 6, 7]) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/alexkiwi1/netbox-mcp-rw'
If you have feedback or need assistance with the MCP directory API, please join our Discord server