Herramientas de Business Central
El catálogo de herramientas MCP de Business Central vive en la guía de flujos móviles — 16 herramientas de sección sobre los 262 ProcessMethods de Plur-e Mobile, más 9 herramientas de plataforma para skills, códigos de barras, captura e impresión.
Respuesta rápida
El catálogo de herramientas del servidor de Business Central son las 16 herramientas de
sección (bc_setup, bc_sales, bc_wms_receipts, …) sobre las 262 llamadas
ProcessMethod que hace Plur-e Mobile, más 9 herramientas de plataforma para skills,
lectura de códigos de barras, captura e impresión — documentadas en detalle en
Flujos móviles de Business Central, la fuente de
verdad de este catálogo. El tools/list del propio servidor es la referencia por encima
de ambas páginas.
Dónde mirar
- Flujos móviles de Business Central — las 16 herramientas de sección, cómo se corresponde cada una con un módulo de Plur-e Mobile, y la skill que documenta sus métodos.
- Roles MCP — Read / Write / Post por sección, el rol por defecto y cómo responde una llamada denegada.
- Modelo de seguridad — identidad, auditoría y tratamiento de datos.
- Página de producto — resumen comercial, requisitos y una conversación de ejemplo.
bc_query
bc_query es una herramienta de consulta de solo lectura para análisis. No es una de las 16 herramientas de sección y no llama a ningún ProcessMethod: lee Business Central a través de su API estándar y, donde esté instalada, de una API de análisis. Tu asistente de IA elige una entidad de una lista cerrada por su nombre —nunca construye una URL— y cada entidad tiene su propia línea de rol, que se comprueba antes de llamar a Business Central.
| Argumento | Tipo | Obligatorio | Regla |
|---|---|---|---|
entity | texto | sí | Una de las entidades de la lista siguiente (no distingue mayúsculas). Cualquier otra responde bc_query_invalid y lista los nombres permitidos |
filter | texto | no | $filter de OData, por ejemplo postingDate ge 2026-01-01 and vendorNumber eq 'V0001'. Hasta 1000 caracteres, sin saltos de línea. Solo puede usar propiedades de la propia entidad: sin rutas de navegación (customer/name) ni any / all |
select | texto | no | Nombres de propiedades separados por comas, por ejemplo number,vendorName,totalAmountIncludingTax. Pásalo siempre: mantiene los resultados pequeños |
orderBy | texto | no | Nombres de propiedades, cada uno con asc o desc opcional, por ejemplo postingDate desc,number asc |
pageSize | número | no | Filas por página, de 1 a 200 (50 por defecto); los valores fuera de rango se ajustan |
cursor | texto | no | El nextCursor de la llamada anterior sobre la misma entidad. Con cursor se ignoran filter, select y orderBy |
count | verdadero / falso | no | true añade totalCount, el número de filas que cumplen el filtro |
La respuesta es una página: items, nextCursor (vacío en la última página), totalCount (solo con count) y un note opcional. Para relacionar dos entidades —una factura y su proveedor, un artículo y su grupo— ejecuta dos consultas y cruza los resultados.
Entidades
Hay 35 entidades en dos grupos.
Estándar (16) — disponibles en cualquier entorno de Business Central:
- Compras:
purchaseInvoices,purchaseCreditMemos,purchaseReceipts - Ventas:
salesInvoices,salesCreditMemos,salesShipments - Libros y saldos:
generalLedgerEntries,itemLedgerEntries,agedAccountsReceivables,agedAccountsPayables - Datos maestros:
customers,vendors,items,locations - Impuesto sobre ventas:
taxAreas,taxGroups
La API estándar no tiene movimientos de clientes ni de proveedores; solo se pueden leer a través de las entidades de análisis.
Análisis (19) — su nombre empieza por mcp. Existen solo donde la app de análisis está instalada en el entorno de Business Central; si no lo está, la llamada responde bc_source_unavailable y las entidades estándar siguen disponibles.
- Datos maestros:
mcpCustomers,mcpVendors,mcpItems,mcpLocations,mcpGLAccounts - Grupos y configuración de registro:
mcpGeneralPostingSetups,mcpGenBusPostingGroups,mcpGenProdPostingGroups,mcpCustomerPostingGroups,mcpVendorPostingGroups,mcpInventoryPostingGroups,mcpInventoryPostingSetups,mcpBankAccountPostingGroups - Movimientos:
mcpGLEntries,mcpCustomerLedgerEntries,mcpVendorLedgerEntries,mcpItemLedgerEntries,mcpValueEntries,mcpDimensionSetEntries
Los valores de enumerado llegan tal como los codifica Business Central: un espacio pasa a ser _x0020_, así que Credit Memo es Credit_x0020_Memo y un valor vacío es _x0020_. Usa la misma forma en filter.
Roles y permisos
Cada entidad tiene su propia línea de rol, query.<entidad> (por ejemplo query.purchaseInvoices), y bc_query necesita Read sobre ella. Para concederlas todas a la vez, abre el rol, pulsa Add entities y añade el bundle Business Central · Analytics (read) desde la pestaña Bundles.
No forman parte de Default access
Las líneas query.<entidad> y el bundle Business Central · Analytics (read) no se siembran en el rol Default access: los libros, los saldos y la configuración de registro son sensibles, así que un administrador los concede a propósito, a los roles que necesitan análisis. Consulta Roles MCP.
Errores
| Código | Cuándo | Qué hacer |
|---|---|---|
bc_query_invalid | Un argumento incumple una regla anterior, la entidad no se encuentra en el entorno o Business Central rechaza el filtro (400) | Corrige el argumento según el mensaje; nombra la regla o el error de Business Central |
bc_cursor_invalid | El cursor no es de una llamada anterior o pertenece a otra empresa | Reinicia la consulta sin cursor |
bc_source_unavailable | Se pidió una entidad de análisis y la app de análisis no está instalada en el entorno | Instala la app de análisis o usa las entidades estándar |
bc_api_unauthorized | Business Central rechazó el token de la aplicación Plur-e (401) | Un administrador de Business Central debe registrar la aplicación Plur-e en Microsoft Entra Applications en Business Central y conceder el consentimiento |
bc_api_forbidden | El usuario de aplicación de Plur-e no tiene permiso para leer la entidad (403) | En Business Central, asigna conjuntos de permisos de lectura a la aplicación Plur-e: el conjunto de lectura estándar y, para las entidades de análisis, el conjunto de lectura de la app de análisis |
bc_throttled | Business Central limita las peticiones (429) y dos reintentos no bastaron | Reintenta en un minuto |
bc_timeout | Business Central no respondió dentro del límite de tiempo de la llamada | Acota la consulta con filter y select, o pide menos filas por página |
bc_query_too_large | La respuesta supera los 16 MB | Acota la consulta con filter y select, o pide menos filas por página |
Una llamada que tu rol no permite se deniega antes de llegar a Business Central, con el mensaje habitual descrito en Roles MCP.
Alternativas de las herramientas genéricas
Las herramientas genéricas de lectura (search_customers, get_availability, list_sales_documents, get_posted_document, list_customer_ledger, list_item_ledger) llaman a un ProcessMethod que no todos los entornos de Business Central incluyen. Cuando el método no existe, la herramienta ya no falla: responde desde otra fuente y lo dice. La decisión se recuerda una hora por entorno, así que las llamadas siguientes van directas a la alternativa.
Cada alternativa devuelve un note que indica qué fuente respondió y qué falta, por ejemplo «Served by … because … is not available in this Business Central.». Cítalo al usuario.
| Herramienta | Servida en su lugar por | Límites | Líneas de rol necesarias |
|---|---|---|---|
search_customers | Una lista paginada de clientes, filtrada en el servidor por el texto de query (n.º, nombre, nombre de búsqueda) | Recorre como máximo 2000 clientes; afina la búsqueda si el cliente no aparece | customers Read |
get_availability | Existencias por ubicación | Solo existencias por ubicación: la disponibilidad proyectada no está disponible y el note lo indica. Una fila con ubicación vacía son existencias sin ubicación, no un total | items Read |
list_sales_documents | La lista del tipo pedido: pedido, factura, abono o devolución. customerNo y status se filtran en el servidor | Recorre los primeros 500 documentos del tipo; los presupuestos no se admiten y responden bc_fallback_unsupported | sales Read |
get_posted_document | Factura: el método de factura de venta registrada de la sección. Envío, abono y recepción: la API estándar (salesShipments, salesCreditMemos, purchaseReceipts) | Envío, abono y recepción devuelven solo la cabecera, sin líneas | documents Read; para envío, abono y recepción además query.<entidad> Read |
list_customer_ledger | La entidad de análisis mcpCustomerLedgerEntries | Solo donde la app de análisis está instalada; si no, bc_source_unavailable, porque la API estándar no tiene movimientos de clientes | customers Read y query.mcpCustomerLedgerEntries Read |
list_item_ledger | La entidad estándar itemLedgerEntries | Los valores de enumerado como entryType llegan como los codifica Business Central | items Read y query.itemLedgerEntries Read |
Una alternativa que necesita una línea query.<entidad> se deniega, antes de cualquier llamada a Business Central, cuando el rol no la tiene, aunque el área propia de la herramienta esté permitida.
run_report_summary
run_report_summary genera un informe resumen con datos de Business Central, usando las mismas entidades y líneas de rol que bc_query. Necesita Read sobre el área reports y sobre la línea query.<entidad> de cada entidad que lee el informe.
| Argumento | Tipo | Obligatorio | Regla |
|---|---|---|---|
report | texto | sí | purchases, sales o receivables |
fromDate, toDate | fecha yyyy-MM-dd | no | Periodo de purchases y sales. Por defecto, desde el día 1 del mes de hace 11 meses hasta hoy (UTC). fromDate debe ser anterior o igual a toDate |
asOfDate | fecha yyyy-MM-dd | no | Fecha de corte de receivables (hoy, UTC, por defecto) |
groupBy | texto | no | Solo purchases: proveedor buyFrom (por defecto) o payTo; cualquier otro valor responde invalid_arguments |
format | texto | no | text (por defecto) o html. Cualquier otro valor responde invalid_arguments |
Los tres informes:
purchases: facturas de compra menos abonos, por mes, por proveedor. LeepurchaseInvoicesypurchaseCreditMemos; se excluyen los borradores.sales: facturas de venta menos abonos, por mes, por cliente. LeesalesInvoicesysalesCreditMemos; se excluyen los borradores.receivables: movimientos abiertos de clientes envejecidos por días de vencimiento (al corriente, 1–30, 31–60, 61–90, más de 90), con los créditos sin aplicar en una columna aparte. LeemcpCustomerLedgerEntries, así que necesita la app de análisis. Refleja los movimientos abiertos hoy; unasOfDateanterior solo desplaza los tramos de antigüedad, no reabre los movimientos saldados desde entonces.
Los importes son sin impuestos. purchases y sales suman cada documento en su propia moneda, sin conversión; si los documentos están en más de una moneda, el informe avisa e indica cuántos hay en cada una. receivables usa importes en moneda local. El mes en curso se marca como parcial. Cada informe lee hasta 25 páginas de 200 filas por entidad; si quedan más, el informe se marca como Partial.
Formato. Con format = text (el valor por defecto) la respuesta es texto: un resumen JSON (report, format, periodo o fecha de corte, total, rows, partial) y el informe en Markdown —título, periodo o fecha de corte, marca de parcial y tablas—. El Markdown muestra como máximo 50 filas y agrupa el resto en una fila Others (n) con los mismos totales. Con format = html la respuesta es el mismo resumen más un informe visual embebido (text/html, autocontenido, con un gráfico y todas las filas, sin scripts). Pide html solo cuando quieras un informe visual para abrir o compartir; para leer en la conversación, text es la opción adecuada.
Agente Data Auditor
Data Auditor es un AI agent de sistema, hijo del agente Business Central, que audita los datos de una empresa sin cambiar nada. Lee con bc_query y las herramientas genéricas de lectura, y no tiene ninguna herramienta que pueda escribir o registrar. Consulta AI agents y Agent Studio para ver cómo funcionan los agentes de sistema.
Qué comprueba:
- Configuración de puesta en marcha: configuración de registro general, de clientes, de proveedores y de inventario, configuración del impuesto sobre ventas en clientes y artículos, y datos maestros bloqueados o duplicados.
- Anomalías de artículos y ubicaciones: artículos sin precio o con un coste extraño, y ubicaciones inactivas, cerradas según su nombre o con nombres provisionales.
- Existencias: existencias negativas, existencias sin valor y diferencias entre la ficha del artículo, la disponibilidad y el libro de artículos.
Las comprobaciones que no tienen fuente de datos —por ejemplo los detalles y jurisdicciones del impuesto sobre ventas— se informan como comprobaciones manuales con confianza baja, nunca se adivinan. Cuando una anomalía afecta a más del 90 % de los registros, informa un único hallazgo con el recuento y 20 ejemplos.
El informe es texto con tablas Markdown: una tabla resumen de comprobaciones (comprobación, estado, hallazgos, gravedad), los 20 hallazgos principales en conjunto y los hallazgos agrupados por regla. Indica la fecha de corte y cuántos datos cubrió cada comprobación, y sus hallazgos de baja confianza son candidatos que debe confirmar una persona. Nunca propone borrar ni fusionar registros; la acción es que un consultor bloquee o corrija el registro en Business Central.
Cómo se ejecuta. A demanda: selecciónalo o haz que el agente Business Central le traspase la tarea (consulta AI agents). Programado: un administrador añade un trigger semanal al agente en Agent Studio —por ejemplo, los lunes a las 06:00 UTC— con Writes en Deny.
Qué necesita. Un rol de solo lectura para la conexión de Business Central que incluya el bundle Business Central · Analytics (read) y Read sobre las secciones que usa el agente. Sin la app de análisis instalada, las comprobaciones que dependen de las entidades de análisis se informan como no disponibles en el entorno.
Relacionado: Flujos móviles de Business Central · Roles MCP · Modelo de seguridad · Página de producto
Last updated on
Edit on GitHubServidores MCP de Plur-e
Servidores Model Context Protocol de Plur-e que conectan cualquier cliente MCP con Dynamics 365 Business Central, Dynamics 365 CRM y la documentación de Plur-e.
Flujos móviles de Business Central
Haz todo lo que hace Plur-e Mobile — recepciones, put-away, picks, license plates, bins, inventarios, compras, transferencias, ventas, hojas de tiempo, pagos — para tu asistente de IA vía Plur-e MCP: skills por sección, códigos desde fotos y captura sin login.