OpenStack MCP 服务器是一个模型上下文协议(MCP)服务器,它提供了与 OpenStack API 的无缝集成。
要构建应用程序容器镜像,请使用以下 Podman 命令:
podman build . -t openstack_mcp_server
要启动 OpenStack MCP 服务器,请按照以下步骤操作:
.env 文件在项目的根目录下创建一个名为 .env 的文件。此文件将存储服务器所需的基本环境变量。
OS_CLOUD=overcloud
OS_CLOUD_CONF_PATH=/server/clouds.yaml
OS_MCP_SERVER_HOST=0.0.0.0
OS_MCP_SERVER_PORT=9001
clouds.yaml 文件中使用的云配置名称。clouds.yaml 文件的路径。0.0.0.0 表示它将监听所有可用网络接口。clouds.yaml创建一个 clouds.yaml 文件。此文件包含连接到您的 OpenStack 环境所需的认证详细信息。确保该文件放置在 .env 文件中 OS_CLOUD_CONF_PATH 指定的路径上。
clouds:
overcloud: # 这应该与 .env 文件中的 OS_CLOUD 匹配
auth:
auth_url: http://X.X.X.X:5000
password: PASSWORD
project_domain_name: Default
project_name: admin
user_domain_name: Default
username: admin
cacert: ''
identity_api_version: '3'
region_name: regionOne
volume_api_version: '3'
⚠️ 重要提示:
http://X.X.X.X:5000 替换为您实际的 OpenStack 云 Keystone 认证 URL。PASSWORD 替换为您指定用户的实际密码。project_name、username、region_name 等以匹配您的特定 OpenStack 设置。podman run -d --name openstack_mcp_server \
-p 9001:9001 \
--env-file .env \
-v $(pwd)/clouds.yaml:/server/clouds.yaml:Z \
localhost/openstack_mcp_server:latest
<img src="examples/image.png" alt="Openstack MCP 客户端"></img>
cd examples/
uv run osp_mcp_client.py --llm_api_url https://X.X.X.X/v1 \
--llm_api_key XXXX \
--model_name granite-3-8b-instruct \
--mcp_url http://X.X.X.X:9001/sse