Inicio/Blog/API para agentes
Arquitectura de IA

La capa de API para agentes de IA

Las herramientas son APIs con mejor marketing. Cuando un agente de IA puede llamarlas, vuelven todos los temas aburridos de backend: identidad, scopes, contratos, cuotas, idempotencia, retries, audit logs, detección de abuso y modos de falla seguros.

MCP describe herramientas, pero backend todavía controla la confianza

MCP da a los agentes una forma estructurada de descubrir e invocar tools. OpenAPI da contratos legibles por máquina para APIs HTTP. Webhooks y CloudEvents permiten que sistemas reporten cambios de estado de forma asíncrona. OAuth da vocabulario para autorización delegada. La arquitectura interesante no es elegir uno de ellos; es ponerlos detrás de un tool gateway que aplica política cada vez que el agente intenta actuar.

El modelo no debería convertirse en la capa de autorización. Puede proponer una llamada de herramienta, pero el gateway decide si está permitida para este usuario, tenant, tarea, scope, nivel de riesgo, ventana de tiempo y estado actual del sistema.

Tool gateway con permisos
AgentePlanifica una tarea y propone llamada con argumentos.
MCPExpone tools, resources, prompts e interacción JSON-RPC.
PolíticaRevisa usuario, tenant, scope, riesgo, rate limit y clase de datos.
OpenAPIEjecuta en APIs HTTP tipadas con schemas y errores.
WebhookDevuelve estado asíncrono, aprobación, conclusión, falla o compensación.
AuditoríaRegistra prompt, tool, args, caller, resultado y aprobación.

Las llamadas de herramienta necesitan contratos

Un agente puede generar JSON plausible y aun así peligroso: tenant equivocado, idempotency key ausente, scope demasiado amplio, versión stale de objeto o acción destructiva escondida en lenguaje amable. Las definiciones de tools deben ser contratos estrictos. Schemas de entrada, salida, errores, retries, paginación, rate limits y etiquetas de side effect deben ser explícitos.

El patrón más útil es clasificar tools por blast radius. Consultas read-only pueden ser más fáciles. Tools que mutan estado necesitan gates más fuertes. Acciones destructivas o financieras necesitan aprobación, doble review o playbook preaprobado.

ContratoSchemas OpenAPI, validación, taxonomía de errores y respuestas tipadas.
PermisoOAuth scopes, política de tenant, clase de datos y least privilege.
SeguridadIdempotencia, dry-run, gates de aprobación y rollback.
RastreoLogs de tool call, webhooks, correlation ids y auditoría.

Webhooks hacen que los agentes sean menos síncronos

Los agentes tienden a actuar como si toda operación terminara inmediatamente. Los sistemas reales no funcionan así. Pagos liquidan después. Jobs de CI tardan. Aprobaciones humanas pausan. Exportaciones entran en cola. Dispositivos quedan offline. Webhooks y formatos como CloudEvents vuelven asíncrona la arquitectura en vez de fingir que todo es RPC bloqueante.

El gateway debería emitir eventos como solicitado, aprobado, rechazado, iniciado, completado, falló, expiró y compensado. El agente puede reaccionar, pero el sistema de registro sigue siendo el event log.

CapaControl de ingenieríaPor qué agentes lo necesitan
MCP toolCapacidad pequeña, nombre claro, schema, ejemplos y side-effect label.Reduce confusión de tools y acciones destructivas accidentales.
Contrato OpenAPIRequests/responses validados, errores, versionado y docs generadas.Convierte argumentos generados en algo que runtime puede rechazar.
AutorizaciónOAuth scopes, tenants, decisión de política y aprobación step-up.Impide que el modelo sea el sistema de permisos.
ConfiabilidadIdempotency keys, retries, circuit breakers, timeouts y compensaciones.Evita pedidos duplicados, emails repetidos y efectos colaterales en cascada.
WebhooksEventos firmados, CloudEvents, correlation ids y protección contra replay.Permite acciones largas sin bloquear al agente.
AuditoríaPrompt, tool, argumentos, caller, política, respuesta y aprobación humana.Hace reconstruible el comportamiento del agente tras incidentes.

Lo que yo construiría

Construiría un tool gateway para agentes que importa specs OpenAPI, expone tools MCP seguras, mapea cada tool a OAuth scopes, exige idempotencia para mutaciones, firma callbacks webhook y guarda cada tool call en un stream de auditoría. Tools de alto riesgo tendrían dry-run y aprobación antes de ejecución.

El gateway también tendría un registry de tools con owner, SLA, blast radius, clases de datos, rate limits, tenants permitidos, fallas de ejemplo y playbooks de rollback. Eso convierte "el agente llama APIs" en una superficie operacional que backend puede mantener.

El principio de diseño

Tools de agentes no son atajos alrededor de la arquitectura backend. Son arquitectura backend expuesta a un nuevo caller. El patrón más seguro es hacer tools aburridas: tipadas, con scopes, logueadas, limitadas por cuota, idempotentes, asíncronas cuando hace falta y explícitas sobre fallas.