Azure MCP服务器
Azure MCP服务器 语言类型:英语
服务介绍
🌟 Azure MCP 服务器
Azure MCP 服务器实现了 MCP 规范,以在 AI 代理和关键的 Azure 服务(如 Azure 存储、Cosmos DB 等)之间创建无缝连接。
请注意,此项目目前处于公共预览阶段,在正式发布之前,实现可能会发生重大变化。
🎯 概述
✨ 使用 Azure MCP 服务器可以做什么?
Azure MCP 服务器为您的代理提供了 Azure 上下文。以下是一些您可以尝试的示例提示:
🔍 探索您的 Azure 资源
- "列出我的 Azure 存储账户"
- "显示我所有的 Cosmos DB 数据库"
- "列出我的资源组"
- "显示我的存储账户中的表"
- "列出我的 Cosmos DB 数据库中的容器"
- "获取关于我的存储容器的详细信息"
📊 查询与分析
- "查询我的 Log Analytics 工作区"
⚙️ 管理配置
- "列出我的应用程序配置存储"
- "在我的应用配置中显示键值对"
🔧 高级 Azure 操作
- "列出我的 Azure CDN 终结点"
- "帮助我使用 Node.js 构建一个 Azure 应用程序"
🔍 工作原理
Azure MCP 服务器通过以下方式在 AI 代理和 Azure 服务之间创建无缝集成:
- 🔄 AI 代理可以理解的智能 JSON 通信
- 🏗️ 可转换为 Azure 操作的自然语言命令
- 💡 智能参数建议和自动完成
- ⚡ 一致且有意义的错误处理
🛠️ 当前支持的工具
Azure MCP 服务器提供与以下 Azure 服务交互的工具:
📊 Azure Cosmos DB (NoSQL 数据库)
- 列出 Cosmos DB 账户
- 列出并查询数据库
- 管理容器和项
- 对容器执行 SQL 查询
💾 Azure 存储
- 列出存储账户
- 管理 Blob 容器和 Blob
- 列出并查询存储表
- 获取容器属性和元数据
📈 Azure Monitor (Log Analytics)
- 列出 Log Analytics 工作区
- 使用 KQL 查询日志
- 列出可用表
- 配置监控选项
⚙️ Azure 应用配置
- 列出应用配置存储
- 管理键值对
- 处理标记配置
- 锁定/解锁配置设置
📦 Azure 资源组
- 列出资源组
- 资源组管理操作
🔧 Azure CLI 扩展
- 直接执行 Azure CLI 命令
- 支持所有 Azure CLI 功能
- JSON 输出格式
- 跨平台兼容性
🚀 Azure 开发者 CLI (azd) 扩展
- 直接执行 Azure 开发者 CLI 命令
- 支持模板发现、模板初始化、资源供应和部署
- 跨平台兼容性
有关详细的命令文档和示例,请参阅 Azure MCP 命令。
🔌 入门指南
Azure MCP 服务器需要 Node.js 来安装和运行服务器。如果你还没有安装 Node.js,请按照 这里 的说明进行操作。
VS Code + GitHub Copilot
Azure MCP 服务器提供了 Azure 数据平面工具。它可以单独使用,也可以与 VS Code 中的 GitHub Copilot for Azure 扩展 一起使用。如果你对 Azure MCP 服务器未涵盖的各种 Azure 开发场景中的广泛开发者支持感兴趣(例如在 Microsoft Learn 上搜索文档),我们也推荐这个扩展。
前提条件
- 安装稳定版或内部预览版的 VS Code:
- 安装 GitHub Copilot 和 GitHub Copilot Chat 扩展
- 在一个空文件夹中打开 VS Code
安装
✨ 一键安装
点击以下按钮之一,在 VS Code 或 VS Code Insiders 中安装 Azure MCP 服务器。
安装 Azure MCP 服务器后,请确保选择 GitHub Copilot 代理模式并刷新工具列表。要了解有关代理模式的更多信息,请访问 VS Code 文档。
🔧 手动安装
按照以下步骤进行手动安装:
- 添加
.vscode/mcp.json:
{
"servers": {
"Azure MCP Server": {
"command": "npx",
"args": [
"-y",
"@azure/mcp@latest",
"server",
"start"
]
}
}
}
🧪 测试 Azure MCP 服务器
- 在 VS Code 中打开 GitHub Copilot 并 切换到代理模式
- 你应该会在工具列表中看到 Azure MCP 服务器
- 尝试一个提示,告诉代理使用 Azure MCP 服务器,例如 "列出我的 Azure 存储容器"
- 代理应该能够使用 Azure MCP 服务器工具来完成你的查询
🤖 自定义 MCP 客户端
你可以轻松配置你的 MCP 客户端以使用 Azure MCP 服务器。让客户端运行以下命令并通过标准 IO 或 SSE 访问它。
使用标准 IO
配置 MCP 客户端以执行:npx -y @azure/mcp@latest server start。有关使用 VS Code 的说明,请遵循 一键安装 或 手动安装 中的说明。
使用 SSE
- 打开终端窗口并执行:
npx -y @azure/mcp@latest server start --transport sse - 服务器启动并托管在:http://localhost:5008。若要使用其他端口,请附加
--port {您的端口号}。 - 打开您的 MCP 客户端并添加 SSE 配置值。这可能因不同的 MCP 客户端而异。在 VS Code 中,它看起来像这样:
{ "servers": { "Azure MCP Server": { "type": "sse", "url": "http://localhost:5008/sse" } } }
更多端到端的 MCP 客户端/代理指南即将推出!
📝 故障排除
请参阅 故障排除指南 以获取常见问题和日志记录的帮助。
🔑 身份验证
Azure MCP 服务器无缝集成您主机操作系统的身份验证机制,使您非常容易上手!我们通过 DefaultAzureCredential 使用 Azure Identity,在幕后按以下顺序尝试这些凭据:
- 环境变量 (
EnvironmentCredential) - 适用于 CI/CD 管道 - 共享令牌缓存 (
SharedTokenCacheCredential) - 使用来自其他工具的缓存令牌 - Visual Studio (
VisualStudioCredential) - 使用您的 Visual Studio 凭证 - Azure CLI (
AzureCliCredential) - 使用您现有的 Azure CLI 登录 - Azure PowerShell (
AzurePowerShellCredential) - 使用您的 Az PowerShell 登录 - Azure 开发者 CLI (
AzureDeveloperCliCredential) - 使用您的 azd 登录 - 交互式浏览器 (
InteractiveBrowserCredential) - 如果需要,则回退到基于浏览器的登录
如果您已经通过上述任何一种方法登录,Azure MCP 服务器将自动使用这些凭据。
如果您遇到任何身份验证问题,请访问我们的 故障排除指南。
生产环境凭据
默认情况下,Azure MCP 服务器不包括托管身份和工作负载身份等生产凭据。要启用这些凭据,请设置环境变量:
AZURE_MCP_INCLUDE_PRODUCTION_CREDENTIALS=true
当您希望在 Azure 服务上使用托管身份时,这很有用。
🛡️ 安全注意事项
您的凭据始终通过官方 Azure Identity SDK 安全处理 - 我们从不直接存储或管理令牌。
MCP 作为一种现象是非常新颖且前沿的。与所有新技术标准一样,考虑进行安全审查,以确保与 MCP 服务器集成的所有系统都遵循您的系统预期遵守的所有法规和标准。这不仅包括 Azure MCP 服务器,还包括您选择实现的任何 MCP 客户端/代理直至模型提供者。
👥 贡献
我们欢迎对 Azure MCP 服务器做出贡献!无论您是修复错误、添加新功能还是改进文档,您的贡献都是受欢迎的。
请阅读我们的 贡献指南,了解有关以下方面的指导方针:
- 🛠️ 设置开发环境
- ✨ 添加新命令
- 📝 代码风格和测试要求
- 🔄 创建拉取请求
🤝 行为准则
本项目采用了
Microsoft 开源行为准则。
更多信息,请参阅
行为准则常见问题解答
或联系 opencode@microsoft.com
以获取更多问题或意见。