Azure_mcp_server

Azure_mcp_server

🚀 Azure MCP 服务器

这是一个实现 Azure 的 MCP (Multi-Cloud Provider) 协议的服务器,支持 Azure Blob Storage、Azure Cosmos DB 和 Azure App Configuration 服务,可用于存储管理数据、提供数据库服务以及管理应用程序设置。

🚀 快速开始

本服务器实现了 Azure 的 MCP 协议,支持多种 Azure 服务。你可以按照以下步骤进行安装和配置。

✨ 主要特性

  • Azure Blob Storage:用于存储和管理对象存储中的数据。
  • Azure Cosmos DB:一个全球化分布的 NoSQL 数据库服务,提供高扩展性和高性能。
  • Azure App Configuration:用于管理和配置应用程序设置。

📦 安装指南

使用 Smithay 进行安装

如果你已经使用 Smithay 进行开发,请按照以下步骤操作:

smithay new Azure-MCP-Server --type=mcp
cd Azure-MCP-Server
# 在 src/main.rs 中添加以下内容,将 YOUR_SUBSCRIPTION_ID 和 YOUR_RESOURCE_GROUP 替换为你的实际值

手动安装

如果你没有使用 Smithay,请按照以下步骤手动安装:

  1. 安装 Rust 和相关依赖。
  2. 克隆此仓库:
git clone https://github.com/your-repository/Azure-MCP-Server.git
cd Azure-MCP-Server
cargo build

📚 详细文档

配置指南

创建数据库和容器

在 Azure 门户中创建以下资源:

  • 数据库:命名为 SampleDB
  • 容器:命名为 sample-container,并指定分区键(例如 /partitionKey)。

插入示例数据

使用以下 Python 脚本插入一些示例数据:

from azure.cosmos import CosmosClient, PartitionKey

# 初始化 Cosmos 客户端
client = CosmosClient('your-endpoint', 'your-key')

# 获取数据库和容器引用
db = client.get_database_client("SampleDB")
container = db.get_container_client("sample-container")

# 插入示例数据
item1 = {
"id": "item1",
"partitionKey": "分区键值1",
"name": "Item 1"
}
container.upsert_item(item1)

item2 = {
"id": "item2",
"partitionKey": "分区键值2",
"name": "Item 2"
}
container.upsert_item(item2)

工具操作

Blob Storage 操作

  • 创建 blob:上传文件到存储账户。
  • 读取 blob:从存储账户下载文件。
  • 删除 blob:删除指定的 blob 文件。

Cosmos DB 操作

容器管理
  • 创建容器
    /path/to/mcp-cli create_cosmos_container --container_name sample-container --partition_key "/partitionKey" [--database_name SampleDB]
    
  • 描述容器
    /path/to/mcp-cli describe_cosmos_container --container_name sample-container [--database_name SampleDB]
    
  • 列出容器
    /path/to/mcp-cli list_cosmos_containers [--database_name SampleDB]
    
  • 删除容器
    /path/to/mcp-cli delete_cosmos_container --container_name sample-container [--database_name SampleDB]
    
文档管理
  • 创建文档
    /path/to/mcp-cli create_cosmos_document --container_name sample-container --document '{"id": "new-item", "partitionKey": "new-key", "name": "New Item"}' [--database_name SampleDB]
    
  • 读取文档
    /path/to/mcp-cli get_cosmos_document --container_name sample-container --document_id new-item [--database_name SampleDB]
    
  • 更新文档
    /path/to/mcp-cli update_cosmos_document --container_name sample-container --document_id new-item --update_mask '{"name": "New Item Updated"}' [--database_name SampleDB]
    
  • 删除文档
    /path/to/mcp-cli delete_cosmos_document --container_name sample-container --document_id new-item [--database_name SampleDB]
    

App Configuration 操作

  • 获取配置值
    /path/to/mcp-cli get_app_configuration --key my-config-key
    
  • 设置配置值
    /path/to/mcp-cli set_app_configuration --key my-config-key --value my-config-value
    

⚠️ 注意事项

⚠️ 重要提示

  1. 在使用 Cosmos DB 时,请确保指定正确的分区键,否则会导致性能问题。
  2. Cosmos DB 对大小写敏感,请注意字段名称的大小写。
  3. 默认数据库为 SampleDB,如果需要使用其他数据库,请在命令中显式指定 --database_name
  • 0 关注
  • 0 收藏,22 浏览
  • system 提出于 2025-10-05 16:21

相似服务问题

相关AI产品