ESXi MCP 服务器管理器是一个基于 MCP(模型控制协议)的 VMware ESXi/vCenter 管理服务器,它提供简单的 REST API 接口,可用于高效地管理虚拟机。
执行以下命令安装所需依赖:
pip install pyvmomi pyyaml uvicorn mcp-core
创建 config.yaml 配置文件,并按如下示例进行配置:
vcenter_host: "your-vcenter-ip"
vcenter_user: "administrator@vsphere.local"
vcenter_password: "your-password"
datacenter: "your-datacenter" # 可选
cluster: "your-cluster" # 可选
datastore: "your-datastore" # 可选
network: "VM Network" # 可选
insecure: true # 忽略 SSL 证书验证
api_key: "your-api-key" # API 访问密钥
log_file: "./logs/vmware_mcp.log" # 日志文件路径
log_level: "INFO" # 日志级别
使用以下命令启动服务器:
python server.py -c config.yaml
本项目的运行需要以下依赖:
所有特权操作都需要先进行认证,示例如下:
POST /sse/messages
Authorization: Bearer your-api-key
{
"name": "vm-name",
"cpu": 2,
"memory": 4096,
"datastore": "数据存储名称",
"network": "网络名称"
}
{
"template_name": "源 VM 名称",
"new_name": "新 VM 名称"
}
{
"name": "vm-name"
}
{
"name": "vm-name"
}
GET vmstats://{vm_name}
所有特权操作都需要先进行认证,请求示例如下:
POST /sse/messages
Authorization: Bearer your-api-key
通过以下请求获取 VM 性能数据:
GET vmstats://{vm_name}
| 参数 | 详情 | 是否必填 | 默认值 |
|---|---|---|---|
| vcenter_host | vCenter/ESXi 服务器地址 | 是 | - |
| vcenter_user | 登录用户名 | 是 | - |
| vcenter_password | 登录密码 | 是 | - |
| datacenter | 数据中心名称 | 否 | 自动选择第一个 |
| cluster | 集群名称 | 否 | 自动选择第一个 |
| datastore | 存储名称 | 否 | 自动选择最大可用存储 |
| network | 网络名称 | 否 | VM Network |
| insecure | 忽略 SSL 验证 | 否 | false |
| api_key | API 访问密钥 | 否 | - |
| log_file | 日志文件路径 | 否 | 控制台输出 |
| log_level | 日志级别 | 否 | INFO |
所有配置项都支持通过环境变量设置,遵循以下命名规则:
本项目采用 MIT License。
欢迎提出问题和拉取请求!
本项目遵守 MIT 许可证,具体内容请参考 LICENSE 文件。
注意:此文档是根据原始内容重新编写的,并未直接从源代码生成。如需引用,请参考官方文档或源代码。