这是一个实现 Azure 的 MCP (Multi-Cloud Provider) 协议的服务器,支持 Azure Blob Storage、Azure Cosmos DB 和 Azure App Configuration 服务,可用于存储管理数据、提供数据库服务以及管理应用程序设置。
本服务器实现了 Azure 的 MCP 协议,支持多种 Azure 服务。你可以按照以下步骤进行安装和配置。
如果你已经使用 Smithay 进行开发,请按照以下步骤操作:
smithay new Azure-MCP-Server --type=mcp
cd Azure-MCP-Server
# 在 src/main.rs 中添加以下内容,将 YOUR_SUBSCRIPTION_ID 和 YOUR_RESOURCE_GROUP 替换为你的实际值
如果你没有使用 Smithay,请按照以下步骤手动安装:
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)
/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]
/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
⚠️ 重要提示
- 在使用 Cosmos DB 时,请确保指定正确的分区键,否则会导致性能问题。
- Cosmos DB 对大小写敏感,请注意字段名称的大小写。
- 默认数据库为
SampleDB,如果需要使用其他数据库,请在命令中显式指定--database_name。