mcp服务器azure
MCP(模型上下文协议)服务器,提供与Azure服务交互的工具,包括虚拟机、存储、密钥库、资源组、AKS和监视器。
建筑
graph TB
subgraph Client
style Client fill:#4A90D9,stroke:#2E6BA6,color:#FFFFFF
MCP_Client["MCP Client"]
end
subgraph Server["mcp-server-azure"]
style Server fill:#2ECC71,stroke:#1A9B52,color:#FFFFFF
Index["index.ts
MCP Server Entry"]
subgraph Tools
style Tools fill:#F39C12,stroke:#C67D0A,color:#FFFFFF
T1["vm_list"]
T2["storage_list_blobs"]
T3["keyvault_get_secret"]
T4["resource_group_list"]
T5["aks_list_clusters"]
T6["monitor_list_metrics"]
end
end
subgraph Azure["Azure Services"]
style Azure fill:#0078D4,stroke:#005A9E,color:#FFFFFF
VM["Virtual Machines"]
Storage["Blob Storage"]
KV["Key Vault"]
RG["Resource Groups"]
AKS["AKS"]
Monitor["Azure Monitor"]
end
MCP_Client -- "stdio transport" --> Index
Index --> T1 & T2 & T3 & T4 & T5 & T6
T1 --> VM
T2 --> Storage
T3 --> KV
T4 --> RG
T5 --> AKS
T6 --> Monitor安装
npm install
npm run build配置
设置以下环境变量或使用Azure CLI身份验证:
| 变量 | 描述 | 必填 |
|---|---|---|
AZURE_TENANT_ID | Azure AD租户ID | 是(如果不使用CLI身份验证) |
AZURE_CLIENT_ID | Azure AD应用程序客户端ID | 是(如果不使用CLI身份验证) |
AZURE_CLIENT_SECRET | Azure AD应用程序客户端机密 | 是(如果不使用CLI身份验证) |
AZURE_SUBSCRIPTION_ID | Azure订阅ID | 是 |
用法
独立
npm start发展
npm run dev码头工人
docker build -t mcp-server-azure .
docker run -e AZURE_SUBSCRIPTION_ID=xxx -e AZURE_TENANT_ID=xxx mcp-server-azureMCP客户端配置
{
"mcpServers": {
"azure": {
"command": "node",
"args": ["dist/index.js"],
"env": {
"AZURE_SUBSCRIPTION_ID": "your-subscription-id"
}
}
}
}工具参考
| 工具 | 说明 | 参数 |
|---|---|---|
vm_list | 列出虚拟机 | resource_group? |
storage_list_blobs | 列出容器中的blob | account_name, container_name, prefix? |
keyvault_get_secret | 获取密钥库秘密 | vault_name, secret_name |
resource_group_list | 列出资源组 | 无 |
aks_list_clusters | 列出AKS集群 | resource_group? |
monitor_list_metrics | 列出资源的指标 | resource_uri, metric_names, timespan?, interval? |
许可证
麻省理工学院
