ADLS2 MCP Server 🚀
Microsoft Azure Data Lake Storage MCP 服务器
erikhoward
README
ADLS2 MCP 服务器 🚀
一个用于 Azure Data Lake Storage Gen2 的模型上下文协议 (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- 将文件上传到 ADLS2download_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 - 安装依赖项:
uv 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。
贡献 🤝
欢迎贡献!请随时提交 Pull Request。
- Fork 存储库
- 创建您的功能分支 (
git checkout -b feature/AmazingFeature) - 提交您的更改 (
git commit -m '✨ Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 打开一个 Pull Request
许可证 ⚖️
在 MIT 许可下发布 - 请参阅 LICENSE.md 文件。
这不是官方的 Microsoft 产品。
推荐服务器
AWS MCP Server
一个模型上下文协议服务器实现,使 Claude 能够通过自然语言命令在 S3 和 DynamoDB 服务上执行 AWS 操作。
Google Drive MCP Server
与 Google Drive 集成,以实现文件列表、搜索和读取,以及 Google 表格的读取和写入。
Google Drive MCP Server
启用与 Google Drive 的集成,用于列出、读取和搜索文件,支持各种文件类型,并为 Google Workspace 文件提供自动导出功能。
MCP JSON Document Collection Server
一个模型上下文协议服务器,允许创建和管理多个 Fireproof JSON 数据库,并提供 CRUD 操作、查询功能以及云同步,以便与他人共享数据库。
Unstructured Document Processor MCP
一个模型上下文协议服务器,它使大型语言模型能够从各种文件格式的非结构化文档中提取和使用内容。
Firebase MCP Server
一个提供统一接口以与 Firebase 服务(包括身份验证、Firestore 和存储)交互的服务器。
MCP Server for Apache OpenDAL™
一个模型上下文协议服务器,通过 Apache OpenDAL™ 提供对包括 S3、Azure Blob 存储和 Google Cloud Storage 在内的多个存储服务的无缝访问。
Cloudinary MCP Server
这个服务器提供了一些工具,可以使用 Claude/Cline 直接将图片和视频上传到 Cloudinary,从而方便资源管理,并提供可定制的选项,例如资源类型和公共 ID。
supabase-mcp
一个 MCP 服务器,提供与 Supabase 数据库、存储和边缘函数交互的工具。
Azure MCP Server
这个服务器实现了模型上下文协议,可以与 Azure Blob 存储和 Cosmos DB 无缝交互,从而实现操作的自动日志记录和审计跟踪。