mcpField
N
nutanix-mcp-server

nutanix-mcp-server

本地服务
github.com/takanorisuzuki云与基础设施179 周前更新

关于 nutanix-mcp-server

nutanix-mcp-server 是基于 FastAPI 的原型,用于从 Nutanix Prism Central 获取集群和虚拟机信息。它提供基础设施数据端点及用于 Dify 自定义工具注册的 OpenAPI 模式;README 提醒不要用于生产环境。

主要功能

  1. 01获取集群信息
  2. 02获取虚拟机信息
  3. 03连接 Prism Central API
  4. 04通过 .env 配置凭据
  5. 05提供 Dify 的 OpenAPI 模式

适用场景

  1. 01查看 Nutanix 集群基本信息
  2. 02检查虚拟机名称和资源配置
  3. 03将 Nutanix 数据注册为 Dify 自定义工具

MCP 相关

项目自述为 MCP 服务,提供集群和虚拟机信息端点,并说明可将 getClusters 和 getVms 注册到 Dify。README 将其定位为 MVP 原型,并建议不要用于生产环境。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

nutanix-mcp-server

使用 FastAPI 实现的 MCP(Model Context Protocol)服务,可与 Nutanix Prism Central 集成并获取集群和虚拟机信息

概述

本项目实现了面向 Nutanix 环境的 Model Context Protocol(MCP)服务最小可行产品(MVP)。主要目的是使用 FastAPI 从 Nutanix Prism Central 获取集群信息。本 MVP 将作为未来扩展功能(获取更多信息、模型操作、增强安全性等)的基础。 这是一个原型,请勿用于生产环境。

运行环境

  • OS:macOS、Linux、Windows(包括 WSL2)
  • Python:推荐 3.12 或更高版本
  • pip:推荐 23.x 或更高版本
  • Nutanix Prism Central API 版本:v4.0.2(Cluster Management API)
  • Nutanix Prism Central API 版本:v4.0(Virtual Machine Management API)

用法

设置步骤
# リポジトリをクローン
git clone https://github.com/takanorisuzuki/nutanix-mcp-server-jp.git
cd nutanix-mcp-server-jp

# 仮想環境を作成・有効化(任意)
python3 -m venv venv
source venv/bin/activate  # Windows の場合は venv\Scripts\activate

# 依存パッケージをインストール
pip install -r requirements.txt

# .env ファイルを作成
cp .env.example .env

.env 文件的编写方式

创建 .env 文件并定义认证信息和连接信息,如下所示。

PRISM_CENTRAL_IP=192.168.10.11
PRISM_CENTRAL_PORT=9440
PRISM_CENTRAL_USERNAME=admin
PRISM_CENTRAL_PASSWORD=your_password_here
# VERIFY_SSL="false"

请将 .env 文件放在项目根目录。.gitignore 会将其排除在提交内容之外。

  • 关于 SSL 验证: 目前,为了支持自签名证书,已禁用证书验证(verify=False)。在生产环境中,请执行适当的 SSL 验证。 .env 中的所有值都会作为字符串处理。使用 VERIFY_SSL 时,需将其用引号括起来,例如 "false",或者在代码中将字符串转换为布尔类型。
启动服务

使用 uvicorn 启动 MCP 服务:

uvicorn app:app --reload

MCP 服务将在 http://127.0.0.1:8000 启动。

检查 API 端点
  • Swagger UI:在浏览器中访问 http://127.0.0.1:8000/docs,即可查看和测试 API 文档。

  • 使用 curl 检查:

    • /clusters:返回 Nutanix 集群的基本信息(UUID、集群名称、节点配置等)。
    • /vms:返回 Prism Central 上的虚拟机信息(名称、vCPU、内存配置等)。
    curl -v http://127.0.0.1:8000/clusters
    curl -v http://127.0.0.1:8000/vms
    
与 Dify 集成

本仓库包含 OpenAPI 架构文件 dify-openapi-schema.json,用于将 MCP 服务注册为 Dify 的自定义工具。

在 Dify 中使用此架构注册自定义工具,并将该工具分配给 Agent,即可通过自然语言获取和查看 Nutanix 集群信息或虚拟机信息。

  1. 在 Dify 管理界面中,通过“工具”>“自定义工具”创建 Nutanix MCP Server。
  2. 粘贴 dify-openapi-schema.json 中定义的架构。
  3. 确认可用工具中显示 getClusters 和 getVms,并且测试运行正常。
  4. 创建新的 Agent,并指定将 MCP 服务注册为工具的自定义工具。
  5. 在 Agent 页面中用自然语言提问,例如“请告诉我集群信息”,MCP 服务便会返回查询结果。

关于连接地址: 如果 Dify 在 Podman 上运行,无需更改 dify-openapi-schema.json,即可使用 http://host.containers.internal:8000 作为 MCP 服务地址。
在 Docker 等其他环境中,请替换为 http://host.docker.internal:8000 等适当的主机名或 IP 地址。

更新日志

  • 2025-04-18:发布初始版本 v0.1.0。
    • 实现 /clusters 和 /vms 端点。
    • 集成 Nutanix Prism Central。
    • 使用 FastAPI 构建 REST API 服务。
    • 通过 .env 将认证信息和连接目标配置外置。
    • 支持将 OpenAPI 架构用于 Dify 集成。

贡献方式

欢迎贡献。请提交 Pull Request 来改进功能或修复错误。进行重大更改前,请先创建 Issue 进行讨论。

许可证

本项目依据 LICENSE 文件中注明的条款授权。

未来扩展计划

  • 添加虚拟机详细信息(NIC / 磁盘配置)
  • 实现用于显示单个集群详细信息的端点
  • 集成 Nutanix API vmm,引入操作类 API(例如启动/停止虚拟机)
  • 支持通过 Dify 进行对话式操作

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。