Referencia de comandos de la CLI develop-mcp del agente 365

Administrar servidores MCP en entornos de Dataverse. El develop-mcp comando ofrece opciones para publicar, despublicar, registrar y conceder permisos de agente para servidores MCP para su uso en entornos Dataverse.

Note

La CLI del Agente 365 ya no incluye los develop-mcp approvecomandos , develop-mcp block, y develop-mcp package-mcp-server . Los administradores de inquilinos ahora realizan la aprobación y el bloqueo del servidor en el centro de administración Microsoft — las solicitudes pendientes se revisan en la página Solicitados Agentes. La CLI ya no produce paquetes de servidores MCP para la presentación en el Centro de Administración; los administradores a bordo y gestionan los servidores directamente en el centro de administración.

Rol mínimo necesario: varía según el subcomando.

Syntax

a365 develop-mcp [command] [options]

Options

Option Description
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp evaluate

Evalúa tu servidor MCP según las mejores prácticas científicas para evaluar la preparación para la producción. Esta herramienta produce un informe de evaluación completo con puntuaciones, explicaciones y acciones concretas. El comando descubre las herramientas que expone un servidor MCP, ejecuta un conjunto de comprobaciones semánticas deterministas y puntuadas por IA contra sus esquemas, y produce un informe HTML que califica la calidad del esquema y lista las acciones prioritarias para mejorar.

a365 develop-mcp evaluate --server-url <server-url> [--auth-token <auth-token>] [options]

evaluate Opciones

Option Description
-u, --server-url <server-url> Required. La URL HTTP del endpoint streamable del servidor MCP (normalmente termina en /mcp).
--auth-token <auth-token> Optional. Solo se necesita cuando el servidor MCP requiere autenticación. Ficha portadora para el servidor. Prefiero la A365_MCP_AUTH_TOKEN variable de entorno; un token pasado por la línea de comandos es visible para los listados de procesos y el historial del shell.
-o, --output-dir <output-dir> Directorio para la lista de comprobación y los archivos de informes. Por defecto se asigna al directorio actual (.).
--eval-engine <eval-engine> ¿Qué agente local de codificación puntua las comprobaciones semánticas: auto (por defecto; prueba GitHub Copilot y luego Claude Code), github-copilot, claude-code o none (salta la puntuación de IA y espera una lista de verificación pre-puntuada).
-v, --verbose Habilita el registro detallado.
-?, -h, --help Mostrar información de ayuda y uso.

ejemplos de evaluate

Evalúe un servidor local con selección automática de motor:

a365 develop-mcp evaluate --server-url "http://localhost:5000/mcp"

Evalúe un servidor autenticado, con el token suministrado a través de una variable de entorno y artefactos escritos en una subcarpeta:

$env:A365_MCP_AUTH_TOKEN = "<bearer-token>"
a365 develop-mcp evaluate --server-url "https://my-mcp-server.contoso.com/mcp" --output-dir "./eval"

Genere solo la lista de verificación, luego califíquela con su propio LLM:

a365 develop-mcp evaluate --server-url "https://my-mcp-server.contoso.com/mcp" --eval-engine none

Forzar un motor de puntuación específico:

a365 develop-mcp evaluate --server-url "http://localhost:5000/mcp" --eval-engine claude-code

evaluate variables de entorno

Utiliza las siguientes variables de entorno para proporcionar autenticación y, opcionalmente, controla qué modelo utiliza cada motor de puntuación local.

Environment variable Purpose
A365_MCP_AUTH_TOKEN Token de portador para el servidor MCP, usado cuando no pasas --auth-token. Usa esta variable en lugar de la bandera porque mantiene el token fuera de los listados de procesos y del historial de la shell.
A365_EVAL_COPILOT_MODEL Anula el modelo de GitHub Copilot. Requiere un ID exacto del modelo, como claude-haiku-4.5.
A365_EVAL_CLAUDE_MODEL Anular el modelo de Código Claude. Acepta un alias de modelo (como haiku) o un ID completo de modelo.

develop-mcp grant-agents-access

Concede permiso a un servidor MCP de traer tu propio (BYO) a las identidades de los agentes que no lo tengan.

a365 develop-mcp grant-agents-access --mcp-server-name <NAME> --agent-blueprint-id <GUID> [options]

Permisos mínimos requeridos: Administrador Global (u otro rol con derechos para crear permisos OAuth2 a nivel de tenant)

Usa este comando para encontrar y corregir las identidades de los agentes que no pueden llamar a un servidor MCP de traer tu propio (BYO) porque les falta el Tools.ListInvoke.All permiso para ello. El comando lista las instancias agentes del blueprint especificado que carecen del permiso, y luego te permite elegir a cuáles concederlo.

El nombre del servidor MCP se resuelve a una aplicación Microsoft Entra donde - BYO se añade al nombre. Por ejemplo, ext_Learn1 se resuelve en ext_Learn1 - BYO. La concesión en sí es una concesión de permiso OAuth2 delegada a nivel de tenant (AllPrincipals) sobre el principal de servicio de esa aplicación, por lo que se aplica a todas las instancias actuales y futuras del plano de agentes, no solo a las que aparecen en tiempo de ejecución.

Por lo general, no conoces el GUID de blueprint de antemano. Pasar --agent-blueprint-id sin valor, o si no es válido, imprime los nombres e identificaciones de los planos de primera mano de Microsoft para que puedas encontrarlo. Pasar --help imprime la misma lista.

Después de que el comando informe que las instancias del agente no tienen permiso, introduce all para concederlo a cada instancia mostrada, una lista separada por comas de los números mostrados (por ejemplo, 1,3) para concederlo a instancias específicas, o pulsa Enter para saltar la concesión. Pass --yes to grant a cada instancia listada sin que se lo solicite, por ejemplo en un script.

Si más de una aplicación de Entra comparte el <name> - BYO mismo nombre de visualización, el comando lista todas las coincidencias y pregunta cuál usar en lugar de adivinar.

El comando no utiliza la aplicación cliente configurada en a365.config.json. En su lugar, inicia sesión como la aplicación Microsoft Graph Command Line Tools (14d82eec-204b-4c2f-b7e8-296a70dab67e) y solicita los siguientes ámbitos delegados de Microsoft Graph:

  • Application.Read.All
  • AgentIdentity.Read.All
  • DelegatedPermissionGrant.ReadWrite.All

La primera vez que ejecutas el comando en un tenant, ves un aviso de consentimiento de administrador para estos ámbitos. Un Administrador Global o Administrador de Rol Privilegiado debe conceder estos ámbitos a la aplicación empresarial Microsoft Graph Command Line Tools. Tras el consentimiento, cada partida requiere solo un inicio de sesión. Si el comando no puede adquirir un token, el mensaje de error nombra la aplicación y los ámbitos que solicitó el comando.

grant-agents-access Opciones

Option Description
--agent-blueprint-id <agent-blueprint-id> ID del blueprint del agente (GUID) para que las instancias del agente lo revisen. Si omites esta opción o proporcionas un valor inválido, el comando imprime los nombres y identificadores de planos de primera parte.
-s, --mcp-server-name <mcp-server-name> Required. Nombre del servidor MCP. La aplicación Entra se resuelve como <name> - BYO.
--tenant-id <tenant-id> Identificador de inquilino de Azure AD. Por defecto se aplica al contexto actual de CLI de Azure.
-y, --yes Concede el permiso que falta a cada instancia de agente listado sin que te lo pidan.
--device-code Utiliza autenticación por código de dispositivo en lugar del flujo interactivo del navegador (el broker WAM en Windows). Úsalo cuando WAM no puede mostrar un diálogo de inicio de sesión, como un terminal integrado o remoto. Se abre https://microsoft.com/devicelogin en tu navegador.
--dry-run Informa qué instancias de agentes no tienen permiso sin concederlo.
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp list-environments

Enumere todos los entornos de Dataverse disponibles para la administración del servidor MCP.

a365 develop-mcp list-environments [options]

Este comando muestra todos los entornos de Dataverse donde puede administrar servidores MCP.

list-environments Opciones

Option Description
--dry-run Mostrar lo que se haría sin ejecutar
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp list-servers

Enumeración de servidores MCP en un entorno específico de Dataverse.

a365 develop-mcp list-servers [options]

Este comando lista todos los servidores MCP que están actualmente desplegados en el entorno Dataverse especificado.

list-servers Opciones

Option Description
-e, --environment-id <environment-id> Id. de entorno de Dataverse
--dry-run Mostrar lo que se haría sin ejecutar
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp publish

Publique un servidor MCP en un entorno de Dataverse.

a365 develop-mcp publish [options]

Use este comando para publicar un servidor MCP en el entorno de Dataverse especificado.

Important

Publicar un servidor MCP no lo aprueba. Publicar solo envia el servidor a tu inquilino y crea una solicitud de aprobación pendiente. Antes de que cualquier agente pueda usar el servidor, un administrador de tenant debe aprobarlo en la página de Herramientas Solicitadas en el Centro de administración de Microsoft 365. Hasta que el administrador apruebe la solicitud, el servidor permanece inaccesible para los agentes. Cuando el comando tiene éxito, la CLI imprime un recordatorio para pedir a tu administrador de inquilino que apruebe el servidor.

Cuando publicas, la CLI crea los siguientes registros de la app Microsoft Entra en tu tenant:

App registration Purpose When created
<server-name>-PublicClients Tiene los permisos OAuth que los hosts cliente (como Visual Studio Code y la CLI de Microsoft Copilot) usan para llamar al servidor MCP publicado. La CLI crea esta app para cada servidor.
<server-name>-A365Proxy Actúa como una aplicación cliente confidencial con un secreto de cliente. La CLI reenvía las credenciales de la app a la plataforma, que las utiliza para crear el conector Power Platform para el servidor. La CLI crea esta aplicación solo para servidores MCP personalizados (no Dataverse). Los servidores de Dataverse de primera mano, como msdyn_DataverseMCPServer, saltan esta app porque la plataforma les da su propia app.

Como el comando crea registros de aplicaciones, la cuenta que ejecuta la CLI debe tener el permiso de Application.ReadWrite.All Microsoft Graph. Sin este permiso, publish falla. Si la publicación falla, la CLI elimina los registros de la app que creó. Si despublicas el servidor, elimina estos registros de aplicaciones manualmente.

En los inquilinos que limitan la vida del secreto del cliente con una appManagementPolicies póliza, se utiliza --secret-lifetime-months para establecer un tiempo de vida dentro del límite del <server-name>-A365Proxy secreto del cliente.

Note

Proporcionar --publisher-name servidores MCP personalizados (creados por los usuarios). El valor se escribe en los metadatos de desarrollador del paquete publicado y es necesario para estos servidores. Se ignora en los servidores de primera mano de Microsoft (por ejemplo, msdyn_DataverseMCPServer), que siempre publican como "Microsoft". Cuando lo omites, la CLI lo solicita de forma interactiva; pasar --yes a publicar sin indicaciones en contextos de CI o scriptados.

publish Opciones

Option Description
-e, --environment-id <environment-id> Id. de entorno de Dataverse
-s, --server-name <server-name> Nombre del servidor MCP para publicar
-a, --alias <alias> Alias para el servidor MCP
-d, --display-name <display-name> Nombre para mostrar del servidor MCP
-p, --publisher-name <publisher-name> Nombre del Publisher escrito en los metadatos del paquete publicado. Requerida para servidores MCP personalizados (creados por usuarios); ignorado por servidores propios de Microsoft. Se recomienda de forma interactiva cuando se omite.
--service-tree-id <service-tree-id> ServiceTree ID para los registros de la app Microsoft Entra que publish crea. Obligatorio en los tenants corporativos de Microsoft.
-l, --secret-lifetime-months <months> De por vida en meses (1-24) para el secreto del cliente en la <server-name>-A365Proxy app Microsoft Entra. Cuando se omite, Microsoft Entra ID aplica su vida útil predeterminada de unos 2 años. Si la póliza de appManagementPolicies tu inquilino impone un máximo más corto, fija un valor dentro de ese límite.
-y, --yes Salta la interacción "¿Seguir publicando? (y/N)" confirmation. Uso en contextos de CI o guionizados.
--dry-run Mostrar lo que se haría sin ejecutar
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp unpublish

Anulación de la publicación de un servidor MCP desde un entorno de Dataverse.

a365 develop-mcp unpublish [options]

Use este comando para quitar un servidor MCP del entorno de Dataverse especificado.

unpublish Opciones

Option Description
-e, --environment-id <environment-id> Id. de entorno de Dataverse
-s, --server-name <server-name> Nombre del servidor MCP para anular la publicación
--dry-run Mostrar lo que se haría sin ejecutar
-?, -h, --help Mostrar información de ayuda y uso

develop-mcp register-external-mcp-server

Registra un servidor MCP externo con Entra, OAuth externo, clave API o sin autenticación.

a365 develop-mcp register-external-mcp-server [options]

Usa este comando para registrar un servidor MCP alojado externamente (de terceros) con tu inquilino. El comando crea los registros de la app Microsoft Entra que la plataforma necesita, llama a la plataforma Agent 365 para añadir el servidor MCP y configura los URI de redirección y los permisos de la API en los nuevos registros de la app.

El nombre del servidor debe comenzar con el ext_ prefijo y tener como máximo 20 caracteres, por ext_MyServerejemplo. Los nombres de las herramientas deben coincidir exactamente con los nombres expuestos por el servidor MCP remoto. Los nombres desajustados hacen que las invocaciones de herramientas fallen en tiempo de ejecución.

Puedes suministrar parámetros de tres maneras:

  • Pásalas como opciones de línea de comandos.
  • Proporciona un archivo JSON con --input-file. Las opciones de línea de comandos sobrescriben valores del archivo. Consulta register-external-mcp-server-sample.json en las plantillas CLI para la estructura de archivos.
  • Omite cualquier valor necesario que se deba indicar de forma interactiva.

Después de que el registro tenga éxito, pide a tu administrador de inquilinos que apruebe el nuevo servidor MCP antes de que los agentes puedan usarlo. Si te registraste con ExternalOAuth, también añade el URI de redirección mostrado a tu solicitud externa IDP.

Important

Si el registro falla después de que se creen los registros de la app Microsoft Entra, las aplicaciones no se revierten automáticamente. Bórralos manualmente en el portal de Azure antes de volver a intentarlo.

register-external-mcp-server Opciones

Algunas opciones solo son necesarias para tipos específicos de autenticación, como se describe en la columna de descripción.

Option Description
-s, --server-name <server-name> Nombre del servidor MCP. Por ejemplo, debe empezar con ext_ y ser como máximo 20 caracteres ext_MyServer
-u, --server-url <server-url> URL remota del servidor MCP. Debe ser una URL HTTP o HTTPS válida
-a, --auth-type <auth-type> Tipo de autenticación: EntraOAuth, ExternalOAuth, APIKey, o NoAuth
--publisher <publisher> Nombre del Publisher (usado en los metadatos del paquete)
--description <description> Descripción del servidor (usada en los metadatos del paquete)
--tools <tools> Por ejemplo, una lista separada por comas de nombres de herramientas expuestos por este servidor tool1,tool2,tool3
-f, --input-file <input-file> Ruta hacia un archivo JSON con los parámetros de registro
--remote-scopes <remote-scopes> Ámbitos para el servidor MCP remoto, por api://{appId-guid}/{scopeName}ejemplo. Se usa con EntraOAuth.
-t, --tenant-id <tenant-id> Entra el ID del inquilino para el registro de la app. Por defecto al inquilino actual az login
--service-tree-id <service-tree-id> Identificador ServiceTree para el registro de la app Entra. Obligatorio en los tenants corporativos de Microsoft
-l, --secret-lifetime-months <months> Duración en meses (1-24) para los secretos generados de los clientes en las aplicaciones creadas de Entra. El plazo por defecto es de 24 meses (2 años). Establece un valor menor que el appManagementPolicies límite en tu inquilino si tu póliza de inquilino impone un máximo más bajo
--idp-authorization-url <url> URL de autorización OAuth externa. Obligatorio cuando --auth-type es ExternalOAuth
--idp-token-url <url> URL externa del token OAuth. Obligatorio cuando --auth-type es ExternalOAuth
--idp-scopes <scopes> Oscilaciones OAuth externas. Obligatorio cuando --auth-type es ExternalOAuth
--idp-client-id <client-id> ID de cliente OAuth externo. Obligatorio cuando --auth-type es ExternalOAuth
--idp-client-secret <client-secret> Secreto externo de cliente OAuth. Obligatorio cuando --auth-type es ExternalOAuth
--api-key-location <location> Ubicación de la clave API: Header o Query. Obligatorio cuando --auth-type es APIKey
--api-key-name <name> Parámetro clave API o nombre de cabecera, por ejemplo X-API-Key o token. Obligatorio cuando --auth-type es APIKey
--dry-run Mostrar lo que se haría sin ejecutar
-v, --verbose Habilitación del registro detallado
-?, -h, --help Mostrar información de ayuda y uso