API de Veredicto
Permite que tu propia API o servidor MCP consulte a ShieldAgent para obtener un veredicto de seguridad antes de ejecutar cualquier llamada a herramienta — sin cambiar el flujo de tráfico.
Resumen
La API de Veredicto está diseñada para clientes que poseen y operan su propia API o servidor MCP. En lugar de enrutar el tráfico del agente a través del proxy de ShieldAgent, tu servidor llama a POST /tenants/:tenantId/scan con el payload de la solicitud entrante. ShieldAgent ejecuta el pipeline completo multi-etapa y devuelve un veredicto — allow, block, o human_review. Tu código lo aplica.
El flujo de tráfico del agente permanece completamente sin cambios. El agente habla con tu servidor normalmente. Tu servidor realiza una llamada HTTP separada a ShieldAgent y decide si ejecutar la herramienta.
¿Cuándo usar la API de Veredicto?
| Situación | Enfoque recomendado |
|---|---|
| Operas tu propia API REST a la que llaman los agentes | API de Veredicto — añade POST /tenants/:tenantId/scan antes de que se ejecute tu manejador |
| Operas tu propio servidor MCP con manejadores de herramientas | API de Veredicto — añade POST /tenants/:tenantId/scan en cada manejador de herramienta |
| Quieres análisis de seguridad sin cambiar el enrutamiento del agente | API de Veredicto — la URL del endpoint del agente permanece igual |
| No posees el servidor (los agentes llaman a un tercero) | Proxy en línea — enruta los agentes a través de ShieldAgent |
| Quieres bloqueo del proxy para llamadas enrutadas en modo de aplicación | Proxy en línea (Posición 1) — ShieldAgent bloquea antes de reenviar en modo de aplicación |
Inicio rápido
Los ejemplos de SDK se han retirado. Para integrar ShieldAgent, usa la referencia OpenAPI.
Solicitud de análisis
El cliente REST llama a POST /tenants/:tenantId/scan en la API de ShieldAgent. Autentícate con una clave API de tenant (token Bearer).
{
"agentId": "agent-uuid", // OPTIONAL — omit if server cannot identify the agent
"clientHint": "Claude Desktop", // OPTIONAL — from MCP clientInfo.name, for best-effort matching
"toolName": "read_file",
"params": { "path": "/etc/passwd" },
"include_findings": false, // opt-in; requires verdictDetailedFindings tenant permission
"context": {
"transport": "mcp", // "mcp" | "rest" | "custom"
"sourceIp": "10.0.1.5", // optional — used for rate limiting
"sessionId": "sess-123" // optional — enables excessive agency detection
}
}Respuesta de análisis
Por defecto (todos los tenants)
{
"action": "block", // "allow" | "block" | "human_review"
"reason": "Security threat detected", // generic — no detection detail
"riskScore": 87,
"auditEventId": "evt-uuid", // audit event was written
"reviewId": null // set when action is "human_review"
}Hallazgos detallados ((requiere include_findings: true + permiso del tenant))
{
"action": "block",
"reason": "Prompt injection detected in tool arguments",
"findings": [
{
"type": "injection",
"severity": "critical",
"detail": "Path traversal pattern detected"
}
],
"riskScore": 87,
"auditEventId": "evt-uuid",
"reviewId": null
}Los hallazgos detallados están desactivados por defecto. Sin niveles, un atacante con acceso a la API de Veredicto podría sondear iterativamente qué escáner detectó su payload y elaborar intentos de evasión. Actívalo solo para herramientas internas de confianza mediante la configuración del tenant en el panel de ShieldAgent.
Comprobaciones de seguridad
La API de Veredicto aplica las mismas comprobaciones de seguridad integrales que el proxy en línea. Tu solicitud se evalúa contra todas las protecciones configuradas antes de devolver un veredicto.
- Autenticación y validación del tenant
- Limitación de velocidad (por tenant y por agente)
- Control de acceso a herramientas (lista de herramientas aprobadas)
- Evaluación de políticas contra tus reglas configuradas
- Análisis de seguridad (inyección de prompts, DLP, deriva de herramientas, origen cruzado, agencia excesiva)
- Evaluación de puntuación de riesgo
- Registro en el log de auditoría
Identidad del agente
agentId es opcional. El protocolo MCP no expone la identidad del agente — clientInfo del handshake de inicialización MCP initialize identifica el software cliente (p. ej., "Claude Desktop"), no al agente individual. Tu API o servidor MCP puede no saber qué agente específico está llamando.
| Escenario | Qué enviar | Comportamiento del pipeline |
|---|---|---|
| Tu API HTTP autentica agentes y los mapea a IDs de agente de ShieldAgent | agentId: "agent-uuid" | Pipeline completo por agente: políticas por agente, puntuación de riesgo, límites de velocidad, lista de herramientas permitidas |
| Tu servidor MCP conoce el software cliente (de MCP clientInfo.name) pero no el agente | clientHint: "Claude Desktop" | ShieldAgent busca coincidencia con los nombres de agentes registrados. Si exactamente uno coincide, lo usa. De lo contrario, recurre al nivel del tenant. |
| Tu servidor no puede identificar al agente que llama | (omitir agentId y clientHint) | Pipeline del tenant: políticas de todo el tenant, sin riesgo ni línea base por agente |
Observabilidad de la aplicación
Dado que tu código aplica el veredicto (no la infraestructura de ShieldAgent), el registro de auditoría no puede confirmar automáticamente si se respetó un veredicto de block . Usa POST /tenants/:tenantId/verdict-confirmations para enviar tu propio informe de ejecución; ShieldAgent no lo verifica de forma independiente.
Los ejemplos de SDK se han retirado. Para integrar ShieldAgent, usa la referencia OpenAPI.
Nota de cumplimiento
Los tenants que no llaman a verdict confirmations aparecen como aplicación desconocida en los informes de cumplimiento de ShieldAgent. Para sistemas de IA de alto riesgo, el Art. 9 de la Ley de IA de la UE trata la gestión de riesgos del proveedor, mientras que el Art. 11 y el Anexo IV tratan la documentación técnica. Describe la aplicación real de tu integración cuando corresponda. ShieldAgent incluye la tasa agregada de inscripción de verdict confirmations como telemetría complementaria autodeclarada, no como prueba independiente de aplicación ni como tasa exigida por esas disposiciones.
Modelo de responsabilidad compartida
La API de Veredicto transfiere la aplicación del proxy en línea a tu código. Que tu despliegue bloquee amenazas depende de tu implementación; ShieldAgent documenta sus capacidades de detección y pipeline, no el comportamiento de tu código.
| Responsabilidad | Proxy en línea | API de Veredicto |
|---|---|---|
| Detección de amenazas | ShieldAgent | ShieldAgent |
| Evaluación de políticas | ShieldAgent | ShieldAgent |
| Puntuación de riesgo | ShieldAgent | ShieldAgent |
| Registro de auditoría | ShieldAgent | ShieldAgent |
| Aplicación (bloqueo) | ShieldAgent — llamadas enrutadas en modo de aplicación | Tu código — confirmaciones como telemetría autodeclarada |
Contrato REST
Los ejemplos de SDK se han retirado. Para integrar ShieldAgent, usa la referencia OpenAPI.
Relacionado
- Resumen de arquitectura →Todas las posiciones de despliegue y patrones de integración
- Referencia OpenAPI →Esquemas de solicitud y respuesta REST admitidos
- Modelo de puntuación de riesgo →Cómo se calcula riskScore en la respuesta del veredicto
- Marcos de cumplimiento →Implicaciones del Art. 9 de la Ley de IA de la UE y Anexo IV para despliegues con API de Veredicto