Nextcloudmcp について
Nextcloudmcp は、Nextcloud インスタンスのファイル、共有、ユーザー、システム情報を管理する MCP サーバーです。リモートでのファイル操作に加え、処理用のローカルダウンロード、コメント、アクティビティ監視、関連するワークフロープロンプトに対応します。
主な機能
- 01ファイルとフォルダーの管理
- 02共有の作成と設定変更
- 03ユーザー、グループ、メンバーの管理
- 04サーバー状態とアクティビティの確認
- 05ローカルファイルのダウンロードとアップロード
活用シーン
- 01Nextcloud ファイルの整理と処理
- 02共有権限と有効期限の設定
- 03ユーザーアカウントとグループの管理
- 04共有設定とサーバー活動の確認
MCP 対応
Nextcloud のファイル、共有、ユーザー、グループ、コメント、アクティビティを扱うツールを MCP クライアントに公開します。ファイルや状態などのリソースと、管理用ワークフロープロンプトも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Nextcloud MCP Server
Nextcloud との連携を実現する包括的な Model Context Protocol(MCP)サーバーです。AI エージェントに、Nextcloud のファイル管理、共有、ユーザー管理、システム監視機能への安全なアクセスを提供します。
機能
🗂️ ファイル管理
- WebDAV 操作:ファイルやフォルダーの一覧表示、アップロード、ダウンロード、削除、移動、コピー
- ディレクトリのナビゲーション:深さを設定してディレクトリ構造を参照
- バイナリファイルのサポート:Base64 エンコードにより、テキストファイルとバイナリファイルの両方を処理
- フォルダーの作成:Nextcloud インスタンスに新しいディレクトリを作成
🔗 共有管理
- 共有の作成:ユーザー、グループ、公開、メールでの共有を作成
- 共有の設定:権限、パスワード、有効期限、メモを設定
- 共有の監視:既存の共有をすべて一覧表示して監視
- 共有の更新:既存の共有設定を変更
- 共有の削除:不要になった共有を削除
👥 ユーザー管理
- ユーザー管理:ユーザーの作成、読み取り、更新、削除(管理者権限が必要)
- グループ管理:グループを作成し、グループメンバーシップを管理
- ユーザー詳細:クォータや設定を含む、包括的なユーザー情報にアクセス
- 一括操作:複数のユーザーやグループを効率的に処理
🔧 システム監視
- サーバーの状態:Nextcloud サーバーの健全性とバージョン情報を監視
- 機能:サーバーの機能と設定の詳細にアクセス
- セキュリティ監査:セキュリティ監査のワークフローを内蔵
📋 ワークフローのプロンプト
- バックアップのワークフロー:ファイルのバックアップ手順を自動化
- 共有管理:包括的な共有ワークフロー
- ユーザー管理:手順に沿ったユーザー管理プロセス
- ファイルの整理:スマートなファイルの分類と整理
- セキュリティ監査:セキュリティ評価手順を自動化
インストール
前提条件
- Node.js 18+
- npm または yarn
- API アクセスが可能な Nextcloud サーバー
- 有効な Nextcloud ユーザーの認証情報
セットアップ
- クローンして依存関係をインストール:
git clone https://github.com/mirekdlugosz/nextcloud-mcp-server.git
cd nextcloud-mcp-server
npm install
- 環境変数を設定:
ルートディレクトリに
.envファイルを作成します:
NEXTCLOUD_URL=https://your-nextcloud-server.com
NEXTCLOUD_USERNAME=your-username
NEXTCLOUD_PASSWORD=your-password-or-app-password
セキュリティに関する注意:メインパスワードではなく、アプリパスワードの使用をおすすめします。Nextcloud の「設定」→「セキュリティ」→「デバイスとセッション」で生成できます。
- プロジェクトをビルド:
npm run build
- サーバーをテスト:
npm start
Claude Desktop での使用
以下の設定を Claude Desktop の設定ファイルに追加します:
macOS
~/Library/Application Support/Claude/claude_desktop_config.json
Windows
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"nextcloud": {
"command": "node",
"args": ["/path/to/nextcloud-mcp-server/dist/index.js"],
"env": {
"NEXTCLOUD_URL": "https://your-nextcloud-server.com",
"NEXTCLOUD_USERNAME": "your-username",
"NEXTCLOUD_PASSWORD": "your-password-or-app-password"
}
}
}
}
利用可能なツール(合計 37)
ファイル操作(7)
nextcloud_list_files- ファイルとフォルダーを一覧表示nextcloud_upload_file- ファイルを Nextcloud にアップロードnextcloud_download_file- ファイルを Nextcloud からダウンロードnextcloud_delete_file- ファイルまたはフォルダーを削除nextcloud_move_file- ファイルやフォルダーを移動または名前変更nextcloud_copy_file- ファイルまたはフォルダーをコピーnextcloud_create_folder- 新しいフォルダーを作成
共有管理(4)
nextcloud_list_shares- すべての共有を一覧表示nextcloud_create_share- 新しい共有を作成nextcloud_update_share- 既存の共有を更新nextcloud_delete_share- 共有を削除
ユーザー管理(7)
nextcloud_list_users- すべてのユーザーを一覧表示nextcloud_get_user- ユーザーの詳細を取得nextcloud_create_user- 新しいユーザーを作成nextcloud_update_user- ユーザー情報を更新nextcloud_delete_user- ユーザーを削除nextcloud_enable_user- 無効化されたユーザーアカウントを有効化 ⭐ NEWnextcloud_disable_user- ユーザーアカウントを無効化(データは保持) ⭐ NEW
グループ管理(6)
nextcloud_list_groups- すべてのグループを一覧表示nextcloud_create_group- 新しいグループを作成nextcloud_delete_group- グループを削除 ⭐ NEWnextcloud_add_user_to_group- ユーザーをグループに追加nextcloud_remove_user_from_group- ユーザーをグループから削除nextcloud_get_group_users- グループ内のすべてのユーザーを取得 ⭐ NEW
システム情報(3)
nextcloud_get_server_status- サーバーのステータスを取得nextcloud_get_capabilities- サーバーの機能を取得nextcloud_test_connection- 接続をテストし、認証情報を確認
コメント(3)
nextcloud_list_comments- ファイルのコメントを一覧表示nextcloud_add_comment- ファイルにコメントを追加nextcloud_delete_comment- ファイルのコメントを削除
ローカルファイル管理(5)
nextcloud_download_to_local- Claude が直接アクセスできるよう、ファイルをローカルフォルダーにダウンロードnextcloud_list_local_files- ローカルのダウンロードフォルダー内のファイルを一覧表示nextcloud_delete_local_file- ローカルフォルダーからファイルを削除nextcloud_upload_from_local- ローカルフォルダーから Nextcloud にファイルをアップロードnextcloud_get_downloads_path- ダウンロードフォルダーのパスを取得
アクティビティ監視(2)⭐ NEW CATEGORY
nextcloud_list_activities- 最近のアクティビティ(アップロード、共有、ダウンロードなど)を一覧表示nextcloud_get_activity_types- 利用可能なアクティビティの種類とフィルターを取得
🆕 最近の更新(2025-08-06)
追加された新しいツール:
nextcloud_get_group_users- 特定のグループ内のすべてのユーザーを取得nextcloud_delete_group- Nextcloud からグループを削除nextcloud_list_activities- Nextcloud のアクティビティを監視(新しいカテゴリー)nextcloud_get_activity_types- 利用可能なアクティビティフィルターを取得nextcloud_enable_user- 無効化されたユーザーアカウントを有効化 ⭐ LATESTnextcloud_disable_user- ユーザーアカウントを無効化(データは保持) ⭐ LATEST
新しい機能:
- 完全なユーザー管理:有効化/無効化を含む、ライフサイクル全体を管理できます
- 完全なグループ管理:グループメンバーの一覧表示とグループの削除が可能になりました
- アクティビティ監視:ファイルのアップロード、ダウンロード、共有、ユーザー操作、セキュリティイベントを追跡します
- セキュリティの強化:データを失うことなく、一時的にアカウントを停止できます
- ユーザー体験の向上:7つのカテゴリーにわたる合計37個のツールで、整理がさらに容易になりました
利用可能なリソース
nextcloud://files- ルートディレクトリのファイル一覧nextcloud://shares- すべての共有の概要nextcloud://users- すべてのユーザーの一覧nextcloud://groups- すべてのグループの一覧nextcloud://status- サーバーのステータス情報nextcloud://capabilities- サーバーの機能
利用可能なプロンプト
backup_files- 包括的なバックアップワークフローを作成share_management- 詳細なオプションを使ってファイル共有を管理user_administration- ユーザー管理のワークフロー全体を実行file_organization- スマートな分類でファイルを整理security_audit- 共有と権限のセキュリティ監査を実施
ローカルファイル管理システム
サーバーには、Claude がファイルを直接扱えるようにする効率的なローカルファイル管理システムが含まれています。
仕組み:
- ローカルへのダウンロード:Nextcloud からローカルの
downloads/フォルダーにファイルをダウンロードします - 直接アクセス:Claude は標準的なファイル操作を使って、これらのファイルに直接アクセスできます
- 効率的な処理:大きなファイルの Base64 エンコード/デコードが不要です
- アップロード:変更したファイルを Nextcloud にアップロードできます
メリット:
- パフォーマンス:大きなファイルの場合、base64 エンコードよりもはるかに高速です
- メモリ効率:ファイル全体を base64 としてメモリに読み込む必要がありません
- Claude との統合:Claude は標準的なファイルツールを使用して、ドキュメントの読み取り、編集、処理を行えます
- ワークフローの柔軟性:ダウンロード → 処理 → アップロードのワークフロー
ワークフローの例:
1. Download PDF from Nextcloud to local folder
2. Claude reads and analyzes the PDF directly
3. Claude creates a summary or modified version
4. Upload the new file back to Nextcloud
API 互換性
この MCP サーバーは Nextcloud API バージョン 28.0 以降をサポートし、以下と互換性があります:
- WebDAV API - ファイル操作用
- OCS API v1/v2 - 共有とユーザー管理用
- Status API - サーバーの監視用
- Comments API - ファイルへのコメント用
セキュリティに関する考慮事項
- アプリパスワード:メインアカウントのパスワードではなく、必ずアプリパスワードを使用してください
- 権限:一部の操作には管理者権限が必要です
- ネットワークセキュリティ:Nextcloud への接続には HTTPS が使用されていることを確認してください
- アクセス制御:このサーバーは Nextcloud に組み込まれたアクセス制御に従います
- 監査証跡:すべての操作は Nextcloud によって記録されます
エラー処理
このサーバーは、以下のエラーを包括的に処理します:
- ネットワーク接続の問題
- 認証の失敗
- 権限拒否エラー
- ファイルが見つからないエラー
- 無効なパラメーター
- Nextcloud API エラー
開発
ビルド
npm run build
開発モード
npm run dev
リント
npm run lint
npm run lint:fix
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更を加えます
- 該当する場合はテストを追加します
- プルリクエストを送信します
ライセンス
MIT License - 詳細は LICENSE ファイルを参照してください。
サポート
問題や質問がある場合:
- Nextcloud API のドキュメントを確認してください
- MCP サーバーのログにあるエラーメッセージを確認してください
- Nextcloud インスタンスにアクセスでき、認証情報が正しいことを確認してください
- 実行しようとしている操作に必要な権限がユーザーにあることを確認してください
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。