OpenStack MCP Server

23 MCP tools for managing OpenStack infrastructure — VMs, networking, images, flavors, and hypervisor statistics.

Overview

The OpenStack MCP Server provides 23 tools for interacting with the OpenStack API. It covers the full range of day-to-day infrastructure operations: VM lifecycle management, networking, image and flavor queries, security groups, and hypervisor statistics. This server talks to the OpenStack API (Nova, Neutron, Glance, Cinder); for container-level Kolla operations, see the Kolla MCP Server.

Property Value
Port 8080
Transport JSON-RPC at /jsonrpc
Namespace f3iai

Tools

Compute (Nova)

Tool Description
openstack_list_servers List all VMs, optionally filtered by project, status, or name pattern
openstack_get_server Get detailed information about a specific VM
openstack_create_server Create a new VM with specified flavor, image, network, and key pair
openstack_delete_server Delete a VM by ID or name
openstack_start_server Start a stopped VM
openstack_stop_server Stop a running VM
openstack_reboot_server Reboot a VM (soft or hard)
openstack_get_console_url Get a VNC console URL for a VM
openstack_list_flavors List available VM flavors (vCPUs, RAM, disk)
openstack_get_flavor Get details of a specific flavor
openstack_list_hypervisors List all hypervisors with summary statistics
openstack_get_hypervisor_stats Get aggregate hypervisor statistics (total/used vCPUs, RAM, disk)

Networking (Neutron)

Tool Description
openstack_list_networks List all networks
openstack_get_network Get details of a specific network
openstack_list_subnets List subnets, optionally filtered by network
openstack_list_routers List routers
openstack_list_floating_ips List floating IP addresses
openstack_list_security_groups List security groups
openstack_get_security_group Get details of a specific security group including rules

Images (Glance)

Tool Description
openstack_list_images List available images
openstack_get_image Get details of a specific image

Block Storage (Cinder)

Tool Description
openstack_list_volumes List block storage volumes
openstack_get_volume Get details of a specific volume

Common Use Cases

The OpenStack MCP Server handles natural-language queries from Compass chat such as:

  • “List all VMs on hyperv-2”
  • “Show me hypervisor stats”
  • “What images are available?”
  • “Create a new VM with 4 vCPUs and 8GB RAM on the internal network”
  • “Which security groups have port 22 open?”
  • “Show floating IPs that are not associated with any VM”

Authentication

The server authenticates to OpenStack using standard Keystone credentials provided via environment variables:

Environment Variable Description
OS_AUTH_URL Keystone authentication URL
OS_USERNAME OpenStack username
OS_PASSWORD OpenStack password
OS_PROJECT_NAME Default project scope
OS_USER_DOMAIN_NAME User domain (default: Default)
OS_PROJECT_DOMAIN_NAME Project domain (default: Default)

Health Endpoints

Endpoint Purpose
/health Liveness — process is running
/ready Readiness — can authenticate to Keystone