Compartir vía


Conceptos del servidor MCP de Azure

En este artículo se explican los conceptos esenciales para usar eficazmente el servidor MCP de Azure, incluido cómo trabajar con varios servicios de Azure, controlar errores, optimizar el rendimiento y aplicar patrones comunes para escenarios reales.

Flujos de trabajo de varios servicios

El servidor MCP de Azure puede organizar operaciones en varios servicios de Azure en una sola conversación o flujo de trabajo. Esta funcionalidad le permite encadenar operaciones entre servicios como Azure Storage, Azure Cosmos DB y Azure Key Vault sin cambiar de contexto.

Modos de servidor para operaciones de varios servicios

El servidor MCP de Azure admite diferentes modos que afectan a cómo se exponen las herramientas y cómo interactúa con varios servicios:

Modo de espacio de nombres (valor predeterminado)

El modo de espacio de nombres agrupa las herramientas por servicio de Azure, exponiendo una herramienta por cada espacio de nombres de servicio. Este modo proporciona un enfoque equilibrado para los flujos de trabajo de varios servicios.

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

Con el modo de espacio de nombres, puede realizar solicitudes como:

  • "Enumerar mis cuentas de almacenamiento y, a continuación, mostrarme los contenedores en la primera cuenta"
  • "Obtener secretos de mi almacén de claves y usarlos para conectarse a mi base de datos de Cosmos DB"

El modo consolidado agrupa las operaciones relacionadas en herramientas seleccionadas optimizadas para agentes de INTELIGENCIA ARTIFICIAL. Este modo proporciona el mejor equilibrio entre la funcionalidad y la facilidad de uso.

{
  "mcpServers": {
    "Azure MCP Server": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start", "--mode", "consolidated"]
    }
  }
}

Las herramientas consolidadas se denominan después de las intenciones del usuario, por ejemplo get_azure_databases_details, para que sean más intuitivas para las interacciones de lenguaje natural.

Para obtener una lista completa de los modos de servidor disponibles y sus configuraciones, consulte la guía de solución de problemas.

Modo completo

El all modo expone más de 200 herramientas individuales por separado. Este modo es útil cuando se necesita un control pormenorizado, pero puede superar los límites de herramientas en algunos clientes.

{
  "mcpServers": {
    "Azure MCP Server": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start", "--mode", "all"]
    }
  }
}

Encadenamiento de operaciones entre servicios

Puede encadenar operaciones entre varios servicios de Azure en una sola conversación. Por ejemplo, puede hacer lo siguiente:

  1. Consulta de Azure Key Vault para obtener credenciales de base de datos
  2. Uso de esas credenciales para conectarse a Azure Cosmos DB
  3. Consulta de datos de Cosmos DB
  4. Almacenamiento de resultados en Azure Storage

Ejemplos de mensajes que encadenan las operaciones entre servicios incluyen:

  • Consigue la cadena de conexión de la base de datos de la bóveda de claves "my-vault", conéctate a la base de datos y enumera las colecciones.
  • "Enumerar todas las cuentas de almacenamiento de mi suscripción y, a continuación, para cada cuenta, mostrarme los contenedores"
  • "Cree un nuevo contenedor de almacenamiento y cargue el contenido de mi secreto del almacén de claves en un blob"

Herramientas de filtrado por servicio

Puede configurar el servidor MCP de Azure para exponer solo servicios específicos mediante la --namespace opción . Este enfoque es útil para flujos de trabajo centrados o cuando se trabaja con varias instancias de servidor MCP.

{
  "mcpServers": {
    "Azure Storage": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start", "--namespace", "storage"]
    },
    "Azure KeyVault": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start", "--namespace", "keyvault"]
    }
  }
}

Esta configuración crea instancias de servidor MCP independientes para Storage y Key Vault, lo que le permite organizar las herramientas por requisitos de dominio o proyecto.

Lógica de control de errores y reintentos

El servidor MCP de Azure controla varios escenarios de error que pueden producirse al interactuar con los servicios de Azure. Comprender estos patrones le ayuda a solucionar problemas y a crear flujos de trabajo resistentes.

Errores de autenticación

La autenticación es un origen común de errores al trabajar con recursos de Azure.

Errores no autorizados 401

Un error 401 indica que el token de acceso no es válido o falta. Este error se puede producirse cuando:

  • La autorización local (claves de acceso) está deshabilitada en el recurso
  • El token de autenticación ha expirado
  • No hay credenciales válidas disponibles

Enfoques de resolución:

  • Verifique que está autenticado en Azure mediante az login o su método de autenticación preferido
  • Compruebe que el recurso permite el método de autenticación que usa.
  • Para los recursos con claves de acceso deshabilitadas, asegúrese de tener los permisos adecuados del Control de Acceso Basado en Roles (RBAC).

403 Errores prohibidos

Un error 403 indica que el usuario autenticado no tiene permisos suficientes para acceder al recurso solicitado.

Causas comunes:

  • Faltan permisos de RBAC en el nivel de grupo de recursos o suscripción
  • Suscripción incorrecta o contexto de inquilino
  • Uso de una cuenta no deseada cuando se inicia sesión en varias cuentas

Enfoques de resolución:

  • Compruebe que los permisos de RBAC están asignados en el ámbito correcto
  • Especifique la suscripción y el cliente explícitamente en sus instrucciones: "Enumere todas mis cuentas de almacenamiento en la suscripción subscription-name, que se encuentran en el cliente tenant-name"
  • Establezca la variable de entorno AZURE_MCP_ONLY_USE_BROKER_CREDENTIAL en true para que se solicite la selección de cuenta.

Restricciones de red y firewall

Los entornos empresariales suelen tener controles de red que pueden afectar a la conectividad del servidor MCP de Azure.

Puntos de conexión necesarios para la autenticación:

  • login.microsoftonline.com:443
  • login.windows.net:443
  • management.azure.com:443
  • graph.microsoft.com:443

Los puntos de conexión específicos del recurso dependen de los servicios de Azure que usa, por ejemplo:

  • Azure Storage: *.blob.core.windows.net:443
  • Azure Key Vault: *.vault.azure.net:443
  • Azure Cosmos DB: *.documents.azure.com:443

Si está detrás de un proxy corporativo, configure las opciones de proxy mediante variables de entorno:

export HTTP_PROXY=http://proxy.company.com:8080
export HTTPS_PROXY=http://proxy.company.com:8080
export NO_PROXY=localhost,127.0.0.1

Errores transitorios

El servidor MCP de Azure se basa en los SDK de Azure, que tienen lógica de reintento integrada para errores transitorios. Estos SDK controlan automáticamente:

  • Problemas de conectividad de red
  • Límites de velocidad y limitación de servicios
  • Falta de disponibilidad del servicio temporal

Las directivas de reintento usan retroceso exponencial para evitar sobrecargar los servicios durante escenarios de alta carga o incidentes.

Mensajes de error y diagnósticos

Cuando se producen errores, el servidor MCP de Azure proporciona mensajes de error detallados que le ayudarán a comprender y resolver problemas. Para obtener instrucciones de solución de problemas completas, consulte la guía de solución de problemas.

Consejos de optimización

La optimización de la configuración del servidor MCP de Azure mejora el rendimiento, reduce el uso de tokens y mejora la experiencia del usuario.

Administración de recuentos de herramientas

Algunos clientes de MCP tienen límites en el número de herramientas que pueden controlar. Por ejemplo, Visual Studio Code Copilot tiene un límite de 128 herramientas por solicitud.

Uso del modo consolidado

El modo consolidado proporciona una funcionalidad completa mientras se mantiene bien bajo los límites de las herramientas de cliente:

{
  "mcpServers": {
    "Azure MCP": {
      "command": "npx",
      "args": ["-y", "@azure/mcp@latest", "server", "start", "--mode", "consolidated"]
    }
  }
}

Esta configuración expone herramientas seleccionadas que agrupan operaciones relacionadas, optimizando tanto para la funcionalidad como para la eficacia del agente de IA.

Uso de la carga selectiva de herramientas

Cargue solo las herramientas que necesita para el flujo de trabajo específico:

{
  "mcpServers": {
    "Azure Essentials": {
      "command": "npx",
      "args": [
        "-y",
        "@azure/mcp@latest",
        "server",
        "start",
        "--tool",
        "azmcp_subscription_list",
        "--tool",
        "azmcp_group_list",
        "--tool",
        "azmcp_storage_account_get"
      ]
    }
  }
}

Uso de modos de chat personalizados

Visual Studio Code admite modos de chat personalizados que permiten configurar diferentes conjuntos de herramientas para distintos escenarios. Este enfoque permite cambiar entre configuraciones de herramientas en función de la tarea actual mientras permanece dentro de los límites de cliente.

Administración de tokens

La administración eficaz de tokens mejora los tiempos de respuesta y reduce los costos al usar modelos de lenguaje.

Uso de avisos específicos

Las indicaciones específicas reducen el número de llamadas a herramientas y la cantidad de contexto necesaria:

Menos eficaz:

  • "Cuéntame sobre mis recursos de Azure"

Más eficaz:

  • Enumerar cuentas de almacenamiento en la suscripción "my-subscription" dentro del grupo de recursos "my-rg".
  • "Mostrarme la cadena de conexión de la cuenta de almacenamiento "mystorageaccount"

Delimitar las operaciones adecuadamente

Cuando sea posible, limite las operaciones hacia recursos o grupos de recursos específicos en lugar de consultar el total de suscripciones.

Menos eficiente:

  • "Enumerar todos los recursos de mi suscripción y filtrar las cuentas de almacenamiento"

Más eficaz:

  • "Enumerar cuentas de almacenamiento en el grupo de recursos 'production-rg'"

Operaciones por lotes

Azure MCP Server admite operaciones por lotes para determinados escenarios. Al trabajar con varios recursos:

Operaciones secuenciales:

List storage accounts, then for each one show the containers

Operaciones paralelas cuando corresponda:

Get details for storage accounts 'account1', 'account2', and 'account3'

El servidor MCP de Azure y los SDK de Azure subyacentes controlan el procesamiento por lotes automáticamente cuando corresponda, optimizando las llamadas de red y reduciendo la latencia.

Almacenamiento en caché y reutilización

El servidor MCP de Azure mantiene el estado de conexión durante una sesión. Para optimizar el rendimiento

  • Mantener las instancias del servidor MCP en ejecución en lugar de iniciar y detener con frecuencia
  • Reutilizar la información de suscripción y del grupo de recursos en consultas posteriores
  • Almacenar en caché los detalles de los recursos en el flujo de trabajo cuando necesite hacer referencia a ellos varias veces

Casos de uso comunes

El servidor MCP de Azure admite una amplia gama de escenarios reales. En esta sección se proporcionan ejemplos de patrones y flujos de trabajo comunes.

Implementación de un nuevo servicio

Al implementar un nuevo servicio de Azure, puede usar azure MCP Server para automatizar la configuración y configuración de la infraestructura:

  1. Cree un grupo de recursos y sus recursos:

    Create a resource group called 'webapp-prod' in East US, 
    then create a storage account called 'webappdata' in that resource group
    
  2. Configurar recursos:

    Get the storage account connection string and store it as a secret 
    in key vault 'webapp-kv' with name 'StorageConnectionString'
    
  3. Comprobación de la implementación:

    List all resources in resource group 'webapp-prod' 
    and verify that the storage account and key vault exist
    

Depuración de un problema en un sitio web en vivo

El servidor MCP de Azure puede ayudarle a diagnosticar y solucionar problemas de producción:

  1. Comprobación del estado de los recursos:

    Check the health status of App Service 'my-webapp' 
    and list any recent service health incidents
    
  2. Registros de consulta:

    Query Application Insights for exceptions in the last hour 
    from application 'my-webapp'
    
  3. Inspeccione la configuración:

    Get the application settings for App Service 'my-webapp' 
    and check if the database connection string is configured correctly
    
  4. Compruebe las dependencias:

    List the databases in SQL server 'my-sql-server' 
    and verify connectivity to database 'my-database'
    

Administración de secretos y configuración

Un patrón común implica administrar secretos y configuración entre entornos:

  1. Secretos de auditoría:

    List all secrets in key vault 'production-kv' 
    and show me which ones are expiring in the next 30 days
    
  2. Rotación de secretos:

    Generate a new connection string for storage account 'mystore', 
    update the secret 'StorageConnection' in key vault 'production-kv', 
    and restart App Service 'my-webapp'
    
  3. Configuración de sincronización:

    Get all key-value pairs from App Configuration 'my-appconfig' 
    with label 'production' and compare them to the staging environment
    

Operaciones de datos entre servicios

El servidor MCP de Azure se destaca para coordinar las operaciones de datos en varios servicios:

  1. Extracción, transformación, carga (ETL):

    Get data from Cosmos DB container 'raw-data', 
    transform it using the provided logic, 
    and upload the results to blob container 'processed-data' 
    in storage account 'analytics'
    
  2. Copia de seguridad y archivado:

    Export all documents from Cosmos DB container 'transactions' 
    and create a snapshot in blob storage with timestamp
    
  3. Consultas entre servicios:

    Query Azure Data Explorer for events where error count is greater than 100, 
    then lookup the associated user data from Cosmos DB
    

Auditoría y cumplimiento de la infraestructura

Use azure MCP Server para auditar la infraestructura y comprobar el cumplimiento:

  1. Auditoría de seguridad:

    List all storage accounts in my subscription 
    and check which ones don't have firewall rules configured
    
  2. Análisis de costos:

    List all SQL databases in my subscription, 
    show their pricing tiers, 
    and identify candidates for downgrading
    
  3. Etiquetado de recursos:

    List all resources in subscription 'production-sub' 
    without an 'Environment' tag and show their resource groups
    

Flujos de trabajo de desarrollo y pruebas

Los desarrolladores pueden usar azure MCP Server para simplificar los flujos de trabajo de desarrollo:

  1. Configuración del entorno:

    Create a development environment with a storage account, 
    key vault, and App Service in resource group 'dev-environment'
    
  2. Administración de datos de prueba:

    Copy data from production storage container 'data' 
    to development storage container 'test-data', 
    anonymizing sensitive fields
    
  3. Administración de configuración:

    Compare App Service settings between 'staging-webapp' 
    and 'production-webapp' and highlight differences