
Azure MCP Server

2025.02.17
0
PythonAzure 服务集成存储管理数据库管理数据库内容生成
Azure MCP Server 是一个基于 Model Context Protocol (MCP) 的服务实现,主要用于与 Azure 服务进行交互。目前支持 Azure Blob Storage 和 Azure Cosmos DB (NoSQL API) 的操作。所有通过该服务器执行的操作都会被自动记录,并可通过 `audit://azure-operations` 资源端点访问。
View on GitHub
Overview
基本能力
产品定位
Azure MCP Server 是一个用于与 Azure 服务交互的中间件,特别适用于需要通过 Claude 桌面应用管理和操作 Azure 存储和数据库服务的场景。
核心功能
- Azure Blob Storage 操作:
- 创建、列出、删除 Blob 容器
-
上传、删除、列出、读取 Blob 文件
-
Azure Cosmos DB (NoSQL API) 操作:
- 容器操作:创建、描述、列出、删除容器
-
项目操作:创建、读取、替换、删除项目,以及执行 SQL 查询
-
审计日志:所有操作都会被自动记录,可通过特定端点访问。
适用场景
- 需要通过 Claude 桌面应用管理 Azure 存储和数据库
- 需要自动化 Azure 资源管理
- 需要审计 Azure 操作记录
工具列表
- Blob Storage 工具:
blob_container_create
:创建容器blob_container_list
:列出容器blob_container_delete
:删除容器blob_upload
:上传文件blob_delete
:删除文件blob_list
:列出文件-
blob_read
:读取文件内容 -
Cosmos DB 工具:
cosmosdb_container_create
:创建容器cosmosdb_container_describe
:描述容器cosmosdb_container_list
:列出容器cosmosdb_container_delete
:删除容器cosmosdb_item_create
:创建项目cosmosdb_item_read
:读取项目cosmosdb_item_replace
:替换项目cosmosdb_item_delete
:删除项目cosmosdb_item_query
:执行 SQL 查询
常见问题解答
- 认证问题:确保正确配置 Azure 凭据,可以使用环境变量或 Azure CLI
- 分区键问题:Cosmos DB 操作必须提供正确的分区键
- 默认数据库:未指定数据库名称时默认使用
SampleDB
,请确保该数据库存在
使用教程
使用依赖
- Azure 账户:需要有权限访问 Blob Storage 和 Cosmos DB
- 环境变量:
bash export AZURE_STORAGE_ACCOUNT_URL="https://<your_account_name>.blob.core.windows.net" export AZURE_COSMOSDB_ENDPOINT="<your_cosmosdb_endpoint>" export AZURE_COSMOSDB_KEY="<your_cosmosdb_key>"
或者使用 Azure CLI 登录:bash az login
安装教程
-
通过 Smithery 安装:
bash npx -y @smithery/cli install @mashriram/azure_mcp_server --client claude
-
手动安装:
- 克隆仓库
- 配置 Azure 凭据
- 配置 Claude Desktop:
json "mcpServers": { "mcp-server-azure": { "command": "uv", "args": [ "--directory", "/path/to/repo/azure-mcp-server", "run", "azure-mcp-server" ] } }
- 安装并启动 Claude 桌面应用
调试方式
-
测试 Blob Storage 操作:
bash # 示例:创建容器 curl -X POST http://localhost:<port>/blob_container_create -d '{"container_name":"test-container"}'
-
测试 Cosmos DB 操作:
bash # 示例:创建项目 curl -X POST http://localhost:<port>/cosmosdb_item_create -d '{"container_name":"test-container", "item":{"id":"1","name":"test"}}'
-
检查审计日志:
bash curl http://localhost:<port>/audit://azure-operations