mcp-nutanix

by thunderboltsid
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Integrates with Make for building the MCP server and running utility commands like code generation.

  • Enables interaction with Nutanix Prism Central APIs, providing tools for listing and retrieving detailed information about various resources such as VMs, clusters, hosts, images, and subnets within a Nutanix environment.

MCP ニュータニックス

大規模言語モデル (LLM) を介して Nutanix Prism Central API と対話するためのモデル コンテキスト プロトコル (MCP) サーバー。

⚠️免責事項

これは実験的なプロジェクトです

このプロジェクトは、Goのモデルコンテキストプロトコルフレームワークの機能を探索するための個人プロジェクトとして作成されました。内容は以下のとおりです。

  • Nutanixの公式製品またはツールではありません
  • Nutanix によるサポート、承認、保守は行われていません
  • 実稼働環境には適していません
  • 現状のまま提供され、保証はありません

自己責任で使用してください: このコードの使用によって生じる可能性のある問題、損害、または停止について、作者は一切責任を負いません。

概要

この MCP サーバーにより、LLM は次の方法で Nutanix Prism Central と対話できるようになります。

  1. ユーザー資格情報を使用して Prism Central インスタンスに接続する
  2. さまざまなリソース (VM、クラスター、ホストなど) の一覧表示
  3. URIベースのアクセスによる特定のリソースの詳細の取得

この実装では、Prism Go クライアントを使用して Prism Central と通信し、 MCP Go ライブラリを使用してモデル コンテキスト プロトコルを実装します。

はじめる

前提条件

  • Go 1.23以上
  • Nutanix Prism Centralインスタンスへのアクセス
  • ビルド用のmakego fmtのようなツール

建物

# Clone the repository git clone https://github.com/thunderboltsid/mcp-nutanix.git cd mcp-nutanix # Build the MCP server make build

ランニング

./bin/mcp-nutanix

サーバーが起動し、Prism Central の資格情報の入力を求められます。

使用法

MCP サーバーが実行され、Prism Central インスタンスに接続されると、LLM は MCP プロトコルを介してサーバーと対話できるようになります。

リソース一覧

リソースを一覧表示するには、適切なツールを使用します。

vms clusters hosts images subnets

LLM は、解析および分析できるリソースの JSON リストを受け取ります。

リソースアクセス

特定のリソースにアクセスするには、リソース URI を使用します。

vm://{uuid} cluster://{uuid} host://{uuid}

LLM は特定のリソースに関する詳細な JSON 情報を受け取ります。

発達

プロジェクト構造

mcp-nutanix/ ├── bin/ # Compiled binaries ├── internal/ # Internal packages │ ├── client/ # Prism Central client handling │ ├── codegen/ # Code generation utilities │ └── json/ # JSON helpers ├── pkg/ # components │ ├── prompts/ # MCP prompt implementations │ ├── resources/ # Resource handlers │ └── tools/ # Tool handlers └── Makefile # Build and utility commands

コード生成

このプロジェクトでは、コード生成を使用してリソースとツールのハンドラーを作成します。これらを更新するには、次の手順に従います。

make generate

制限事項

  • 応答サイズはMCPプロトコルによって制限されます
  • 応答サイズが大きいリソースではエラーが発生する場合があります
  • 現在の実装ではページ区切りはサポートされていません
  • 読み取り操作のみサポートし、作成/更新/削除はサポートしません

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

謝辞

貢献

これは正式な貢献プロセスのない実験的なプロジェクトです。お気軽に問題の作成やプルリクエストを行ってください。

ID: vdwxnpsndp