mcpField
M
MCP Client Configuration with Azure App Configuration

MCP Client Configuration with Azure App Configuration

本地服务
github.com/hahahahahaiyiwen云与基础设施178 周前更新

关于 MCP Client Configuration with Azure App Configuration

MCP Client Configuration with Azure App Configuration 是一个 C# 管理器,使用集中存储的设置让应用连接 MCP 服务。它支持按环境配置,并可自动刷新设置,无需重新部署。

主要功能

  1. 01在 Azure App Configuration 中存储服务配置
  2. 02按设定间隔自动刷新配置
  3. 03按环境区分设置
  4. 04通过 Microsoft Entra ID 验证 Azure 资源访问
  5. 05连接 stdio 和 SSE 类型的服务

适用场景

  1. 01无需重新部署应用即可更新 MCP 服务设置
  2. 02维护开发、测试和生产环境的独立配置
  3. 03为分阶段部署策略应用配置变更

MCP 相关

使用集中存储且可刷新的配置,管理应用到多个 MCP 服务的连接。支持 stdio 和 SSE 等服务类型。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudconfiguration": {
"command": "npx",
"args": [
"-y",
"@azure/mcp"
]
}
}
}
启动命令npx -y @azure/mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@azure/mcp

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

使用 Azure App Configuration 配置 MCP 客户端

弥合开发与生产之间的差距

如今,开发者主要使用 Claude Desktop 或 VSCode 等工具在本地使用 MCP 服务。虽然这些环境非常适合实验和开发,但将由 MCP 驱动的应用程序迁移到生产环境会面临诸多挑战:

image

  • 配置管理:本地配置(例如 VSCode 的 mcp.json)无法顺利迁移到生产环境
  • 可扩展性问题:在生产部署中,如果必须在每个服务实例中重复配置 MCP 设置,就会导致配置激增,增加维护负担并带来不一致的风险
  • 安全要求:超出本地开发范围后,必须进行适当的身份验证和授权
  • 运维灵活性:能够在不重新部署的情况下更新配置变得至关重要

ConfiguredMcpClientManager 解决方案

ConfiguredMcpClientManager 的实现通过以下方式应对这些挑战:

  • 集中管理配置:将所有 MCP 服务配置存储在 Azure App Configuration 中
  • 支持动态更新:无需重新部署应用程序即可更改 MCP 服务
  • 支持特定于环境的设置:为开发、测试和生产环境分别维护配置
  • 支持部署策略:支持蓝绿部署、金丝雀发布,以及对不同模型配置进行 A/B 测试

image

主要功能
  • 配置抽象:只需编写一次应用程序,即可根据环境连接到不同的 MCP 服务
  • 自动刷新机制 配置会按可配置的间隔自动更新
  • 无缝身份验证:与 Microsoft Entra ID 集成,以安全访问 Azure 资源
  • 部署灵活性:支持各种 MCP 服务类型(stdio、sse 等)及特定于环境的参数

设置 Azure App Configuration

  1. 在 Azure 门户中创建 Azure App Configuration 存储
  2. 将 MCP 服务配置添加为键值对:

示例:Azure MCP 服务(stdio 类型)

键:MCP:AzureMCPServer

值:

{
    "name": "Azure MCP Server",
    "type": "stdio",
    "command": "npx",
    "args": [
        "-y",
        "@azure/mcp@latest",
        "server",
        "start"
    ]
}

示例:远程 SSE 服务

键:MCP:Fetch

值:

{
    "name": "Fetch",
    "type": "sse",
    "url": "https://remote.mcpservers.org/fetch"
}

实施最佳实践

  1. 特定于环境的配置:

    • 使用 Azure App Configuration 中的标签区分开发/测试/生产环境
    • 示例:MCP:AzureMCPServer;env=production 与 MCP:AzureMCPServer;env=development
  2. 监控和可观测性:

    • 添加遥测数据以跟踪模型在生产环境中的性能
    • 使用配置启用/禁用详细日志记录
  3. 回滚策略:

    • 使用版本标签保留先前可用的配置
    • 为生产问题实施快速回滚流程
  4. 配置验证:

    • 在将新配置应用于生产环境之前进行验证
    • 实施熔断器以防止故障级联

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。