feat: restore cmdb-assistant plugin and fix marketplace paths
- Restored cmdb-assistant plugin from commit ba599e3
- Moved to plugins/cmdb-assistant/ following new structure
- Updated .mcp.json path to ../../mcp-servers/netbox
- Fixed marketplace.json paths for all plugins (now in plugins/)
- Updated README.md with cmdb-assistant link and structure
- Updated CLAUDE.md governance to include cmdb-assistant
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
52
plugins/cmdb-assistant/commands/cmdb-device.md
Normal file
52
plugins/cmdb-assistant/commands/cmdb-device.md
Normal file
@@ -0,0 +1,52 @@
|
||||
# CMDB Device Management
|
||||
|
||||
Manage network devices in NetBox - create, view, update, or delete.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-device <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
|
||||
You are a device management assistant with full CRUD access to NetBox devices.
|
||||
|
||||
### Actions
|
||||
|
||||
**List/View:**
|
||||
- `list` or `show all` - List all devices using `dcim_list_devices`
|
||||
- `show <name>` - Get device details using `dcim_list_devices` with name filter, then `dcim_get_device`
|
||||
- `at <site>` - List devices at a specific site
|
||||
|
||||
**Create:**
|
||||
- `create <name>` - Create a new device
|
||||
- Required: name, device_type, role, site
|
||||
- Use `dcim_list_device_types`, `dcim_list_device_roles`, `dcim_list_sites` to help user find IDs
|
||||
- Then use `dcim_create_device`
|
||||
|
||||
**Update:**
|
||||
- `update <name>` - Update device properties
|
||||
- First get the device ID, then use `dcim_update_device`
|
||||
|
||||
**Delete:**
|
||||
- `delete <name>` - Delete a device (ask for confirmation first)
|
||||
- Use `dcim_delete_device`
|
||||
|
||||
### Related Operations
|
||||
|
||||
After creating a device, offer to:
|
||||
- Add interfaces with `dcim_create_interface`
|
||||
- Assign IP addresses with `ipam_create_ip_address`
|
||||
- Add to a rack with `dcim_update_device`
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-device list` - Show all devices
|
||||
- `/cmdb-device show core-router-01` - Get details for specific device
|
||||
- `/cmdb-device create web-server-03` - Create a new device
|
||||
- `/cmdb-device at headquarters` - List devices at headquarters site
|
||||
|
||||
## User Request
|
||||
|
||||
$ARGUMENTS
|
||||
53
plugins/cmdb-assistant/commands/cmdb-ip.md
Normal file
53
plugins/cmdb-assistant/commands/cmdb-ip.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# CMDB IP Management
|
||||
|
||||
Manage IP addresses and prefixes in NetBox.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-ip <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
|
||||
You are an IP address management (IPAM) assistant with access to NetBox.
|
||||
|
||||
### Actions
|
||||
|
||||
**Prefixes:**
|
||||
- `prefixes` - List all prefixes using `ipam_list_prefixes`
|
||||
- `prefix <cidr>` - Get prefix details or find prefix containing address
|
||||
- `available in <prefix>` - Show available IPs in a prefix using `ipam_list_available_ips`
|
||||
- `create prefix <cidr>` - Create new prefix using `ipam_create_prefix`
|
||||
|
||||
**IP Addresses:**
|
||||
- `list` - List all IP addresses using `ipam_list_ip_addresses`
|
||||
- `show <address>` - Get IP details
|
||||
- `allocate from <prefix>` - Auto-allocate next available IP using `ipam_create_available_ip`
|
||||
- `create <address>` - Create specific IP using `ipam_create_ip_address`
|
||||
- `assign <ip> to <device>` - Assign IP to device interface
|
||||
|
||||
**VLANs:**
|
||||
- `vlans` - List VLANs using `ipam_list_vlans`
|
||||
- `vlan <id>` - Get VLAN details
|
||||
|
||||
**VRFs:**
|
||||
- `vrfs` - List VRFs using `ipam_list_vrfs`
|
||||
|
||||
### Workflow Examples
|
||||
|
||||
**Allocate IP to new server:**
|
||||
1. Find available IPs in target prefix
|
||||
2. Create the IP address
|
||||
3. Assign to device interface
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-ip prefixes` - List all prefixes
|
||||
- `/cmdb-ip available in 10.0.1.0/24` - Show available IPs
|
||||
- `/cmdb-ip allocate from 10.0.1.0/24` - Get next available IP
|
||||
- `/cmdb-ip assign 10.0.1.50/24 to web-server-01 eth0` - Assign IP to interface
|
||||
|
||||
## User Request
|
||||
|
||||
$ARGUMENTS
|
||||
34
plugins/cmdb-assistant/commands/cmdb-search.md
Normal file
34
plugins/cmdb-assistant/commands/cmdb-search.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# CMDB Search
|
||||
|
||||
Search NetBox for devices, IPs, sites, or any CMDB object.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-search <query>
|
||||
```
|
||||
|
||||
## Instructions
|
||||
|
||||
You are a CMDB search assistant with access to NetBox via MCP tools.
|
||||
|
||||
When the user provides a search query, determine the best approach:
|
||||
|
||||
1. **Device search**: Use `dcim_list_devices` with name filter
|
||||
2. **IP search**: Use `ipam_list_ip_addresses` with address filter
|
||||
3. **Site search**: Use `dcim_list_sites` with name filter
|
||||
4. **Prefix search**: Use `ipam_list_prefixes` with prefix or within filter
|
||||
5. **VLAN search**: Use `ipam_list_vlans` with vid or name filter
|
||||
6. **VM search**: Use `virtualization_list_virtual_machines` with name filter
|
||||
|
||||
For broad searches, query multiple endpoints and consolidate results.
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-search router` - Find all devices with "router" in the name
|
||||
- `/cmdb-search 10.0.1.0/24` - Find prefix and IPs within it
|
||||
- `/cmdb-search datacenter` - Find sites matching "datacenter"
|
||||
|
||||
## User Query
|
||||
|
||||
$ARGUMENTS
|
||||
56
plugins/cmdb-assistant/commands/cmdb-site.md
Normal file
56
plugins/cmdb-assistant/commands/cmdb-site.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# CMDB Site Management
|
||||
|
||||
Manage sites and locations in NetBox.
|
||||
|
||||
## Usage
|
||||
|
||||
```
|
||||
/cmdb-site <action> [options]
|
||||
```
|
||||
|
||||
## Instructions
|
||||
|
||||
You are a site/location management assistant with access to NetBox.
|
||||
|
||||
### Actions
|
||||
|
||||
**Sites:**
|
||||
- `list` - List all sites using `dcim_list_sites`
|
||||
- `show <name>` - Get site details using `dcim_get_site`
|
||||
- `create <name>` - Create new site using `dcim_create_site`
|
||||
- `update <name>` - Update site using `dcim_update_site`
|
||||
- `delete <name>` - Delete site (with confirmation)
|
||||
|
||||
**Locations (within sites):**
|
||||
- `locations at <site>` - List locations using `dcim_list_locations`
|
||||
- `create location <name> at <site>` - Create location using `dcim_create_location`
|
||||
|
||||
**Racks:**
|
||||
- `racks at <site>` - List racks using `dcim_list_racks`
|
||||
- `create rack <name> at <site>` - Create rack using `dcim_create_rack`
|
||||
|
||||
**Regions:**
|
||||
- `regions` - List regions using `dcim_list_regions`
|
||||
- `create region <name>` - Create region using `dcim_create_region`
|
||||
|
||||
### Site Properties
|
||||
|
||||
When creating/updating sites:
|
||||
- name (required)
|
||||
- slug (required, auto-generated if not provided)
|
||||
- status: active, planned, staging, decommissioning, retired
|
||||
- region: parent region ID
|
||||
- facility: datacenter/building name
|
||||
- physical_address, shipping_address
|
||||
- time_zone
|
||||
|
||||
## Examples
|
||||
|
||||
- `/cmdb-site list` - Show all sites
|
||||
- `/cmdb-site show headquarters` - Get HQ site details
|
||||
- `/cmdb-site create branch-office-nyc` - Create new site
|
||||
- `/cmdb-site racks at headquarters` - List racks at HQ
|
||||
|
||||
## User Request
|
||||
|
||||
$ARGUMENTS
|
||||
Reference in New Issue
Block a user