2026年6月对Azure MCP服务器进行的测试。涉及容器的使用(在Docker Hub中构建和发布,在VS Code中使用Docker Compose进行测试)。
最新用于测试的公开镜像:
renatogroffe/azure-mcp-2025-06:8
为什么我创建了一个镜像,而不是使用Docker目录中的MCP服务器版本?
需要创建一个服务主体,为了测试目的,我为其分配了reader权限:
az ad sp create-for-rbac --name testes-mcp-azure --role Reader --scopes /subscriptions/SUBSCRIPTION_ID
使用Reader角色可能不足以执行某些操作。对于涉及存储账户中的Blob细节或Azure应用配置中的键值查询,我使用了以下角色:
这将返回一个包含应用程序注册配置的JSON,该配置代表服务主体:
{
"appId": "应用程序注册ID",
"displayName": "testes-mcp-azure",
"password": "应用程序注册密钥",
"tenant": "订阅所在的租户ID"
}
这些配置应填写到**.env文件中的AZURE_TENANT_ID**、AZURE_CLIENT_ID和AZURE_CLIENT_SECRET变量中(位于scripts文件夹)。
通过docker run创建MCP服务器:
docker run -d --env-file .env -p 5008:5008 renatogroffe/azure-mcp-2025-06:8 --transport sse
可选地,也可以使用位于scripts文件夹中的文件,并通过以下命令初始化环境:
docker-compose up -d
MCP服务器已运行,并已在Visual Studio Code中配置集成:

通过Docker Desktop查看生成的日志:

使用GitHub Copilot聊天示例(选择了Agent):

