这是一个通过大型语言模型(LLMs)与Nutanix Prism Central API交互的模型上下文协议(MCP)服务器。
这是一个实验性项目
该项目作为一个个人项目创建,旨在探索Go框架中模型上下文协议的能力。它:
自行承担风险:作者不对使用此代码可能产生的任何问题、损害或停机负责。
此MCP服务器允许LLMs通过以下方式与Nutanix Prism Central进行交互:
实现使用了Prism Go客户端与Prism Central通信,并使用了MCP Go库来实现模型上下文协议。
make和go fmt# 克隆仓库
git clone https://github.com/thunderboltsid/mcp-nutanix.git
cd mcp-n-utanix
# 构建MCP服务器
make build
服务器支持两种凭证方法:
要使用此服务器与MCP客户端,您需要配置客户端以连接到服务器。
创建或更新~/.anthropic/claude_desktop.json:
{
"mcpServers": {
"nutanix": {
"command": "/path/to/mcp-nutanix"
}
}
}
Claude会在首次使用服务器时提示您输入凭证。
对于Cursor,您需要通过环境变量提供静态凭证,因为它不支持交互式提示。
创建或更新~/.cursor/mcp.json:
{
"mcpServers": {
"nutanix": {
"command": "/path/to/mcp-nutanix",
"env": {
"NUTANIX_ENDPOINT": "your-prism-central-ip-or-hostname",
"NUTANIX_USERNAME": "your-username",
"NUTANIX_PASSWORD": "your-password",
"NUTANIX_INSECURE": "true"
}
}
}
}
环境变量:
NUTANIX_ENDPOINT - Prism Central IP或主机名(必需)NUTANIX_USERNAME - API用户名(必需)NUTANIX_PASSWORD - API密码(必需)NUTANIX_INSECURE - 对自签名证书设置为"true"(可选)此服务器遵循标准MCP协议,应能与支持stdio传输的任何MCP客户端一起工作。请参阅您的客户端文档以获取配置说明。
一旦MCP服务器与您的客户端配置并连接到您的Prism Central实例,LLMs就可以通过MCP协议与其交互。
要列出资源,请使用适当的工具:
vms
clusters
hosts
images
subnets
LLM将收到一个资源的JSON列表,它可以解析和分析。
要访问特定资源,请使用资源URI:
vm://{uuid}
cluster://{uuid}
host://{uuid}
LLM将收到关于特定资源的详细JSON信息。
mcp-nutanix/
├── bin/ # 编译的二进制文件
├── internal/ # 内部包
│ ├── client/ # Prism Central客户端处理
│ ├── codegen/ # 代码生成工具
│ └── json/ # JSON辅助工具
├── pkg/ # 组件
│ ├── prompts/ # MCP提示实现
│ ├── resources/ # 资源处理器
│ └── tools/ # 工具处理器
└── Makefile # 构建和实用命令
项目使用代码生成来创建资源和工具处理器。要更新这些:
make generate
本项目根据MIT许可证发布 - 查看LICENSE文件了解详情。
这是一个实验性项目,没有正式的贡献流程。欢迎创建问题或拉取请求。