ADLS2 MCP Server 🚀 について
ADLS2 MCP Serverは、Azure Data Lake Storage Gen2のファイルやディレクトリを操作するMCPツールを提供します。ファイルシステム操作に対応し、読み取り専用モードが既定で有効です。Azure CLIの認証情報も利用できます。
主な機能
- 01ファイルシステムの一覧・作成・削除
- 02ファイルのアップロードとダウンロード
- 03ファイル名とディレクトリ名の管理
- 04ファイルメタデータの確認と更新
- 05読み取り専用モードの設定
活用シーン
- 01ADLS2ストレージアカウント内のファイル管理
- 02ストレージ内のファイルをローカルディレクトリにダウンロード
- 03ファイルメタデータの確認や更新
MCP 対応
ADLS2のファイルシステム、ファイル、ディレクトリを操作するツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ADLS2 MCP サーバー 🚀
Azure Data Lake Storage Gen2 向けの Model Context Protocol(MCP)サーバー実装です。このサービスは ADLS2 ストレージとやり取りするための標準インターフェースを提供し、MCP ツールを通じてファイル操作を可能にします。
セットアップ 🛠️
インストール 📦
Python 3.13 以降が必要です。
uv を使用してパッケージをインストールします:
uv pip install adls2-mcp-server
MCP の設定 ⚙️
Claude Desktop の設定
1 - Claude Desktop の設定を編集します:
claude_desktop_config.json を開き、次の設定を追加します。
MacOs では、ファイルは次の場所にあります:
~/Library/Application Support/Claude Desktop/claude_desktop_config.json。
Windows では、ファイルは次の場所にあります:
%APPDATA%\Claude Desktop\claude_desktop_config.json。
{
"mcpServers": {
"adls2": {
"command": "adls2-mcp-server",
"env": {
"LOG_LEVEL": "DEBUG",
"UPLOAD_ROOT": "/path/to/store/uploads",
"DOWNLOAD_ROOT": "/path/to/store/downloads",
"AZURE_STORAGE_ACCOUNT_NAME": "your-azure-adls2-storage-account-name",
"READ_ONLY_MODE": "false"
}
}
}
}
使用できる環境設定変数は次のとおりです:
| 変数 | 説明 | デフォルト |
|---|---|---|
LOG_LEVEL | ログレベル | INFO |
UPLOAD_ROOT | ファイルアップロード用のルートディレクトリ | ./uploads |
DOWNLOAD_ROOT | ファイルダウンロード用のルートディレクトリ | ./downloads |
AZURE_STORAGE_ACCOUNT_NAME | Azure ADLS2 ストレージアカウント名 | None |
AZURE_STORAGE_ACCOUNT_KEY | Azure ADLS2 ストレージアカウントキー(任意) | None |
READ_ONLY_MODE | サーバーを読み取り専用モードで動作させるかどうか | true |
AZURE_STORAGE_ACCOUNT_KEY が設定されていない場合、サーバーは Azure CLI の認証情報を使用して認証を試みます。サーバーを実行する前に、Azure CLI にログインしていることを確認してください:
az login
2 - Claude Desktop を再起動します。
使用可能なツール 🔧
ファイルシステム(コンテナー)操作
list_filesystems- ストレージアカウント内のすべてのファイルシステムを一覧表示しますcreate_filesystem- 新しいファイルシステムを作成しますdelete_filesystem- 既存のファイルシステムを削除します
ファイル操作
upload_file- ファイルを ADLS2 にアップロードしますdownload_file- ADLS2 からファイルをダウンロードしますfile_exists- ファイルが存在するか確認しますrename_file- ファイルの名前を変更/移動しますget_file_properties- ファイルのプロパティを取得しますget_file_metadata- ファイルのメタデータを取得しますset_file_metadata- ファイルのメタデータを設定しますset_file_metadata_json- JSON を使用して複数のメタデータのキーと値のペアを設定します
ディレクトリ操作
create_directory- 新しいディレクトリを作成しますdelete_directory- ディレクトリを削除しますrename_directory- ディレクトリの名前を変更/移動しますdirectory_exists- ディレクトリが存在するか確認しますdirectory_get_paths- 指定したディレクトリ以下のすべてのパスを取得します
開発 💻
ローカル開発環境のセットアップ
1 - リポジトリをクローンします:
git clone https://github.com/erikhoward/adls2-mcp-server.git
cd adls2-mcp-server
2 - 仮想環境を作成して有効化します:
Linux/macOS:
python -m venv .venv
source .venv/bin/activate
Windows:
.venv\Scripts\activate
3 - 依存関係をインストールします:
pip install -e ".[dev]"
4 - 環境変数をコピーして設定します:
cp .env.example .env
.env を開き、設定を編集します。
AZURE_STORAGE_ACCOUNT_NAME=your_azure_adls2_storage_account_name
AZURE_STORAGE_ACCOUNT_KEY=your_azure_adls2_storage_key (optional)
DOWNLOAD_ROOT=/path/to/download/folder
UPLOAD_ROOT=/path/to/upload/folder
READ_ONLY_MODE=True
LOG_LEVEL=INFO
AZURE_STORAGE_ACCOUNT_KEY が設定されていない場合、サーバーは Azure CLI の認証情報を使用して認証を試みます。サーバーを実行する前に、Azure CLI にログインしていることを確認してください:
az login
5 - Claude Desktop の設定
claude_desktop_config.json を開き、次の設定を追加します。
MacOs では、ファイルは次の場所にあります:
~/Library/Application Support/Claude Desktop/claude_desktop_config.json。
Windows では、ファイルは次の場所にあります:
%APPDATA%\Claude Desktop\claude_desktop_config.json。
{
"mcpServers": {
"adls2": {
"command": "uv",
"args": [
"--directory",
"/path/to/adls2-mcp-server/repo",
"run",
"adls2-mcp-server"
],
"env": {
"LOG_LEVEL": "DEBUG",
"UPLOAD_ROOT": "/path/to/store/uploads",
"DOWNLOAD_ROOT": "/path/to/store/downloads",
"AZURE_STORAGE_ACCOUNT_NAME": "your-azure-adls2-storage-account-name",
"READ_ONLY_MODE": "false"
}
}
}
}
6 - Claude Desktop を再起動します。
コントリビューション 🤝
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/AmazingFeature) - 変更をコミットします(
git commit -m '✨ Add some AmazingFeature') - ブランチにプッシュします(
git push origin feature/AmazingFeature) - プルリクエストを作成します
ライセンス ⚖️
MIT ライセンスのもとで提供されています。詳細は LICENSE.md ファイルをご覧ください。
これは Microsoft の公式製品ではありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。