Plur-e
Servidores MCP

AI agents

Cómo los AI agents acotan roles MCP y skills por tenant — instrucciones, la regla de permisos efectivos, cómo elegir uno al conectar y cómo Plur-e puede desactivarlo.

Respuesta rápida

Un AI agent es un perfil con nombre que un administrador del tenant crea en AI & MCP → AI agents: instrucciones personalizadas (hasta 4000 caracteres), un conjunto de roles MCP a los que hace referencia y, para Business Central, las secciones que puede ver. Un AI agent nunca amplía lo que un usuario ya puede hacer — solo lo acota. Un usuario del tenant elige uno en la pantalla de consentimiento al conectar, con select_agent, o con la cabecera X-Plure-Agent; sin ninguno, cada llamada sigue funcionando exactamente como describen los roles MCP por sí solos.

Qué es un AI agent

  • Un AI agent pertenece a un tenant y lista: instrucciones personalizadas para el asistente de IA (hasta 4000 caracteres), los roles MCP a los que hace referencia, las skills que permite por área y las tools que permite.
  • Las instrucciones son un punto de partida para la conversación — contexto extra, tono o procedimiento que el administrador del tenant quiere que el asistente de IA siga — no una forma de conceder un acceso que un rol no permita ya.
  • Un administrador del tenant crea, edita y publica AI agents en el Admin Center. Un usuario cuyo rol MCP incluya AI agents: Write también puede proponer desde un cliente de IA un agente nuevo o un cambio; la propuesta se guarda como borrador y no hace nada hasta que un administrador la publica en Agent Studio.

Tres capas, una sola regla

CapaControla
Roles MCPQué entidades (Dynamics 365 CRM) o áreas (Business Central) puede leer, escribir, contabilizar o eliminar un usuario
Rol webQué skills ve ese usuario en el Admin Center
AI agentInstrucciones personalizadas, y cuáles de los roles, skills y tools del usuario aplican en esta conexión

La regla es siempre la misma: el acceso efectivo es la intersección entre el acceso del usuario y el del AI agent. Si el AI agent no menciona un rol, una skill o una tool que el usuario tiene, ese rol, skill o tool simplemente no se ofrece mientras el AI agent está seleccionado — nunca se añade encima de lo que el usuario ya tiene. Un AI agent con una lista vacía para algo (sin roles listados, sin skills restringidas) significa que hereda el acceso completo del usuario para esa capa en lugar de acotarlo.

Permisos de los roles de un agente

Cada nivel de la cadena de un AI agent (el propio agente y cada ancestro) puede hacer referencia a roles MCP. Los roles pertenecen a un tipo de conexión (Business Central o Dynamics 365 CRM), así que un nivel que hace referencia a roles solo funciona en una conexión que esos roles cubran.

  • Si los roles de cualquier nivel de la cadena no cubren la conexión, el AI agent no lee nada en ella. El acceso se deniega, nunca se amplía: la regla falla en cerrado.
  • El cliente de IA recibe este mensaje: The AI agent's roles do not cover this connection. Ask a tenant administrator to add a role for it to the agent, or select another agent.
  • La solución está en el Admin Center: añade un rol que cubra la conexión en la pestaña Roles del AI agent, o selecciona otro AI agent.
  • Un nivel sin roles no está restringido: hereda lo que permite el nivel superior, como se describe en Tres capas, una sola regla.

Crear uno

En el Admin Center, entra en Developers → AI & MCP → AI agents y pulsa New AI agent: dale un nombre, escribe sus instrucciones y elige los roles MCP, las secciones de Business Central y las tools a las que debe acotar la conexión. Un administrador del tenant puede hacerlo directamente — consulta Roles MCP para ver cómo se crean y asignan los propios roles. Los usuarios sin derechos de administrador solo pueden proponer un agente, como se describe a continuación.

Proponer agentes desde un cliente de IA

Un cliente de IA conectado al servidor de Business Central o de Dynamics 365 CRM puede ayudar a un usuario a diseñar un AI agent o un subagente, y una skill que lo acompañe, sin abrir el Admin Center. Todo lo que crea es un borrador.

Permisos. Añade las líneas AI agents y Skills, cada una con Read o Write, a un rol MCP del destino Business Central y asígnalo al usuario. Read permite al cliente de IA consultar las definiciones existentes y el catálogo; Write le permite proponer borradores. Las líneas también aplican en el servidor de Dynamics 365 CRM: una sesión de CRM sigue necesitando un rol de Business Central que las incluya. Write en una línea no concede Write en la otra.

Pasos.

  1. El cliente de IA lee el catálogo de lo que el usuario puede usar: límites, política de revisión, agentes existentes, tools, skills y los roles que se pueden asignar.
  2. Propone un agente nuevo (opcionalmente como subagente de uno existente) o un cambio en un agente existente y, cuando el agente lo necesita, una skill nueva o modificada. El usuario puede pedir ajustes hasta que el borrador quede bien.
  3. Cuando el usuario lo confirma, el cliente de IA envía el borrador a revisión.
  4. Un administrador del tenant lo revisa y lo publica en Agent Studio; una skill se publica en Skills → Proposed changes. Consulta Agent studio.

Hasta entonces, el agente publicado y la skill publicada siguen funcionando exactamente como antes.

Tools. Nueve tools plure_* cubren estos pasos:

ToolRequiereQué hace
plure_get_authoring_catalogAI agents: ReadLista límites, política de revisión, agentes, tools, skills y roles que puedes asignar
plure_get_agent_definitionAI agents: ReadLee el contenido publicado de un agente y su versión abierta
plure_propose_agentAI agents: WritePropone un agente o subagente nuevo como borrador
plure_propose_agent_changeAI agents: WritePropone cambios en un agente existente como borrador
plure_submit_agent_draftAI agents: WriteEnvía tu borrador a revisión en Agent Studio
plure_discard_agent_draftAI agents: WriteDescarta tu borrador (elimina un agente que nunca se publicó)
plure_get_skill_definitionSkills: ReadLee una skill y su propuesta abierta
plure_propose_skillSkills: WritePropone una skill nueva o modificada como borrador
plure_discard_skill_draftSkills: WriteDescarta tu propuesta de skill

Conviene saber.

  • Un agente nuevo no se puede usar hasta su primera publicación: aparece como Awaiting first publication y select_agent no lo encuentra. Un subagente no se puede publicar antes que su padre.
  • Los roles añadidos a una propuesta nunca pueden conceder más que los roles del propio usuario.
  • Una propuesta solo puede usar las tools y skills que permite su agente padre, y un agente gestionado por Plur-e no se puede cambiar de esta forma.
  • Las propuestas no se ofrecen en ejecuciones autónomas, y un cliente de IA no puede publicar, habilitar ni borrar un agente.
  • La guía agent-authoring, que el cliente de IA lee antes de proponer nada, explica el modelo: instrucciones, tools, skills, roles, versiones y los errores que puede encontrar.

Elegirlo al conectar

  • Pantalla de consentimiento: los usuarios del tenant que ven la pantalla de consentimiento OAuth al conectar obtienen un desplegable AI agent con los AI agents del tenant, más "None". Elegir uno lo fija para esa conexión.
  • select_agent: cualquier cliente puede llamar a select_agent con el nombre exacto del agente, o con "none" para quitar el que ya estaba seleccionado, en cualquier momento de la conversación.
  • Cabecera X-Plure-Agent: los clientes sin estado que envían una cabecera en cada petición pueden enviar X-Plure-Agent con el nombre del agente en cada llamada; enviar X-Plure-Agent: none lo quita.

Dos tools de solo lectura ayudan a un cliente a descubrir qué hay disponible: plure_list_agents (los AI agents del tenant, nombre y descripción) y plure_current_agent (el seleccionado para esta conexión, si lo hay).

Qué cambia

  • Las instrucciones elegidas en la pantalla de consentimiento o mediante la cabecera X-Plure-Agent se inyectan en initialize, así que el asistente de IA las ve desde el primer mensaje.
  • Las instrucciones elegidas a mitad de conversación con select_agent vuelven en el resultado de esa tool — un cliente solo las ve al llamarla — y están disponibles después desde el recurso MCP plure-bc://agent (Business Central) o plure-crm://agent (Dynamics 365 CRM).

La lista de tools sigue al agente activo

En los servidores de Business Central (/bc) y Dynamics 365 CRM (/crm), la lista de tools que ve el cliente de IA sigue al AI agent activo: las tools que el agente (o cualquier ancestro) no permite no aparecen en la lista.

  • Cuando seleccionas un agente, pasas a un subagente o vuelves a su padre, el servidor envía al cliente un mensaje notifications/tools/list_changed, de modo que un cliente que lo admita actualiza la lista sin reconectar.
  • Si el AI agent activo deja de estar disponible (por ejemplo, se desactivó), solo se listan select_agent, plure_list_agents, plure_current_agent y select_tenant, para que el cliente de IA pueda elegir otro.
  • plure_delegate y plure_delegation_result se ocultan mientras el runner de agentes del servidor está apagado.
  • La lista es una comodidad. La restricción real se aplica en cada llamada: una tool que no está permitida se rechaza aunque un cliente la siga mostrando.

La granularidad de Business Central es la sección

Un AI agent acota el acceso a Business Central al nivel de sección — las mismas 16 secciones (bc_wms_receipts, bc_sales, …) a las que se mapean las áreas de los roles MCP — no al nivel de un método individual dentro de una sección.

Subagentes y delegación

Un AI agent puede tener subagentes: AI agents más pequeños, cada uno centrado en un área, a los que un AI agent padre encarga trabajo. El asistente de IA habla con el padre; el padre delega cada petición en el subagente que la gestiona y resume la respuesta.

Un árbol de agentes

Un AI agent puede tener un padre, y el árbol puede llegar a 3 niveles por debajo de la raíz. Por ejemplo, un árbol de operaciones móviles para Business Central:

Mobile
├── Sales
├── Purchases
├── Payments
└── WMS
    ├── WMS Basic
    └── WMS Advanced

Los árboles existen dentro de un tenant. Los AI agents de plataforma de Plur-e no tienen subagentes, y las tools de delegación y de traspaso de más abajo no están disponibles en el endpoint de plataforma.

Un subagente solo puede acotar

Un subagente nunca obtiene más que su padre. Su acceso efectivo es el acceso del usuario intersectado con cada nivel de su cadena, tanto para roles como para skills y tools:

CapaDecide
UsuarioLos roles, skills y tools que la persona ya tiene
Cada ancestroCuáles de ellos permiten el padre, el abuelo y así sucesivamente
SubagenteCuáles de los que quedan permite para sí mismo
  • Una lista vacía en un nivel significa que ese nivel hereda lo que permite el nivel superior.
  • Desactivar un AI agent desactiva también a sus subagentes.
  • Seleccionar un subagente directamente (pantalla de consentimiento, select_agent o X-Plure-Agent) y delegar en él desde su padre dan exactamente el mismo límite.
  • Un cambio hecho en un ancestro puede tardar hasta 1 minuto en aplicarse a sus subagentes.

Crear el árbol

En el Admin Center, entra en Developers → AI & MCP → AI agents:

  • Elige un Parent agent al crear un AI agent, o más tarde en su pestaña General. Déjalo vacío para un AI agent raíz.
  • La pestaña Sub-agents de un AI agent lista sus hijos directos y permite añadir uno.
  • En las pestañas Roles, Skills y Tools de un subagente, todo lo que su padre no permite aparece deshabilitado con Not allowed by parent.
  • Un AI agent que tiene subagentes no se puede borrar hasta que sus subagentes se muevan o se borren.
  • Al clonar un AI agent desde el área de plataforma puedes incluir sus subagentes.

Plur-e ofrece por sí misma la jerarquía Mobile anterior, como AI agents de sistema: ves los 7 en Developers → AI & MCP → AI agents y los personalizas sin copiarlos (consulta Agentes de sistema y personalización). Cada uno ya trae las secciones de Business Central que necesita:

RamaSecciones de Business Central
MobileSin restricción (coordina y delega)
Mobile · Salesbc_sales, bc_sales_order_shipment, bc_items_tracking, bc_item_journals
Mobile · Purchasesbc_purchase_orders, bc_transfer_orders
Mobile · Paymentsbc_payments
Mobile · WMSLas secciones de almacén de sus dos hijos, más pedidos de compra, pedidos de transferencia, envíos de pedidos de venta, clasificación de artículos, hojas de horas, seguimiento de artículos y diarios de artículos; delega en Basic o Advanced según la configuración de la ubicación
Mobile · WMS Basicbc_purchase_orders, bc_transfer_orders, bc_sales_order_shipment, bc_item_classification, bc_time_sheets, bc_wms_bins_movements, bc_wms_inventory_counts, bc_items_tracking, bc_item_journals
Mobile · WMS Advancedbc_wms_receipts, bc_wms_put_away, bc_wms_picks_shipments, bc_wms_license_plates, bc_wms_bins_movements, bc_wms_inventory_counts, bc_items_tracking, bc_item_journals

Subagentes: traspaso frente a delegación

Hay dos formas de usar un subagente desde un cliente de IA. Elige según quién hace el trabajo:

TraspasoDelegación
Toolsplure_handoff_to_agent, plure_return_to_parent_agentplure_delegate, plure_delegation_result
Quién trabajaTu asistente de IA, en el mismo chat, como el subagenteEl subagente, solo, en el servidor de Plur-e
Qué usaLas instrucciones, skills y tools del subagenteLas instrucciones, skills y tools del subagente, con el modelo de IA configurado para él
Modelo de IA del servidorNo se usaSe usa (cuenta contra el presupuesto)
ContextoToda la conversaciónSolo el texto de la tarea
ResultadoSigues hablando con el subagente hasta que vuelveUn informe, tratado como dato no confiable

Usa un traspaso para una tarea concreta que quieres seguir y dirigir en la conversación. Usa la delegación solo cuando el subagente deba trabajar por su cuenta en el servidor.

plure_handoff_to_agent(agent, task)
plure_return_to_parent_agent(summary)
  • plure_handoff_to_agent pasa la conversación a un hijo directo del AI agent activo. Desde ese momento se aplican las instrucciones, skills y tools del subagente, y el límite es exactamente el mismo que si lo seleccionaras directamente.
  • plure_return_to_parent_agent vuelve al padre con un resumen breve de lo hecho. El traspaso termina cuando vuelves al AI agent en el que empezó.
  • select_agent (con cualquier valor, incluido "none") y select_tenant también terminan el traspaso.
  • Los traspasos no están disponibles cuando el AI agent viene fijado por la cabecera X-Plure-Agent o por el token de una ejecución autónoma, ni para clientes que no mantienen sesión. Solo se ofrecen en los servidores de Business Central y Dynamics 365 CRM.
  • El estado del traspaso vive en la sesión MCP. Si la sesión se reinicia o caduca, se pierde y el cliente de IA tiene que volver a seleccionar el AI agent.

Delegar desde tu cliente de IA

Con un AI agent seleccionado que tenga subagentes habilitados, plure_list_agents los muestra y el asistente de IA puede llamar a:

plure_delegate(agent, task, allowWrites?, waitSeconds?)
  • El subagente trabaja en el servidor de Plur-e con el modelo de IA configurado para él. Ve solo el texto de la tarea, no la conversación, así que la tarea debe llevar todos los detalles que necesita. Responde con un informe.
  • Solo puedes delegar en hijos directos del AI agent seleccionado que estén habilitados. El informe se trata como dato no confiable, nunca como instrucciones.
  • plure_delegate espera hasta unos 150 segundos. Si el subagente no ha terminado, la respuesta incluye un runId: llama a plure_delegation_result(runId) para obtener el informe.
  • Si el cliente se desconecta, el subagente sigue trabajando y puedes obtener el resultado más tarde con plure_delegation_result.
  • allowWrites es false por defecto: el subagente puede leer pero no modificar datos. Ponlo en true solo en una sesión interactiva cuando la tarea deba escribir; el cliente MCP te pide confirmación.
  • Cada usuario puede tener como máximo 3 delegaciones en curso a la vez.

En ejecuciones autónomas

Una ejecución autónoma también puede delegar en subagentes:

  • Los subagentes de una ejecución autónoma nunca escriben, sea cual sea lo que la propia ejecución tenga permitido.
  • Lo que gastan los subagentes cuenta contra el mismo presupuesto que la ejecución del AI agent raíz.
  • Cancelar una ejecución cancela también las de sus subagentes.

Envío de correo

Un AI agent puede enviar un correo con plure_send_email, desde el buzón de Plur-e, a personas de tus propios dominios. Está apagado hasta que un administrador del tenant lo configura:

  1. Permite dominios de destinatarios. En Developers → AI & MCP → Settings, rellena Allowed recipient domains (AI agents): hasta 20 dominios separados por comas, por ejemplo contoso.com, fabrikam.com. Un dominio coincide exactamente — los subdominios no están incluidos. Vacío significa que los AI agents no pueden enviar correo.
  2. Concede la tool. Selecciona plure_send_email explícitamente en la pestaña Tools del AI agent. Heredar todas las tools no la incluye. En un subagente, un ancestro que restrinja sus tools también debe listarla.

Límites y comportamiento:

ElementoRegla
DestinatariosHasta 25 direcciones distintas entre to y cc, todas en un dominio permitido
AsuntoHasta 200 caracteres
CuerpoTexto plano (por defecto) o HTML sencillo: párrafos, listas, tablas, enlaces y estilos básicos; todo lo demás se elimina
ExcelexcelFileName adjunta las tablas de un cuerpo HTML como archivo de Excel (una hoja por tabla), de hasta 2,5 MB
FirmaSe añade automáticamente: Sent by the AI agent <nombre> from Plur-e
Reply-ToEl usuario que usa el cliente de IA
AuditoríaRegistra cuántos destinatarios hay, sus dominios y el asunto, nunca las direcciones ni el cuerpo
  • Un destinatario fuera de los dominios permitidos rechaza todo el correo; el mensaje lista los dominios, no las direcciones.
  • El servidor de Plur-e puede tener el correo apagado; la tool responde entonces que el correo está desactivado en el servidor.

Ejecuciones autónomas. Un trigger tiene la casilla Send emails without approval. Con ella activada no hay cola de aprobación: plure_send_email se envía enseguida en las ejecuciones de ese trigger, incluso cuando el ajuste Writes del trigger es Deny. Solo afecta a plure_send_email: cualquier otra escritura sigue el ajuste Writes. Los subagentes, las delegaciones interactivas y las pruebas no se ven afectados.

Modelos de IA

Las ejecuciones autónomas y las delegaciones usan los modelos de IA que Plur-e pone a disposición de los AI agents (Available to AI agents). Plur-e configura cada modelo con el Provider que lo sirve.

  • Algunos proveedores admiten un ajuste Effort, que fija cuánto trabajo dedica el modelo a cada respuesta: Model default, Low, Medium, High, Extra high o Max. Los proveedores que no lo admiten lo ignoran.
  • Los modelos que solo están disponibles para AI agents no los usa el chat de entrenamiento.

Desactivación por Plur-e

Plur-e puede desactivar un AI agent para todos los usuarios de un tenant desde el servidor /super o el área de plataforma del Admin Center, sea cual sea la configuración del tenant. Un AI agent desactivado no se puede seleccionar en la pantalla de consentimiento, con select_agent ni con la cabecera X-Plure-Agent hasta que Plur-e lo reactive.

Para personalizar los AI agents de sistema de Plur-e sin copiarlos, observar tus AI agents en vivo, revisar sus ejecuciones, pausarlos y revisar versiones, consulta el Agent studio.

Relacionado: Roles MCP · Conecta tu cliente de IA · Flujos móviles de Business Central

Last updated on

Edit on GitHub
¿Te ha sido útil esta página?

On this page