アンレイドMCPサーバー
AI アシスタントが公式の Unraid GraphQL API を介して Unraid サーバーと対話できるようにする Python ベースの MCP (Model Context Protocol) サーバー。
免責事項
自己責任でご使用ください:このソフトウェアは、AIアシスタントを介してUnraidサーバーへのアクセスを提供します。この実装は安全性を高めるために読み取り専用に設定されていますが、ご使用の際はご注意ください。
これは非公式ツールであり、Unraid, Inc. と提携しておらず、同社から承認も受けていません。
システムの変更を防ぐため、すべての操作は読み取り専用に制限されています。
常にデータの適切なバックアップを維持する
行動を起こす前に、AIアシスタントが提供するすべての情報と提案を確認してください
開発者は、このソフトウェアの使用によって生じる可能性のある問題について一切責任を負いません。
読み取り専用アクセスであっても、監視ツールは機密性の高いシステム情報を漏洩させる可能性があります。本ソフトウェアを使用することで、お客様はこれらの制限とリスクを認識し、同意したものとみなされます。
Related MCP server: Model Control Plane (MCP) Server
特徴
システム情報: Unraidサーバーの詳細情報を取得します
アレイ管理: アレイのステータスを監視する
Docker管理: Dockerコンテナとネットワークの一覧表示
VM管理:仮想マシンの一覧表示
ディスク情報: ディスクと未割り当てデバイスに関する詳細情報を取得します
通知管理: システム通知の表示と管理
共有管理: ネットワーク共有の表示と管理
ユーザー管理: ユーザーの一覧
APIキー管理: APIキーの一覧表示
パリティ履歴: パリティチェックの履歴を表示する
共有: Unraid サーバー上のユーザー共有を参照します
プラグイン: インストールされているプラグインとそのステータスを表示します
エラー処理: 診断情報を含む包括的なエラー処理
ログ記録: トラブルシューティングのための詳細なログ記録
テンプレートリソース: 特定のコンテナとVMに名前でアクセスする
前提条件
Python 3.10以降
APIが有効になっているUnraidサーバー
適切な権限を持つAPIキー
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Unraid MCP Server を自動的にインストールするには:
手動インストール
リポジトリをクローンします。
git clone https://github.com/jmagar/unraid-mcp.git cd unraid-mcp仮想環境を作成してアクティブ化します。
python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate依存関係をインストールします:
pip install -r requirements.txtUnraid API 資格情報を使用して
.envファイルを作成します。cp .env.template .env # Edit .env with your actual API URL and key
Unraid API セットアップ
この MCP サーバーを使用するには、Unraid サーバーに Unraid API を設定する必要があります。
CLI を使用して開発者モードと GraphQL サンドボックスを有効にします。
unraid-api developer指示に従ってサンドボックスを有効にします。
必要な権限を持つ API キーを作成します。
unraid-api apikey --createプロンプトに従って、名前、説明、役割、および権限を設定します。
.envファイルを次のように構成します。UNRAID_API_URL: GraphQL URL (例:http://your-unraid-server-ip/graphql)UNRAID_API_KEY: 作成したAPIキー
http://your-unraid-server-ip/graphqlGraphQL サンドボックスを使用して API をテストします。
注: Unraid API は、認証にベアラー トークンではなく
x-api-keyヘッダーを使用します。
トラブルシューティング
CORS エラーが発生した場合は、クライアントにサーバーの URL と一致する正しい
Originヘッダーが含まれていることを確認してください。実行しようとしているクエリに必要なロールと権限が API キーにあることを確認してください。
GraphQL サンドボックスが有効になっていてアクセス可能であることを確認します。
使用法
MCPサーバーの実行
AI アシスタントとの統合のために、サーバーを stdio モードで実行します。
stdio モードは次の場合に役立ちます。
MCPプロトコルをサポートするAIアシスタントとの直接統合
Anthropic Python SDK を使用したテスト
カーソルでのClaudeとの統合
stdioモードで実行する場合、サーバーはMCPプロトコル形式に従って標準入力から読み取り、標準出力に書き込みます。これにより、HTTPトランスポートを必要とせずにAIアシスタントと直接通信できます。
サーバーアーキテクチャ
サーバーは FastMCP フレームワークを使用して構築され、次の要素で構成されます。
Unraid API クライアント(
unraid_client.py):UnraidサーバーとのGraphQL通信を処理します
認証とエラー処理を管理します
一貫したエラー報告を提供する
MCP サーバー(
server.py):MCP仕様に従ってリソースとツールを定義します
Unraidの機能をAIアシスタントに公開
リクエストの検証とエラー診断を処理します
利用可能なリソース
リソースURI | 説明 |
| システム情報(CPU、メモリ、稼働時間) |
| インストールされたプラグイン |
| すべてのDockerコンテナのリスト |
| 特定のコンテナの詳細 |
| 現在のアレイの状態 |
| すべての仮想マシンのリスト |
| 特定のVMの詳細 |
| ユーザーが情報を共有する |
利用可能なツール
システム管理
ツール名 | 説明 |
| 詳細なシステム情報を取得する |
| ネットワークインターフェース情報を取得する |
アレイ管理
ツール名 | 説明 |
| 人間が読める形式でアレイのステータスを取得する |
| パリティチェック履歴を取得する |
Docker管理
ツール名 | 説明 |
| Dockerコンテナに関する情報を取得する |
| Dockerネットワークに関する情報を取得する |
| Dockerコンテナを人間が読める形式で一覧表示する |
VM管理
ツール名 | 説明 |
| 仮想マシンに関する情報を取得する |
| 特定のVMに関する詳細情報を取得する |
| 人間が読める形式で仮想マシンを一覧表示する |
通知管理
ツール名 | 説明 |
| Unraidサーバーから通知を受け取る |
| 新しい通知を作成する |
| 通知をアーカイブする |
株式管理
ツール名 | 説明 |
| ネットワーク共有に関する情報を取得する |
| 特定の株式に関する詳細情報を取得する |
ディスク管理
ツール名 | 説明 |
| すべてのディスクに関する情報を取得する |
| 特定のディスクに関する情報を取得する |
| 割り当てられていないデバイスに関する情報を取得する |
ユーザー管理
ツール名 | 説明 |
| すべてのユーザーに関する情報を取得する |
APIキー管理
ツール名 | 説明 |
| すべてのAPIキーに関する情報を取得する |
クロードとの統合
Claude API または stdio モードをサポートする他の AI アシスタントで MCP サーバーを使用するには:
設定ファイル (例:
unraid_mcp_config.json) を作成します。{ "mcpServers": { "unraid": { "command": "/path/to/python", "args": ["/path/to/unraid-mcp/run_server.py"], "env": { "UNRAID_API_URL": "http://your-unraid-server:port/graphql", "UNRAID_API_KEY": "your-api-key", "LOG_LEVEL": "INFO", "CLAUDE_MCP_SERVER": "true" }, "disabled": false, "autoApprove": [] } } }
注意: Windows ユーザーの場合は、パスに必ず二重のバックスラッシュを使用してください (例:
C:\\Users\\username\\unraid-mcp\\run_server.py)
クエリの例
「Unraid サーバーの現在の CPU 使用率はどれくらいですか?」
「すべてのDockerコンテナを一覧表示する」
「Plex コンテナについて教えてください」(container_details リソースを使用)
「Plexコンテナを起動する」
「アレイの状態はどうですか?」
「Unraid サーバーにはどれくらいの空き容量がありますか?」
「Windows VM の詳細を表示してください」(vm_details リソースを使用)
「どんなプラグインがインストールされていますか?」
トラブルシューティング
詳細なエラー情報については、ログ ファイル ( unraid_mcp.log ) を確認してください。
よくある問題:
.envファイル内の API URL またはキーが正しくありませんUnraidサーバーへのネットワーク接続の問題
APIキーの権限が不十分です
Unraid サーバーで開発者モードが有効になっていません
APIキーに必要な役割がありません
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。