Read-only-first OpenStack inspection: servers, images, volumes, networks, Keystone catalog.
Connect Runs on your machine
claude mcp add openstack-mcp-server -e OS_AUTH_URL=<OS_AUTH_URL> -e OS_USERNAME=<OS_USERNAME> -e OS_PASSWORD=<OS_PASSWORD> -e OS_USER_DOMAIN_NAME=<OS_USER_DOMAIN_NAME> -e OS_PROJECT_ID=<OS_PROJECT_ID> -e OS_APPLICATION_CREDENTIAL_ID=<OS_APPLICATION_CREDENTIAL_ID> -e OS_APPLICATION_CREDENTIAL_SECRET=<OS_APPLICATION_CREDENTIAL_SECRET> -e OS_REGION_NAME=<OS_REGION_NAME> -e OPENSTACK_MCP_PROJECT_IDS=<OPENSTACK_MCP_PROJECT_IDS> -e OPENSTACK_MCP_CACERT_PEM=<OPENSTACK_MCP_CACERT_PEM> -- docker run -i --rm ghcr.io/oomchiller/openstack-mcp-server:0.1.2
{
"mcpServers": {
"openstack-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/oomchiller/openstack-mcp-server:0.1.2"
],
"env": {
"OS_AUTH_URL": "<OS_AUTH_URL>",
"OS_USERNAME": "<OS_USERNAME>",
"OS_PASSWORD": "<OS_PASSWORD>",
"OS_USER_DOMAIN_NAME": "<OS_USER_DOMAIN_NAME>",
"OS_PROJECT_ID": "<OS_PROJECT_ID>",
"OS_APPLICATION_CREDENTIAL_ID": "<OS_APPLICATION_CREDENTIAL_ID>",
"OS_APPLICATION_CREDENTIAL_SECRET": "<OS_APPLICATION_CREDENTIAL_SECRET>",
"OS_REGION_NAME": "<OS_REGION_NAME>",
"OPENSTACK_MCP_PROJECT_IDS": "<OPENSTACK_MCP_PROJECT_IDS>",
"OPENSTACK_MCP_CACERT_PEM": "<OPENSTACK_MCP_CACERT_PEM>"
}
}
}
}
{
"mcpServers": {
"openstack-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/oomchiller/openstack-mcp-server:0.1.2"
],
"env": {
"OS_AUTH_URL": "<OS_AUTH_URL>",
"OS_USERNAME": "<OS_USERNAME>",
"OS_PASSWORD": "<OS_PASSWORD>",
"OS_USER_DOMAIN_NAME": "<OS_USER_DOMAIN_NAME>",
"OS_PROJECT_ID": "<OS_PROJECT_ID>",
"OS_APPLICATION_CREDENTIAL_ID": "<OS_APPLICATION_CREDENTIAL_ID>",
"OS_APPLICATION_CREDENTIAL_SECRET": "<OS_APPLICATION_CREDENTIAL_SECRET>",
"OS_REGION_NAME": "<OS_REGION_NAME>",
"OPENSTACK_MCP_PROJECT_IDS": "<OPENSTACK_MCP_PROJECT_IDS>",
"OPENSTACK_MCP_CACERT_PEM": "<OPENSTACK_MCP_CACERT_PEM>"
}
}
}
}
{
"servers": {
"openstack-mcp-server": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/oomchiller/openstack-mcp-server:0.1.2"
],
"env": {
"OS_AUTH_URL": "<OS_AUTH_URL>",
"OS_USERNAME": "<OS_USERNAME>",
"OS_PASSWORD": "<OS_PASSWORD>",
"OS_USER_DOMAIN_NAME": "<OS_USER_DOMAIN_NAME>",
"OS_PROJECT_ID": "<OS_PROJECT_ID>",
"OS_APPLICATION_CREDENTIAL_ID": "<OS_APPLICATION_CREDENTIAL_ID>",
"OS_APPLICATION_CREDENTIAL_SECRET": "<OS_APPLICATION_CREDENTIAL_SECRET>",
"OS_REGION_NAME": "<OS_REGION_NAME>",
"OPENSTACK_MCP_PROJECT_IDS": "<OPENSTACK_MCP_PROJECT_IDS>",
"OPENSTACK_MCP_CACERT_PEM": "<OPENSTACK_MCP_CACERT_PEM>"
}
}
}
}
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
| Name | Description |
|---|---|
OS_AUTH_URLRequired | Keystone v3 endpoint, for example https://keystone.example.com:5000/v3 |
OS_USERNAMEOptional | User name; omit when using an application credential |
OS_PASSWORDOptional, secret | Password for OS_USERNAME |
OS_USER_DOMAIN_NAMEOptional | Domain of OS_USERNAME |
OS_PROJECT_IDOptional | Project to scope the token to |
OS_APPLICATION_CREDENTIAL_IDOptional | Application credential ID, instead of a user name and password |
OS_APPLICATION_CREDENTIAL_SECRETOptional, secret | Application credential secret |
OS_REGION_NAMEOptional | Region name |
OPENSTACK_MCP_PROJECT_IDSOptional | Comma-separated project IDs the server may use; the first is the default |
OPENSTACK_MCP_CACERT_PEMOptional | CA bundle as PEM text, for a private CA |
Details
| Package | ghcr.io/oomchiller/openstack-mcp-server:0.1.2 (OCI, stdio) |
| First published | 3 Nov 2026 |
| Last updated | 3 Nov 2026 |
| Registry name | io.github.oomchiller/openstack-mcp-server |
More ai and media servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
