Token导航 LogoToken导航TokenDH.com
CloudStack MCP Server logo
运维云端stdio官方级别未说明来源级核验

CloudStack MCP Server

MCP Server

tsc

一个高性能的MCP服务器,用于Apache CloudStack API集成,提供全面的工具来管理CloudStack基础设施,并与AI助手和自动化工具无缝集成。

工具数

0

提示词数

0

GitHub Stars

6

资源数

0
API集成TypeScriptClaude基础设施管理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

phantosmax

提供方

phantosmax

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx tsc --noEmit

详细介绍

CloudStack MCP服务器

用于Apache CloudStack API集成的高性能MCP(模型上下文协议)服务器。该服务器提供了通过MCP协议管理CloudStack基础设施的全面工具,实现了与AI助手和自动化工具的无缝集成。

特性

  • 🔧 完整的VM生命周期管理:部署、启动、停止、重新启动和销毁虚拟机
  • 🏗️ 基础设施发现:列出区域、模板和服务选项
  • 🔐 安全认证:使用CloudStack API凭据的HMAC-SHA1签名请求
  • ⚡ 高性能:高效的TypeScript实现,具有适当的错误处理
  • 🛡️ 类型安全:完全支持TypeScript,具有全面的接口
  • 📊 丰富的信息:详细的VM元数据,包括CPU、内存、网络和状态
  • 🖥️ 命令行接口:用于交互式CloudStack管理的直接CLI访问
  • 🤖 MCP集成:通过MCP协议与AI助手无缝集成

快速开始

安装

  1. 克隆和安装依赖关系:
   git clone 
   cd cloudstack-mcp-server
   npm install
  1. 配置环境变量:

创建一个 .env 项目根目录中的文件:

   CLOUDSTACK_API_URL=https://your-cloudstack-server/client/api
   CLOUDSTACK_API_KEY=your-api-key
   CLOUDSTACK_SECRET_KEY=your-secret-key
   CLOUDSTACK_TIMEOUT=30000
  1. 构建项目:
   npm run build
  1. 运行服务器:
   # Development mode (MCP server)
   npm run dev

   # Production mode (MCP server)
   npm start

   # CLI mode
   npm run cli -- --help

MCP客户端集成

添加到您的MCP客户端配置中(例如,Claude Desktop):

{
  "mcpServers": {
    "cloudstack": {
      "command": "node",
      "args": ["/path/to/cloudstack-mcp-server/build/index.js"],
      "env": {
        "CLOUDSTACK_API_URL": "https://your-cloudstack-server/client/api",
        "CLOUDSTACK_API_KEY": "your-api-key",
        "CLOUDSTACK_SECRET_KEY": "your-secret-key"
      }
    }
  }
}

命令行接口

对于直接命令行访问,请使用内置CLI:

# Install globally (optional)
npm link

# Use the CLI
cloudstack-cli list-vms --state Running
cloudstack-cli deploy-vm --service-offering-id 1 --template-id 2 --zone-id 3
cloudstack-cli get-vm --id 12345-67890-abcdef

# See all available commands
cloudstack-cli --help

有关详细的CLI文档,请参阅 CLI.md.

可用工具(45个工具)

🖥️ 虚拟机管理(7个工具)

工具说明参数
list_virtual_machines列出具有可选筛选功能的虚拟机zoneid, state, keyword
get_virtual_machine获取详细的VM信息id (必填)
start_virtual_machine启动已停止的虚拟机id (必填)
stop_virtual_machine停止正在运行的虚拟机id (必填), forced (可选)
reboot_virtual_machine重新启动虚拟机id (必填)
destroy_virtual_machine使用适当的工作流销毁VM(处理所有状态)id (必填), confirm (必填), expunge (可选)
deploy_virtual_machine部署新的虚拟机(自动为高级区域选择网络)serviceofferingid, templateid, zoneid (必填), name, displayname, networkids (可选)

⚙️ VM高级操作(4个工具)

工具说明参数
scale_virtual_machine缩放(调整大小)虚拟机id, serviceofferingid, confirm (必填)
migrate_virtual_machine将VM迁移到另一台主机virtualmachineid, confirm (必填), hostid (可选)
reset_password_virtual_machine重置虚拟机的密码id, confirm (必填)
change_service_offering_virtual_machine更改VM的服务选项id, serviceofferingid (必填)

💾 存储管理(7个工具)

工具说明参数
list_volumes列出存储卷virtualmachineid, type, zoneid
create_volume创建新的存储卷name, zoneid (必填), diskofferingid, size
attach_volume将卷附加到虚拟机id, virtualmachineid (必填)
detach_volume从虚拟机中分离卷id, confirm (必填)
resize_volume调整存储卷大小id, size, confirm (必填)
create_snapshot创建卷的快照volumeid (必填), name
list_snapshots列出卷快照volumeid, snapshottype

🌐 网络(7工具)

工具说明参数
list_networks列出网络zoneid, type
create_network创建新网络name, networkofferingid, zoneid (必填), displaytext
list_public_ip_addresses列出公共IP地址zoneid, associatednetworkid
associate_ip_address获取新的公共IP地址zoneid (必填), networkid
enable_static_nat为IP地址启用静态NATipaddressid, virtualmachineid (必填)
create_firewall_rule创建防火墙规则ipaddressid, protocol (必填), startport, endport, cidrlist
list_load_balancer_rules列出负载平衡器规则publicipid, zoneid

📊 监控和分析(5个工具)

工具说明参数
list_virtual_machine_metrics获取虚拟机性能指标ids
list_events列出CloudStack事件type, level, startdate, pagesize
list_alerts列出系统警报type
list_capacity列出系统容量信息zoneid, type
list_async_jobs列出异步作业jobstatus, jobresulttype

👥 帐户和用户管理(4个工具)

工具说明参数
list_accounts列出CloudStack帐户domainid, accounttype
list_users列出用户accountid, username
list_domains列出CloudStack域name
list_usage_records列出资源使用记录startdate, enddate (必填), type

🏗️ 基础架构发现(2个工具)

工具说明参数
list_zones列出所有可用区域available (可选)
list_templates列出可用的VM模板templatefilter, zoneid (可选)

🔧 系统管理(5个工具)

工具说明参数
list_hosts列出物理主机zoneid, type, state
list_clusters列出主机群集zoneid
list_storage_pools列出存储池zoneid, clusterid
list_system_vms列出系统虚拟机zoneid, systemvmtype
list_service_offerings列出服务选项name, domainid

🔐 安全与合规(4个工具)

工具说明参数
list_ssh_key_pairs列出SSH密钥对name
create_ssh_key_pair创建新的SSH密钥对name (必填)
list_security_groups列出安全组securitygroupname
create_security_group_rule创建安全组入口规则securitygroupid, protocol (必填), startport, endport, cidrlist

示例用法

列出虚拟机

{
  "tool": "list_virtual_machines",
  "arguments": {
    "state": "Running",
    "zoneid": "1746ef10-8fa6-40c1-9c82-c3956bf75db8"
  }
}

部署新虚拟机

{
  "tool": "deploy_virtual_machine",
  "arguments": {
    "serviceofferingid": "c6f99499-7f59-4138-9427-a09db13af2bc",
    "templateid": "7d4a7bb5-2409-4c8f-8537-6bbdc8a4e5c1",
    "zoneid": "1746ef10-8fa6-40c1-9c82-c3956bf75db8",
    "name": "my-new-vm",
    "displayname": "My New VM"
  }
}

项目结构

├── src/
│   ├── index.ts              # MCP server entry point
│   ├── server.ts             # Main MCP server implementation
│   ├── cli.ts                # Command-line interface
│   └── cloudstack-client.ts  # CloudStack API client
├── build/                    # Compiled JavaScript output
├── CLI.md                   # CLI documentation
├── package.json             # Dependencies and scripts
├── tsconfig.json            # TypeScript configuration
└── .env                     # Environment variables (not in repo)

架构概述

  • src/index.ts:加载环境变量并启动服务器的MCP服务器入口点
  • src/server.ts:全面的MCP服务器实施,包括45个以上的工具处理程序、错误管理和CloudStack集成
  • src/cli.ts:通过与MCP服务器的JSON-RPC通信进行直接CloudStack管理的命令行界面
  • src/cloudstack-client.ts:强大的CloudStack API客户端,具有HMAC-SHA1身份验证、类型安全接口和全面的错误处理

配置

所需的环境变量

变量描述示例
CLOUDSTACK_API_URLCloudStack API端点http://cloudstack.example.com:8080/client/api
CLOUDSTACK_API_KEYCloudStack API密钥your-32-character-api-key
CLOUDSTACK_SECRET_KEYCloudStack密钥your-secret-key

可选环境变量

变量描述默认值
CLOUDSTACK_TIMEOUT请求超时(毫秒)30000

发展

构建命令

# Build TypeScript to JavaScript
npm run build

# Run MCP server in development mode with hot reload
npm run dev

# Run CLI in development mode
npm run dev:cli -- list-vms --help

# Run compiled MCP server
npm start

# Run compiled CLI
npm run cli -- list-vms --help

# Type checking only
npx tsc --noEmit

代码质量

  • TypeScript:启用严格模式的全类型安全
  • 错误处理:使用MCP错误类型进行全面的错误处理
  • 异步/等待:贯穿始终的现代异步模式
  • 模块化设计:明确区分关注点

安全

  • HMAC-SHA1签名:所有API请求都经过加密签名
  • 无凭据存储:仅从环境变量读取凭据
  • 请求验证:所有工具参数的输入验证
  • 错误清理:从错误消息中过滤敏感信息

兼容性

  • CloudStack:与CloudStack 4.11兼容+
  • Node.js:需要Node.js 18+
  • MCP协议:实现MCP SDK 0.5.0+
  • TypeScript:使用TypeScript 5.0构建+

许可证

MIT-有关详细信息,请参阅许可证文件

目录标签

目录标签

API集成TypeScriptClaude基础设施管理云管理本地部署虚拟化自动化工具

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

tsc

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP