Function calling y MCP: integrar LLMs con sistemas reales.
Pasos del prompt a la acción. Function calling, structured output, Model Context Protocol. Cómo se conectan los LLMs con tu CRM, ERP, base de datos y APIs externas. Diferencias y ejemplos pyme.
Actualizado mayo 2026
Tres formas de integrar LLM con sistemas.
Function calling (también llamado tool use): el LLM puede llamar funciones que tú defines. Le pasas catálogo de funciones disponibles con su schema, el LLM decide cuándo llamarlas, con qué parámetros. Tu código ejecuta la función y devuelve resultado. Estándar desde 2023, soportado por OpenAI, Anthropic, Google, Mistral.
Structured output: forzar al LLM a devolver respuesta en formato exacto (JSON con schema validado). No es ejecución de acciones, es garantía de formato. Más simple que function calling, suficiente para muchos casos de integración (parseo, clasificación, extracción).
MCP (Model Context Protocol): estándar abierto lanzado por Anthropic en 2024 y adoptado en 2025-2026 por toda la industria. Define cómo aplicaciones cliente conectan con servidores que exponen tools, recursos y prompts. La gran ventaja: un servidor MCP que escribes una vez funciona con cualquier LLM/cliente compatible. Ver qué es MCP y MCP para equipos.
Decisión técnica simple
Structured output
Necesitas JSON garantizado: extracción datos, clasificación, parseo. Sin ejecutar acciones. Caso más simple. Usa OpenAI structured outputs, Anthropic tools sin ejecución real, Pydantic + instructor.
Function calling
LLM debe ejecutar acciones: consultar base datos, llamar API, hacer cálculo. Tú defines funciones en código, las pasas al LLM, gestionas ejecución. Estándar industria. Bueno para apps custom.
MCP
Quieres exponer capacidades de tu sistema a varios clientes LLM (Claude Desktop, Cursor, ChatGPT con MCP, agentes propios). Una vez implementado, reutilizable. Mejor para integraciones reutilizables.
Casos reales en pyme con cada técnica.
1. Structured output: clasificación tickets atención cliente. LLM recibe email entrante, devuelve JSON con: categoría (consulta/incidencia/comercial), prioridad (1-5), idioma, urgencia. Tu código enrutará según JSON. Implementación 1-3 días, valor alto. Schema bien definido, prompt bien hecho.
2. Function calling: asistente comercial interno. Comercial pregunta "qué pidió Empresa X el último trimestre". LLM llama función getCustomerOrders(empresa, fecha_desde, fecha_hasta), recibe datos JSON, responde texto natural al comercial. Conectado a CRM/ERP. Reduce 30-50% consultas internas.
3. Function calling: agente cualificación leads. LLM conversa con lead web, cuando completa cualificación llama function createLeadInCRM con datos extraídos. También sendNotificationToSalesRep. Integración real con HubSpot/Salesforce/Pipedrive. Ver agentes IA vs automatización clásica.
4. MCP: tu data warehouse expuesto a equipo. Servidor MCP que expone tablas y vistas BigQuery (con permisos finos). Cualquier comercial usa Claude Desktop conectado al MCP server, pregunta en lenguaje natural, recibe datos. No necesitas app custom: usas Claude Desktop ya existente. Ahorra 80% trabajo desarrollo.
5. MCP: GitHub y Linear expuestos a agentes. Servidores MCP oficiales para GitHub, Linear, Slack, GitLab. Tu agente IA accede a ellos sin escribir integración. Stack tipo 2026: agentes propios + servidores MCP públicos + servidores MCP custom para tu negocio.
Cómo empezar con integración LLM-sistemas
Paso 1 · Define caso integración
Qué quieres que el LLM haga: solo responder estructurado, ejecutar acciones, conectar varios sistemas. Casos extremos. Sin caso claro, técnica equivocada.
Paso 2 · Elige técnica más simple
Si basta JSON con datos: structured output. Si necesita acción: function calling. Si reutilizable a varios clientes: MCP. Simplicidad sobre sofisticación.
Paso 3 · Schema y prompt
Schema JSON o tool definitions claras. Prompt sistema que explica cuándo usar cada herramienta. Few-shot con ejemplos. Validación schema en cliente.
Paso 4 · Manejo errores y seguridad
Qué pasa si schema validation falla, si llamada función falla, si LLM alucina parámetros. Confinement: qué funciones permitidas, qué no. Validación input antes de ejecutar.
Paso 5 · Evaluación y observabilidad
Set test con casos esperados. Logging cada llamada función/tool. Métricas: tasa éxito, tasa retry, latencia. Ver <a href="/blog/observabilidad-llm-pyme" class="text-magnetia-red underline">observabilidad LLM pyme</a>.
Lo que vemos mal en integraciones LLM
Function calling sin validación
LLM alucina parámetros y tu código ejecuta funciones con datos inventados (borrar registros, mandar emails). Validación schema + permisos + dry-run para acciones críticas. Cero confianza ciega.
Demasiadas herramientas en un prompt
Pasar 40 funciones al LLM. Performance baja, latencia sube, alucinaciones aumentan. Mejor: agentes especializados con 4-8 herramientas cada uno. O selección dinámica de tools según contexto.
MCP cuando function calling basta
Pyme con un solo cliente custom no necesita MCP. MCP justifica si vas a tener varios clientes (Claude Desktop + Cursor + custom + futuro). Para app única: function calling directo.
Sin observabilidad de llamadas
No saber qué funciones llamó el LLM, con qué parámetros, qué devolvió. Cuando algo falla, debugging imposible. Trazas por llamada herramienta es básico.
Dudas que nos hacéis llegar
¿Quieres conectar LLMs con tu CRM, ERP o base de datos sin caos?
Diseño integración + implementación function calling/MCP + observabilidad + evaluación. Para pyme con sistemas reales que no son juguete.