Conectando a Business Central desde Claude - Business Central

Breaking

sábado, 7 de junio de 2025

Conectando a Business Central desde Claude

En el post anterior veíamos la infraestructura de los MCP Server.   Hoy quiero enseñaros una funcionalidad práctica de como conectarnos a Business Central.

Todavía no tenemos desplegados en todos los tenant las Tools para usar los MCP en Copilot Studio (low-code) así que nos hemos pasado al lado oscuro del pro-code con Python.

¿Qué he montado?

Un servidor MCP Server con Python que accede a Business Central mediante una serie de Tools que permitirán a un modelo de inteligencia artificial (LLM) como Claude acceder.



Claude, ¿eso que es?


Claude fue creado por Anthropic, una empresa de investigación en inteligencia artificial fundada en 2021 por varios ex-investigadores de OpenAI.  Por tanto, conocedores del famoso Chat GPT y por consiguiente de Copilot.

Te puedes instalar una versión Desktop directamente aquí 
  

Vamos con Python


Yo no soy un experto en Python ni mucho menos, pero puedes preguntarle como hacer cosas a Claude ya que te lo has instalado.  Es realmente bueno escribiendo código.  😎

Desde Visual Studio Code, me he creado un servidor MCP que me permite publicar Tools que podrán leer nuestros modelos, utilizando una librería que se llama FastMCP.  

En este caso quiero mostrar los empleados de Business Central, para lo que he creado una Tool (que no sería más que un puerta de acceso que pueden descubrir los modelos de lenguaje).

Si, vale.  Ya tenemos la puerta, pero ¿Como accedo a los datos?  

Como habrás intuido usaremos la API de Business Central.  Para ello, usamos la autenticación oAuth2.0 para acceder.  Yo los he puesto en dos ficheros Python, pero podríamos haberlo puesto todo más compacto en uno sólo.  En ese fichero, obtengo el token y hago la llamada


Ejecutamos y ya tenemos el servidor operativo.  Es decir, ya tenemos la puerta abierta para que nuestro Modelo de Lenguaje pueda consultar Business Central.  Así que vamos a Claude.

Lo primero que podemos ver, es que el propio Claude ya ha descubierto que tiene un nuevo servidor MCP que se llama BC Roberto:



Y que tiene dos Tools o accesos abiertos:



Recuerda que podemos activar o desactivar las herramientas (Tools) que queramos, para que el modelo las use a la hora de buscar.

Ahora le preguntamos en lenguage natural:


Como se puede ver, el modelo ha detectado que los empleados los puede encontrar en esa herramienta (get_employees) y una vez ejecutada, nos devuelve los datos de los empleados de Business Central:



Conclusión


Si pero ¿eso ya lo podíamos hacer con las API no?  Efectivamente, pero nosotros teníamos que decirle explícitamente que API usar.  Ahora el modelo (en este caso Claude) decide de entre los accesos que tenemos disponibles, cual es el más interesante para obtener la información solicitada.🕵️

Reflexiones


¿Cuantos usuarios de Business Central se utilizan para consultar información?  ¿Y si lo pudiera hacer en lenguaje natural?  Esto está fenomenal, pero abrimos un debate interesante... nuestro modelo de lenguaje debería consumir licencia de Business Central.

Te lo dejo en video para que puedas verlo en acción:

No hay comentarios: