Azure MCP服务器
](https://smithery.ai/server/@mashriram/azure_mcp_server)
a的实施 模型上下文协议 用于与Azure服务交互的服务器。目前支持Azure Blob存储和Azure Cosmos DB(NoSQL API)。通过此服务器执行的所有操作都会自动记录,并可通过 audit://azure-operations 资源端点。
使用Claude桌面应用程序在本地运行
通过Smithery安装
通过以下方式自动安装Azure MCP Server for Claude Desktop 史密瑟里:
npx -y @smithery/cli install @mashriram/azure_mcp_server --client claude手动安装
- 克隆存储库: 将此存储库克隆到本地计算机。
- 配置Azure凭据: 配置您的Azure凭据。此服务器需要一个具有Blob存储、Cosmos DB和应用程序配置适当权限的Azure帐户。我们建议使用
DefaultAzureCredential其试图按顺序通过各种方法进行身份验证。
- 环境变量: 设置以下环境变量: - AZURE_STORAGE_ACCOUNT_URL:您的Azure存储帐户的URL(例如。, https://.blob.core.windows.net). - AZURE_COSMOSDB_ENDPOINT:Azure Cosmos DB帐户的终结点URL。 - AZURE_COSMOSDB_KEY:Azure Cosmos DB帐户的主键或次密钥。 重要提示:将此密钥视为密码并确保其安全。 - AZURE_APP_CONFIGURATION_ENDPOINT:Azure应用程序配置实例的URL。 - Azure命令行界面: 或者,您可以使用Azure CLI进行身份验证。确保您使用具有必要权限的帐户登录。此服务器使用 DefaultAzureCredential 因此,如果未指定环境变量,它将自动使用Azure CLI凭据进行身份验证。使用 az login 登录。
- 配置Claude桌面: 将以下配置添加到您的
claude_desktop_config.json文件:
- macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%/Claude/claude_desktop_config.json
"mcpServers": {
"mcp-server-azure": {
"command": "uv",
"args": [
"--directory",
"/path/to/repo/azure-mcp-server",
"run",
"azure-mcp-server"
]
}
}替换 /path/to/repo/azure-mcp-server 带有克隆存储库的实际路径。
- 安装并启动克劳德桌面: 安装并打开 Claude桌面应用程序.
- 测试设置: 让Claude使用Azure工具执行读或写操作(例如,创建Blob存储容器或向Cosmos DB添加项目)。如果遇到问题,请参阅MCP调试文档 这里.
可用工具
Azure Blob存储操作
- blob_container_create: 创建新的Blob存储容器。需要
container_name. - blob_container_list: 列出配置帐户中的所有Blob存储容器。
- blob_container_delete: 删除Blob存储容器。需要
container_name. - blob_upload: 将blob(文件)上载到blob存储容器。需要
container_name,blob_name,以及file_content(Base64编码)。 - blob_delete: 从blob存储容器中删除blob。需要
container_name和blob_name. - blob_list: 列出Blob存储容器中的Blob。需要
container_name. - blob_read: 从blob存储中读取blob的内容。需要
container_name和blob_name。以文本形式返回内容。
Azure Cosmos DB(NoSQL API)操作
集装箱作业
- cosmosdb_container_create: 在数据库中创建一个新的Cosmos DB容器。需要
container_name和partition_keyThedatabase_name是可选的,默认为defaultdbThepartition_key应该是定义分区键的JSON对象(例如。,{"paths": ["/myPartitionKey"], "kind": "Hash"}). - cosmosdb_container_describe: 检索Cosmos DB容器的详细信息。需要
container_nameThedatabase_name是可选的,默认为defaultdb. - cosmosdb_container_list: 列出数据库中的所有Cosmos DB容器。这
database_name是可选的,默认为defaultdb. - cosmosdb_container_delete: 删除Cosmos DB容器。需要
container_nameThedatabase_name是可选的,默认为defaultdb.
项目操作
- cosmosdb_item_create: 在Cosmos DB容器中创建新项。需要
container_name和那个item(表示项目的JSON对象)。这database_name是可选的,默认为defaultdb.确保你的item包括分区键字段和值。 - cosmosdb_item_read: 从Cosmos DB容器中读取项目。需要
container_name,item_id,以及partition_keyThedatabase_name是可选的,默认为defaultdbThepartition_key*必须* 匹配正在读取的项的分区键值。 - cosmosdb_item_replace: 替换Cosmos DB容器中的现有项。需要
container_name,item_id,partition_key,以及item(JSON对象表示 *完成* 更新项目)。这database_name是可选的,默认为defaultdbThepartition_key*必须* 匹配被替换项的分区键值。 - cosmosdb_item_delete: 从Cosmos DB容器中删除项目。需要
container_name,item_id,以及partition_keyThedatabase_name是可选的,默认为defaultdbThepartition_key*必须* 匹配要删除的项目的分区键值。 - cosmosdb_item_query: 使用SQL查询Cosmos DB容器中的项目。需要
container_name和queryThedatabase_name是可选的,默认为defaultdb。可选择接受parameters用于参数化查询的数组。
Azure应用程序配置操作
- app_configuration_kv_read: 从Azure应用程序配置中读取键值。这
key参数是可选的,允许按键模式进行筛选(支持通配符,例如“app1”/*').这label参数对于按标签值筛选是可选的('\\0'表示没有标签,'*“适用于任何标签)。 - app_configuration_kv_write: 在Azure应用程序配置中写入或更新键值。需要
key和value参数。可选参数包括label将标签应用于键值,以及content_type指定内容类型(例如“application/json”)。 - app_configuration_kv_delete: 从Azure应用程序配置中删除键值。需要
key参数。这label参数是可选的,指定要删除哪个标记版本的密钥。
Cosmos DB重要提示:
- 分区密钥: Cosmos DB需要一个分区密钥来实现高效的数据存储和检索。在创建容器时,您 *必须* 定义分区键。在阅读、替换或删除项目时,您 *必须* 为您正在访问的项提供正确的分区键值。分区键是一个属性 *在...之内* 您的数据。
- 病例敏感性: Cosmos DB资源名称(数据库、容器、项目ID)和分区键值区分大小写。确保在工具调用中使用正确的套管。
- 默认数据库: 如果
database_name如果不提供,服务器默认使用名为的数据库SampleDB。请确保此数据库存在,或在工具调用参数中明确提供所需数据库的名称。
此README提供了将Azure MCP Server与Claude桌面应用程序一起设置和使用所需的信息。请记住安全地处理您的Azure凭据,并参阅MCP文档以获取有关协议的更多信息
