create_ip_pool
Creates an IP address pool with one static subnet and allocation range for NSX consumers, preventing overlapping ranges and verifying usage after creation.
Instructions
[WRITE] Create an IP address pool with one static subnet and allocation range.
IP pools supply addresses to NSX consumers such as tunnel endpoints. Run list_ip_pools first to avoid overlapping ranges; start_ip and end_ip must both fall inside cidr. The same pool_id overwrites (PUT). Returns {"created", "pool_id", "subnets_created", "subnets_failed"}. If the subnet failed it also has "error": the pool itself WAS created and needs cleaning up (the error says how). Other failures return {"error", "hint"}. Verify with get_ip_pool_usage; delete_ip_pool is the inverse.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"pool_id": "<pool_id>",
"display_name": "<display_name>",
"start_ip": "<start_ip>",
"end_ip": "<end_ip>",
"cidr": "<cidr>"
},
"name": "create_ip_pool"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cidr | Yes | Subnet containing the range, e.g. "192.168.1.0/24". | |
| end_ip | Yes | Last allocatable IPv4 address, e.g. "192.168.1.100". | |
| target | No | NSX Manager target from config (default if omitted). | |
| pool_id | Yes | Unique id (alphanumerics, hyphens, underscores only); becomes /infra/ip-pools/<pool_id>. | |
| start_ip | Yes | First allocatable IPv4 address, e.g. "192.168.1.10". | |
| gateway_ip | No | Subnet default gateway, e.g. "192.168.1.1". | |
| display_name | Yes | UI display name. |