adls
Microsoft Azure Data Lake Storage MCP Server
claude mcp add --transport stdio erikhoward-adls-mcp-server uv --directory /path/to/adls2-mcp-server/repo run adls2-mcp-server \ --env LOG_LEVEL="DEBUG" \ --env UPLOAD_ROOT="/path/to/store/uploads" \ --env DOWNLOAD_ROOT="/path/to/store/downloads" \ --env READ_ONLY_MODE="false" \ --env AZURE_STORAGE_ACCOUNT_KEY="optional-your-storage-account-key" \ --env AZURE_STORAGE_ACCOUNT_NAME="your-azure-adls2-storage-account-name"
How to use
This MCP server implements Azure Data Lake Storage Gen2 (ADLS2) interactions through the MCP tooling. It exposes a set of filesystem, file, and directory operations that allow you to list, upload, download, rename, delete, and query metadata and properties on ADLS2 storage. You can enable read-only mode to restrict write operations, and you can wire the server into Claude Desktop (or other MCP clients) using the provided configuration. Typical tasks include listing available filesystems, creating directories, uploading local files to a filesystem, downloading blobs, and inspecting or updating metadata and properties on stored items.
How to install
Prerequisites:
- Python 3.13+ installed on your system
- uv (the MCP package manager) installed and available on your PATH
- Access to an ADLS2 storage account with credentials (Azure storage account name and optional key)
Install steps:
- Install the MCP server package via uv:
uv pip install adls2-mcp-server
- (Optional) Create and activate a virtual environment (recommended): Linux/macOS:
python -m venv .venv
source .venv/bin/activate
Windows:
.venv\Scripts\activate
- Install development dependencies (if you plan to develop or run from source):
pip install -e ".[dev]"
- Copy and configure environment variables (example):
cp .env.example .env
Edit .env with your settings, e.g.:
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
- Start the MCP server (via uv as configured in your mcp_config):
uv run adls2-mcp-server
- If you are using Claude Desktop, update the Claude Desktop configuration to point at the local uv-based server as described in the README.
Additional notes
Notes:
- If AZURE_STORAGE_ACCOUNT_KEY is not provided, the server will attempt to authenticate using Azure CLI credentials. Ensure you run az login prior to starting the server if you rely on CLI-based authentication.
- In read-only mode, write operations like upload, delete, and rename will be disabled. Adjust READ_ONLY_MODE to fit your workflow.
- Ensure UPLOAD_ROOT and DOWNLOAD_ROOT directories exist and are writable by the server process.
- If you change credentials or storage account details, restart the MCP server to apply changes.
- The server exposes a comprehensive set of tools, including filesystem, file, and directory operations (see the README’s Available Tools section for exact commands).
Related MCP Servers
web-eval-agent
An MCP server that autonomously evaluates web applications.
mcp-neo4j
Neo4j Labs Model Context Protocol servers
Gitingest
mcp server for gitingest
fhir
FHIR MCP Server – helping you expose any FHIR Server or API as a MCP Server.
unitree-go2
The Unitree Go2 MCP Server is a server built on the MCP that enables users to control the Unitree Go2 robot using natural language commands interpreted by a LLM.
sympy
A MCP server for symbolic manipulation of mathematical expressions