openstack-mcp-server

openstack-mcp-server

6

The OpenStack MCP Server is a service designed to facilitate secure execution of OpenStack CLI commands via AI assistants, particularly suited for integration with the Claude Desktop application. It requires specific software prerequisites and configuration for setup.

OpenStack MCP Server

Overview

A lightweight and extensible service that enables AI assistants to securely execute OpenStack CLI commands via the Model Context Protocol (MCP).

This project is designed to work with the Claude Desktop application, allowing you to interact with OpenStack resources directly from the AI assistant.

Project Requirements

  • Java 21
  • Maven 3.8+
  • Spring Boot 3.4.4
  • Spring AI 1.0.0-M6
  • OpenStack CLI installed on your machine

Getting Started

Prerequisites

Before you begin, ensure you have the following installed:

  • Java 21
  • Maven 3.8+
  • OpenStack CLI

Configuration

  1. OpenStack Configuration: Update the application.yml file with your OpenStack credentials.
    • authUrl: Your OpenStack authentication URL.
    • regionName: Your OpenStack region name.
    • applicationCredentialId: Your OpenStack application credential ID.
    • applicationCredentialSecret: Your OpenStack application credential secret.
spring:
  main:
    web-application-type: none
    banner-mode: off
  ai:
    mcp:
      server:
        name: openstack-mcp-server
        version: 0.0.1

logging:
  pattern:
    console:

openstack:
  authType: v3applicationcredential
  authUrl: <your_auth_url>
  identityApiVersion: 3
  regionName: <your_region_name>
  interface: public
  applicationCredentialId: "<your_application_credential_id>"
  applicationCredentialSecret: "<your_application_credential_secret>"

server:
  port: 8080

Packaging

To package the application as a JAR file, run the following command:

mvn clean package

Integration with Claude Desktop

To integrate the OpenStack MCP server with Claude Desktop, you need to configure the claude-desktop.json file. This file contains the necessary configuration for the integration.

Please update <path_to_your_jar> with the actual path to your JAR file.

{
  "mcpServers": {
    "openstack-mcp-server": {
      "command": "java",
      "args": [
        "-jar",
        "<path_to_your_jar>/openstack-mcp-server-0.0.1.jar",
        "--port",
        "8080",
        "--host",
        "localhost"
      ]
    }
  }
}

Testing

To test the integration, prompt to Claude Desktop to list your servers, or projects:

  • List my servers
  • List my projects
  • List my images

get-server get-flavors get-servers