MCP Nutanix

MCP Nutanix

site icon
2025.04.16 5
GoNutanix 集成LLM 交互其它
mcp-nutanix 是一个基于 Model Context Protocol (MCP) 的服务器,用于通过大型语言模型 (LLMs) 与 Nutanix Prism Central API 进行交互。该项目是一个实验性项目,主要用于探索 MCP 框架在 Go 语言中的能力。它允许 LLMs 连接 Nutanix Prism Central 实例,列出资源(如虚拟机、集群、主机等),并通过 URI 访问特定资源的详细信息。
View on GitHub

Overview

基本能力

产品定位

mcp-nutanix 是一个实验性项目,旨在通过 MCP 协议实现 LLMs 与 Nutanix Prism Central API 的交互。

核心功能

  1. 连接 Nutanix Prism Central 实例:通过用户凭证连接到 Prism Central 实例。
  2. 资源列表:列出虚拟机 (VMs)、集群 (Clusters)、主机 (Hosts)、镜像 (Images) 和子网 (Subnets) 等资源。
  3. 资源访问:通过 URI 访问特定资源的详细信息。

适用场景

  1. 开发与测试:用于开发和测试 LLMs 与 Nutanix Prism Central 的交互能力。
  2. 资源管理:通过 LLMs 查询和管理 Nutanix 环境中的资源。
  3. 自动化工具集成:作为自动化工具的一部分,用于资源监控和分析。

工具列表

  1. vms:列出所有虚拟机资源。
  2. clusters:列出所有集群资源。
  3. hosts:列出所有主机资源。
  4. images:列出所有镜像资源。
  5. subnets:列出所有子网资源。

常见问题解答

  1. 是否支持生产环境?:不支持,这是一个实验性项目。
  2. 是否支持写操作?:当前仅支持读操作,不支持创建、更新或删除。
  3. 是否有分页支持?:当前实现不支持分页。

使用教程

使用依赖

  • Go 1.23 或更高版本
  • 访问 Nutanix Prism Central 实例的权限
  • 构建工具如 makego fmt

安装教程

# 克隆仓库
git clone https://github.com/thunderboltsid/mcp-nutanix.git
cd mcp-nutanix

# 构建 MCP 服务器
make build

运行

./bin/mcp-nutanix

服务器启动后会提示输入 Prism Central 凭证。

调试方式

  1. 资源列表:使用工具如 vmsclusters 等列出资源。
  2. 资源访问:使用 URI 如 vm://{uuid} 访问特定资源。

开发

项目结构

mcp-nutanix/
├── bin/                  # 编译后的二进制文件
├── internal/             # 内部包
│   ├── client/           # Prism Central 客户端处理
│   ├── codegen/          # 代码生成工具
│   └── json/             # JSON 辅助工具
├── pkg/                  # 组件
│   ├── prompts/          # MCP 提示实现
│   ├── resources/        # 资源处理器
│   └── tools/            # 工具处理器
└── Makefile              # 构建和实用命令

代码生成

make generate

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。