Mi rol
Como creador y desarrollador líder del proyecto, diseñé la arquitectura del servidor y construí la mayor parte de su base, mientras otros miembros del equipo aportaron el dominio de finanzas y la analítica de conversaciones con clientes.
- Servidor base y transporte: Desarrollé el servidor MCP con transporte Streamable HTTP y su configuración en Docker.
- Autenticación: Integré OAuth con Microsoft Entra ID para que cada llamada quede atribuida al usuario autenticado.
- Herramientas por dominio: Desarrollé la mayoría de las herramientas de ventas y operaciones, además de las de notificaciones.
- Analítica de uso: Construí herramientas para medir la adopción y el uso del propio servidor.
- Documentación de arquitectura: Documenté el diseño por capas y las convenciones para agregar nuevas herramientas.
Funcionalidades clave del proyecto
- 25 herramientas en 7 dominios: ventas, operaciones, finanzas, analítica de conversaciones con clientes, desempeño, archivos/datasets y notificaciones.
- 23 herramientas son de solo lectura y están anotadas como tales; 2 herramientas de acción envían correos y mensajes de Teams mediante automatización de flujos.
- Middleware que audita cada llamada (herramienta, usuario, duración, resultado) en PostgreSQL, con ocultamiento de datos sensibles.
- SQL parametrizado, validación de entradas y un formato de respuesta común para todas las herramientas.
- Diseño limpio por capas en cada funcionalidad: herramientas → casos de uso → consultas → dominio.
- Fuentes de datos: el ERP (vía JDBC) y PostgreSQL, con pruebas automatizadas.
Impacto logrado
Los usuarios de negocio y los asistentes de IA cuentan ahora con un único punto de entrada seguro y auditado a los datos de la empresa, que reemplaza la extracción manual de reportes por respuestas consistentes y en tiempo real con análisis estructurado, manteniendo cada acceso trazable a un usuario concreto.
Tecnologías
| Tecnología | Uso / Implementación |
|---|---|
| Python | Lenguaje principal del servidor, los casos de uso y las consultas de datos. |
| FastMCP | Framework para exponer las herramientas mediante Model Context Protocol. |
| PostgreSQL | Fuente de datos analíticos y registro de auditoría de cada llamada. |
| Docker | Contenerización del servidor para despliegues consistentes. |
| Microsoft Entra ID | Autenticación OAuth y atribución por usuario de cada llamada. |
| JDBC | Acceso de lectura a los datos del ERP. |
