|
Description & Fonctionnalités
Servidor MCP para Dolibarr con estudio de IA: 18 herramientas, 33 modelos, OAuth 2.1, aplicaciones React, gráficos ECharts y constructor de módulos
Conecte un asistente de IA a su Dolibarr — Claude, ChatGPT, Cursor, VS Code, o cualquier cliente que hable el Model Context Protocol — y déjelo trabajar en sus datos como lo haría un compañero al que ha dado una cuenta. El módulo trae un servidor MCP completo (JSON-RPC 2.0 sobre HTTP en flujo, OAuth 2.1 con PKCE), 18 herramientas repartidas entre lectura, escritura, código y construcción, y 33 modelos de datos de Dolibarr conocidos de memoria, del presupuesto al cobro. Después un estudio para lo que el asistente construye a continuación: aplicaciones web React, gráficos ECharts y módulos Dolibarr enteros entregados en zip. El punto sobre el que gira todo: un asistente actúa en nombre de la persona que dijo que sí, y nunca ve nada más de lo que ella vería.
¿Para quién? Directivos que prefieren hacerle una pregunta a sus cifras antes que abrir diez listados, contables que persiguen los impagados, comerciales que siguen su cartera, jefes de proyecto, gente de almacén — e integradores que quieren construir cuadros de mando, portales de cliente y módulos Dolibarr sin partir de una página en blanco. Un asistente conectado, o veinte: el principio no cambia.
Un servidor MCP completo dentro de Dolibarr
- Protocolo MCP versión 2026-07-28, que sigue respondiendo a 2025-06-18, 2025-03-26 y 2024-11-05: los clientes de hoy y los de ayer se conectan sin cambiar nada.
- JSON-RPC 2.0 sobre HTTP en flujo: initialize, ping, tools/list, tools/call, prompts/list, prompts/get, resources/list, resources/read, las notificaciones y las llamadas agrupadas.
- OAuth 2.1 con PKCE S256, indicadores de recurso, inscripción dinámica de clientes (RFC 7591), descripción del servidor (RFC 8414) y del recurso (RFC 9728), devolución de tokens (RFC 7009).
- Una página de consentimiento escrita en claro: antes de decir que sí, la persona lee la lista de herramientas que el asistente podrá usar, cuántas solo leen, cuántas pueden cambiar algo, y qué sigue siendo cierto pase lo que pase.
- Un token personal en un minuto para un puesto de trabajo, sin toda la ceremonia.
- Los tokens se guardan solo como huella SHA-256: una copia de la base no le entrega a nadie un token que funcione.
- Código de autorización de un solo uso: un segundo intento revoca todos los tokens de esa pareja persona-cliente, con lo que una interceptación no sirve de nada. Renovación por rotación.
- HTTPS exigido de partida, salvo desde la propia máquina. El módulo avisa por su cuenta cuando la dirección que daría a los clientes no sería la buena.
Dieciocho herramientas, en cuatro familias
- Lectura (6 herramientas, encendidas de partida): get_context dice qué es esta instalación, list_models y get_model_schema describen lo legible, search_read y read_record leen, read_group suma por grupos.
- Escritura (4 herramientas, apagadas de partida): create_record, update_record, delete_record y execute_method, que le hace a un registro lo que le haría Dolibarr — validar un presupuesto, aprobar un pedido a proveedor, cerrar un proyecto.
- Código y scripts (3 herramientas, apagadas): code_search y code_read sobre la carpeta que el administrador ha abierto, execute_script para el pequeño lenguaje del módulo.
- Construcción (5 herramientas, apagadas): manage_webapp, create_chart, manage_module, search_webapp_code y search_module_code.
- Cada herramienta le dice al cliente si solo lee y si puede destruir, de modo que un asistente sabe cuándo debe pedir confirmación.
- Una herramienta responde solo si coinciden tres cosas: está encendida, la cuenta tiene el permiso de Dolibarr correspondiente, y la herramienta le está abierta. Encender algo nunca puede dar más de lo que Dolibarr ya dio.
- Un botón — « apagar todo lo que escribe » — devuelve el servidor a solo lectura de un solo gesto.
Treinta y tres modelos de datos de Dolibarr
- Ventas: terceros, contactos, presupuestos, pedidos de cliente, facturas de cliente, líneas de factura, contratos, expediciones.
- Compras: pedidos y facturas de proveedor. Dinero: cobros y pagos, apuntes bancarios, cuentas, notas de gastos, donaciones.
- Productos y almacén: productos y servicios, movimientos, almacenes, existencias. Proyectos: proyectos, tareas, tiempo dedicado.
- Personas: usuarios, socios, ausencias. Día a día: eventos, tickets, intervenciones. Hecho en el estudio: aplicaciones, gráficos, módulos construidos.
- Cada modelo está descrito de antemano: su tabla, su clave, su columna de entidad, sus fechas, y las formas en que sabe agruparse. Un nombre de tabla escrito a mano no lleva a ninguna parte.
- Los modelos cuyo módulo de Dolibarr está apagado en su instalación se apartan solos: el asistente solo ve lo que existe de verdad.
- Agrupar por una fecha escribiendo datef:month, datef:quarter, datef:week… y los resultados vuelven en orden de tiempo.
- Una agrupación por fk_soc devuelve el nombre del cliente, no un número de fila: el módulo reconoce las claves ajenas que sabe unir.
- Nueve modelos quedan en solo lectura pase lo que pase — cobros, apuntes bancarios, movimientos de almacén, tiempo dedicado, líneas de factura, usuarios — porque ahí Dolibarr mantiene una coherencia propia.
Un pequeño lenguaje enjaulado, nunca PHP
- Odoo tiene safe_eval; PHP no tiene equivalente. Así que este módulo tomó el otro camino: lleva su propio pequeño lenguaje. Ningún código escrito por un asistente se ejecuta jamás como PHP.
- Variables, if/else, for … in, while, listas, tablas, operador ternario, índices negativos, comentarios — y unas 75 funciones sobre listas, texto, números, fechas y JSON.
- Lectura de la base: db.select, db.first, db.count, db.group, db.fields, db.models, y db.sql solo en SELECT, con las marcas {{prefix}} y {{entity}} y un límite puesto de oficio.
- Nada de import, ni archivo, ni shell, ni $, ni acentos graves, ni eval: esas palabras se rechazan antes incluso de que el script empiece.
- Tres guardias a la vez: un contador de pasos, un reloj, un límite de memoria. Un bucle sin fin se detiene donde esté, y Dolibarr sigue.
- Ninguna columna de contraseña, clave o token es legible, y ocho tablas enteras están cerradas a cualquier consulta escrita a mano.
- La web es inalcanzable salvo que un administrador la haya abierto y haya nombrado los hosts permitidos. De partida está cerrada.
Constructor de aplicaciones web React
- Una aplicación React 19 guardada dentro de Dolibarr: páginas en JSX, piezas reutilizables, puntos de entrada, estilo y código comunes, almacenamiento en el servidor.
- Las páginas corren en el navegador; lo que necesitan de la base se lo piden a sus propios puntos de entrada, cada uno un script que solo puede leer. La página queda tan libre como se quiera, la puerta sigue estrecha.
- Una pequeña biblioteca puesta en manos de cada página: Dolibarr.useCall (hook con loading, data, error), Dolibarr.call, Dolibarr.useRoute, Dolibarr.store, Dolibarr.money, Dolibarr.date, y React con sus hooks.
- Un enrutador en dos modos, un menú construido a partir de las páginas, y una hoja de estilo incluida para que una página tenga buen aspecto sin escribir CSS.
- Una página que lanza un error mientras se dibuja no se lleva por delante la aplicación: el error aparece donde alguien puede leerlo, y el resto sigue.
- Compartir por enlace con plazo, cerrable en cualquier momento, e instalación en un teléfono a pantalla completa.
- React y Babel vienen de un CDN configurable, o de una copia local puesta en el módulo: una instalación sin internet funciona entera.
Constructor de gráficos ECharts
- Veinte formas: barras, línea, línea rellena, tarta, anillo, dispersión, radar, aguja, embudo, mapa de calor, mapa de áreas, sol, flujo, red, caja y bigotes, velas, río, paralelas, árbol, barras con figura.
- Seis juegos de colores y once añadidos: recorrer una serie larga, colorear según el valor, caja de herramientas, líneas y zonas de referencia, selección, calendario, cronología.
- El dibujo y los números se mantienen aparte: el dibujo es JSON, incapaz de hacer nada por sí mismo; los números vienen de un script que solo sabe leer. Unidos al abrir, están siempre al día.
- El módulo acepta tres formas de resultado y reconoce cuál ha recibido: una lista de filas, una tabla de etiquetas y números, o varias series declaradas.
- Una opción de ECharts escrita a mano se limpia antes de guardarse: una cadena que intenta ser una función, una etiqueta script, una dirección javascript se quedan fuera.
- Compartir por enlace, los números en un desplegable debajo, y refresco automático para poner un gráfico en una pantalla de taller.
- ECharts viene de un CDN o de una copia local, igual que React.
Constructor de módulos Dolibarr
- Describa un módulo — qué contiene, y qué tiene cada cosa — y el estudio escribe un módulo Dolibarr entero.
- Salen: el descriptor que Dolibarr lee, las tablas SQL y sus índices, las clases que extienden CommonObject, las páginas de lista con búsqueda, orden y paginación, las fichas con creación, modificación y borrado, los menús, los archivos de idioma y el README.
- Catorce clases de campo, cuatro de ellas enlaces Dolibarr de verdad: un tercero, un usuario, un proyecto, un producto — con selector al escribir y enlace pulsable al leer.
- Cada objeto recibe sin pedirlo una referencia numerada, un estado, una nota, el autor, las fechas y la columna de entidad para el multiempresa.
- El código que sale pasa php -l, se instala como cualquier módulo externo, crea sus tablas, declara sus permisos, y sus páginas funcionan de verdad: no es una maqueta.
- Empaquetado en un zip descargable, para mirar los archivos antes de instalarlos. Escribir directamente en la carpeta del código existe, pero está apagado de partida.
- El número de módulo se elige para no chocar con ningún otro módulo de la instalación.
Peticiones listas y recursos
- Seis peticiones incluidas: cómo fueron las ventas, quién no ha pagado, cómo anda el almacén, construir un pequeño cuadro, construir un módulo, responder desde los datos.
- Una petición lista es un texto con huecos que el cliente busca por su nombre, rellena y pone delante de su modelo: es la forma de dar a toda la casa maneras probadas de preguntar.
- Se escriben más en dos campos: el texto con sus {{huecos}}, y la lista de huecos con qué son y si son obligatorios.
- Cuatro recursos ofrecidos para lectura directa: el contexto de la instalación, el catálogo de modelos, el de herramientas, y el código de una aplicación web.
- El servidor entrega al cliente, ya en el primer intercambio, unas instrucciones breves: empezar por el contexto, luego los modelos, antes de leer nada. Un asistente que las sigue responde bien a la primera.
Seguridad: qué es posible y qué no
- Nunca actúa sino en nombre de quien dijo que sí. Cada token lleva un usuario de Dolibarr, cada consulta filtra por su entidad. Lo que esa cuenta no alcanza, el asistente no lo alcanza.
- Nunca ejecuta PHP escrito por un asistente.
- Nunca lee una columna de contraseña, clave o token, se le pida lo que se le pida.
- Desde un script nunca ejecuta otra cosa que un SELECT.
- Solo guarda una huella de cada token.
- Apunta cada llamada: nada de lo que hizo un asistente queda después invisible.
- No escribe nada en la carpeta del código mientras un administrador no lo haya permitido a propósito.
- El servidor está cerrado al instalar, y cuando se abre solo están encendidas las seis herramientas de lectura. Nada responde hasta que usted haya decidido que algo deba responder.
Administración, permisos y restricciones
- Ocho permisos de Dolibarr: leer, conectar un asistente, construir aplicaciones, gráficos y módulos, compartir por enlace, leer el registro, cambiar los ajustes.
- Las restricciones quitan algo: un modelo entero, o un campo concreto, en lectura, escritura o borrado — para todos o para personas y grupos nombrados.
- Un conjunto prudente listo en un clic: las herramientas mantenidas fuera del banco, las ausencias y las notas de gastos, e impedidas de escribir en cobros y cuentas de usuario.
- Cada herramienta se abre a todos o a una lista de personas y grupos, con independencia de las demás.
- Los clientes se cierran o se borran; los tokens se revocan uno a uno; y el servidor entero se apaga con un solo ajuste. Los tres surten efecto al instante.
- Una página de claves de servicios guarda las claves de API cifradas y nunca vuelve a mostrar más que sus cuatro últimos caracteres.
- Siete grupos de ajustes, cada uno explicado en una frase, con los límites que impiden que una pregunta descuidada se convierta en un Dolibarr lento.
Registro de cada llamada
- Cada llamada queda apuntada: la herramienta, la persona, el cliente, lo que se envió, lo que volvió, cuántas filas, cuánto tardó, desde dónde, y cómo terminó — respondida, rechazada o fallida.
- Los parámetros se limpian antes de guardarse: lo que parece un secreto se sustituye por asteriscos.
- Cinco cifras arriba, un pequeño diagrama de llamadas por herramienta, y un listado filtrable por herramienta, desenlace, palabra y número de días.
- El detalle de una llamada muestra lo que se envió, bien dispuesto, y lo que volvió.
- Tres usos: entender qué hace de verdad la gente, ajustar las restricciones a partir de los rechazos, y dar cuenta el día en que alguien pregunta.
- El mantenimiento corre solo: recorta el registro, tira los tokens caducados, cierra los enlaces viejos, olvida las conversaciones abandonadas.
Información técnica
- Dolibarr 16 y superior (probado en Dolibarr 23.0.4), PHP de 7.4 a 8.4, MySQL/MariaDB.
- Ningún módulo de Dolibarr requerido: el servidor lee lo que está encendido en su instalación y aparta el resto.
- Extensiones de PHP: JSON y mbstring, más zip para empaquetar un módulo construido. Ninguna biblioteca externa que instalar en el servidor.
- React, Babel y ECharts vienen de un CDN configurable o de una copia local puesta en el módulo.
- 24 tablas llx_mcps_*, una tarea programada de mantenimiento, y nada cambiado en el núcleo de Dolibarr.
- Multiempresa: tokens, clientes, aplicaciones, gráficos, módulos, restricciones y registro separados por entidad.
- Cinco idiomas: francés, inglés, italiano, alemán, español.
- Entregado con una documentación PDF de 43 páginas. Licencia GPL v3. Editado por NEXT GESTION — www.nextgestion.com
Demo del módulo MCP Studio
Usuario : demo
Contraseña : demo
If you order our module you benefit from:
- free installation and configuration assistance
- free help in case of bug or module malfunction
- the addition of new functionalities or options specifically adapted to your needs.
|