adls-mcp-server 是一个 Model Context Protocol(MCP)服务器实现,用于 Azure Data Lake Storage Gen2(ADLS2)。它提供标准化接口,使支持 MCP 的客户端(如 Claude Desktop)能够通过工具调用与 ADLS2 存储进行交互,完成文件系统与文件层面的操作。
主要能力 该服务器提供以下 MCP 工具:
- 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:获取指定目录下的所有路径。
使用方式 环境要求:需要 Python 3.13 或更高版本。可使用 uv 安装该包。
Claude Desktop 配置:
- 编辑 Claude Desktop 配置文件 claude_desktop_config.json。在 macOS 上,文件位于 ~/Library/Application Support/Claude Desktop/claude_desktop_config.json;在 Windows 上,文件位于 %APPDATA%\Claude Desktop\claude_desktop_config.json。添加相应配置。
- 配置环境变量。如果未设置 AZURE_STORAGE_ACCOUNT_KEY,服务器将尝试使用 Azure CLI 凭据进行身份验证。运行服务器前需确保已通过 Azure CLI 登录。
- 重启 Claude Desktop。
本地开发设置:
- 克隆仓库。
- 创建并激活虚拟环境。
- 安装依赖。
- 复制并配置环境变量,编辑 .env 文件填入设置。
- 配置 Claude Desktop。
- 重启 Claude Desktop。
适用场景 适用于需要通过 MCP 客户端管理 Azure Data Lake Storage Gen2 的场景,例如在 Claude Desktop 中执行文件系统创建与删除、文件上传下载、目录管理、文件元数据读写等操作。
限制与说明 该项目需要 Python 3.13 或更高版本。若未提供 AZURE_STORAGE_ACCOUNT_KEY,则依赖 Azure CLI 凭据认证,需提前登录。项目采用 MIT 许可证,详见 LICENSE.md。该项目不是微软官方产品。欢迎贡献,可通过 Fork 仓库、创建功能分支、提交更改、推送分支并打开 Pull Request 的方式参与。