Volver
Kevin Riedl

15 min de lectura · 29 de julio de 2026

Siguiente
Se crea en tu dispositivo, sin conectar con Instagram. Copiamos el enlace para su sticker de enlace.

MCP no es un límite de seguridad: controla el acceso del agente en los datos

MCP no está muerto. MCP tampoco es tu límite de seguridad. La primera frase corrige el titular provocador. La segunda corrige el error de arquitectura más caro.

El Model Context Protocol, no “Model Content Protocol”, estandariza cómo una aplicación de IA descubre e invoca herramientas, recursos y prompts. Eso facilita construir y gobernar integraciones. No demuestra que quien llama pueda leer el teléfono de un cliente concreto, modificar una factura o exportar un documento. Si un agente de IA capaz de programar llega al mismo sistema mediante una shell, un SDK o una API directa con credenciales más amplias, la herramienta MCP estrecha es una ruta preferida, no un límite.

Esta diferencia importa al comprar, diseñar o aprobar infraestructura para agentes. Un protocolo puede facilitar un comportamiento seguro. Solo un punto de aplicación que la carga no pueda evitar hace que el comportamiento inseguro falle. Si después necesitas el flujo OAuth y el diseño multi-tenant, consulta nuestra arquitectura de referencia para autorización MCP empresarial. Este artículo responde a la pregunta anterior: ¿dónde debe estar la frontera de confianza?

¿Necesitas un diseño de control de acceso que seguridad pueda aprobar?

 Planificar una revisión de producción

¿Cuál es la respuesta corta?

MCP es un límite de interfaz. La autorización es una decisión de política. Tu límite de seguridad es el conjunto de puntos de aplicación inevitables entre una identidad y cada acción o dato protegido.

La prueba práctica es sencilla: ¿puede el agente obtener los mismos datos o causar el mismo efecto por otra vía? Si la respuesta es sí, el servidor MCP no es el límite completo. Cada ruta alternativa necesita controles iguales o más fuertes, incluidas APIs directas, conexiones a bases de datos, sesiones de navegador, archivos locales, colas y SDK de cloud.

CapaQué defineQué no garantiza
MCPDescubrimiento e invocación de herramientas, recursos y prompts; esquemas; marco opcional de autorización HTTPPermiso por objeto, fila o campo en un sistema downstream
APIUn contrato general de servicio y sus operacionesMínimo privilegio sin identidad y autorización aplicadas
Harness del agenteQué herramientas, comandos de shell y redes expone el runtimeProtección frente a credenciales o rutas disponibles fuera del harness
Límite de seguridadUna decisión inevitable y fail closed antes de una lectura o escritura protegidaNada fuera de los recursos y rutas que controla

¿MCP está pensado para limitar lo que puede hacer un agente de IA?

Puede ayudar a reducir la interfaz, pero eso no equivale a imponer el límite. Las herramientas MCP tienen esquemas de entrada y los clientes pueden presentar una superficie más pequeña y relevante para la tarea que una API REST amplia. El esquema MCP actual también define anotaciones como readOnlyHint y destructiveHint. La especificación deja claro que son indicaciones y que un cliente no debe tomar decisiones de seguridad basándose en anotaciones de un servidor no confiable.

La especificación de autorización HTTP de MCP aporta controles OAuth valiosos. Exige resource indicators para que un token esté destinado a un servidor MCP concreto, y la guía de seguridad prohíbe el token passthrough hacia APIs downstream. Esos controles responden: “¿este token fue emitido para este servidor?”. No responden por completo: “¿puede este sujeto ver el campo contact_email del cliente 42 para esta tarea de soporte?”.

La segunda pregunta requiere contexto de negocio y de recurso. Debe resolverse en un sistema de autorización determinista, no en un prompt ni en el criterio del modelo.

¿Puede un agente capaz de programar saltarse MCP?

Sí, si su entorno de ejecución expone otra ruta utilizable y las credenciales necesarias. No, si el sistema que lo rodea elimina o limita esas rutas.

Escribir código no concede automáticamente acceso a cualquier API. El agente sigue necesitando red, credenciales, herramientas ejecutables y permiso. Ahí falla el argumento “MCP está muerto”. La generación de código cambia el modelo de amenazas, pero un sandbox, una allowlist de egress, una identidad de workload y credenciales de mínimo privilegio pueden dejar ese código sin poder fuera de la ruta aprobada.

La conclusión correcta no es “MCP no sirve”. Es: no confundas una interfaz cómoda con un control imposible de evitar. MCP sigue siendo útil para discovery tipado, invocación consistente, separación de credenciales y puntos de auditoría. Solo se convierte en un punto de control creíble cuando el runtime no puede rodearlo y el recurso downstream vuelve a comprobar la autorización.

¿Dónde debe vivir el control de acceso para agentes de IA?

Tan cerca del recurso protegido como resulte práctico, mientras las capas anteriores reducen el riesgo antes de llegar. “Control de acceso a nivel de datos” no significa una función mágica de base de datos. Significa que la decisión final incluye el objeto, la operación y la clasificación del dato, y que cubre todas las rutas hacia ese objeto.

Capa de controlDecisión que debe aplicarEjemplo
Identidad delegadaQuién pidió, qué agente actúa y en nombre de quiénUn token de corta duración separa al sujeto humano del actor agente
Sandbox y egressQué archivos, procesos, hosts y protocolos son alcanzablesEl agente de soporte llega al servicio de clientes, no a producción SQL
Política de herramienta o APIQué operación y argumentos están permitidos ahoraReembolso permitido solo por debajo de un importe aprobado
Política por objeto o filaQué registros exactos puede leer o cambiar el sujetoEl agente solo recupera clientes de la cola de soporte del usuario
Protección de camposQué atributos son necesarios para este propósitoTeléfono enmascarado salvo que exista permiso de devolución de llamada
Auditoría y revocaciónSi la decisión puede explicarse, detenerse e investigarseRegistrar sujeto, actor, propósito, objeto, campos, versión de política y resultado

Este modelo por capas coincide con prácticas de seguridad consolidadas. La arquitectura Zero Trust de NIST centra la protección en recursos, no en la ubicación de red. La guía ABAC de NIST evalúa atributos del sujeto, objeto, operación y entorno. Un agente es una entidad no humana que actúa dentro de un contexto, así que el modelo conocido sigue funcionando si conservas ese contexto.

¿Cómo es el control a nivel de datos en una tarea real de soporte?

Tomemos el ejemplo del argumento viral:

retrieve_customer_by_email(email)

Un nombre de herramienta estrecho parece más seguro que un endpoint genérico GET /customers. No basta. El email puede pertenecer a un cliente fuera del tenant del usuario. La herramienta puede devolver campos innecesarios. Un agente capaz de programar puede llamar directamente a la API subyacente. Una credencial de servicio compartida puede tener acceso de administrador.

Una petición defendible lleva un contexto de decisión completo:

subject: user_184
actor: support_agent_7
purpose: resolve_ticket
action: customer.read
resource: customer_42
requested_fields: [name, plan, last_invoice_status]
tenant: acme_eu
ticket: ticket_912
environment: production

La aplicación es determinista:

  1. Deriva tenant, sujeto y actor de una identidad verificada, nunca de argumentos escritos por el modelo.
  2. Confirma la relación con el ticket y el permiso del usuario sobre ese objeto cliente.
  3. Permite solo los campos necesarios para el propósito de soporte.
  4. Aplica la misma comprobación en la API y en la capa de datos, aunque el gateway MCP ya haya permitido la herramienta.
  5. Devuelve un identificador de decisión de política con la respuesta para auditoría y análisis de revocación.

En datos relacionales, la seguridad a nivel de fila de PostgreSQL puede determinar qué filas ve o modifica un rol y usa default deny cuando RLS está activo sin una política aplicable. Para documentos compartidos y organizaciones jerárquicas, un modelo de relaciones granular como OpenFGA puede responder si este usuario o agente delegado puede hacer esta acción sobre este objeto. Son ejemplos, no requisitos de producto.

¿El cifrado por campo convierte los datos en el límite?

El cifrado puede reforzar el límite. No sustituye a la autorización.

Si el mismo runtime sobreprivilegiado puede pedir al servicio de claves que descifre todos los emails, el cifrado en reposo no ha cambiado el permiso efectivo. La mejora aparece cuando la liberación de la clave o la reidentificación también depende de identidad verificada, propósito, objeto, campo y tiempo, y cuando el texto claro solo existe en el componente confiable más pequeño.

Usa cada control criptográfico para su función:

  • Cifrado envelope o por campo: limita qué servicios e identidades pueden recuperar campos sensibles.
  • Tokenización o seudonimización: permite que la mayoría de workflows use sustitutos estables sin ver el valor original. La documentación de Google Cloud explica patrones reversibles e irreversibles.
  • Redacción y enmascarado: eliminan datos innecesarios antes de que lleguen al modelo.
  • Credenciales breves y vinculadas a audiencia: reducen alcance y duración del daño si se roba una credencial.

La regla práctica es: autoriza primero, minimiza después y descifra al final. No entregues un dataset amplio para luego pedir al modelo que ignore los campos que nunca debió recibir.

Kevin Riedl

"Una herramienta MCP estrecha es útil. Solo se convierte en límite cuando el agente no puede evitarla y el recurso protegido aplica de forma independiente la misma identidad y política."

Seguridad MCP vs API: ¿cuál debes usar?

Normalmente ambas. MCP y las APIs resuelven partes distintas del stack. MCP ofrece a los clientes agente un contrato estándar de discovery e invocación. Las APIs siguen siendo la interfaz de servicio duradera detrás de muchos servidores MCP. Ninguna elección elimina la necesidad de autorización por objeto.

SituaciónForma recomendadaCondición de seguridad
Varios clientes agente necesitan las mismas herramientas curadasMCP delante de servicios existentesIdentidad en gateway y reautorización downstream
Un workflow determinista llama a un servicioAPI directa o SDK puede ser más simpleIdentidad de workload limitada y política por objeto
El agente ejecuta código arbitrarioMCP más sandbox y política de egressSin credenciales más amplias ni ruta de red alternativa
Campos muy sensiblesBroker de datos o servicio de recuperación dedicadoMinimización, descifrado controlado y auditoría completa
Muchos tenants y sistemas downstreamGateway MCP, motor de políticas y controles por tenantTenant desde claims verificados, nunca desde el input

Para el flujo OAuth, validación de audiencia, token exchange y aislamiento de tenants, continúa con la guía de arquitectura de autorización MCP. Para elegir entre las capas de conocimiento, conectividad y procedimiento, consulta MCP vs RAG vs Agent Skills vs Custom GPTs.

¿Qué debes preguntar a un proveedor MCP o de plataformas de agentes?

El riesgo comercial no depende de si el proveedor tiene una diapositiva llamada “enterprise MCP gateway”. Pide evidencia de que el límite declarado resiste intentos de evasión.

  • Propagación de identidad: ¿los logs distinguen usuario, agente, servicio y actor downstream en cada salto?
  • Rutas alternativas: ¿qué impide que código shell, automatización de navegador o una API directa use credenciales más amplias?
  • Granularidad: ¿la política incluye herramienta, argumentos, tenant, objeto, relación, campos, propósito y riesgo?
  • Fail closed: ¿qué ocurre si no están disponibles el motor de políticas, el proveedor de identidad o el servicio de claves?
  • Credenciales: ¿los tokens son breves, están vinculados a audiencia y se intercambian en lugar de reenviarse?
  • Minimización: ¿se pueden enmascarar, tokenizar o retirar campos antes de la inferencia?
  • Prueba de auditoría: ¿un ID conecta intención, política, tool call, API downstream y campos devueltos?
  • Revocación: ¿con qué rapidez pierde acceso un usuario, agente, tenant, servidor o versión de política?
  • Prueba adversarial: ¿demuestra el proveedor un acceso cross-tenant y un bypass por API directa correctamente denegados?

Si la respuesta es “el prompt le dice al agente que no lo haga”, no hay límite de seguridad. Si es “la herramienta MCP es read-only”, pregunta qué componente verifica esa afirmación. El esquema oficial de MCP advierte que las anotaciones son indicaciones, no hechos confiables.

¿MCP está muerto?

No. La conclusión útil es menos dramática: MCP es infraestructura, no autoridad. Un protocolo estándar puede reducir costes de integración, hacer descubribles las herramientas, separar ciertas credenciales del modelo y crear un punto de inspección consistente. Son propiedades valiosas.

MCP falla cuando se le asigna un trabajo que no pretende completar. No corrige un token de administrador, una shell sin límites, una base multi-tenant plana ni un servicio que autoriza solo durante el login. La solución no es descartar MCP. Diseña identidad, ejecución y acceso a datos para que el protocolo se encuentre dentro de una frontera de confianza real.

Checklist de implementación

  1. Inventaría cada ruta desde el runtime del agente hasta datos sensibles y efectos laterales.
  2. Elimina credenciales permanentes de administrador y aísla el entorno de ejecución.
  3. Propaga por separado la identidad humana delegada y el actor agente.
  4. Aplica políticas de herramienta y argumentos antes de ejecutar.
  5. Vuelve a comprobar autorización sobre el objeto o fila exacta en downstream.
  6. Minimiza campos antes del modelo y controla después descifrado o reidentificación.
  7. Usa tokens breves vinculados a audiencia e intercámbialos para servicios downstream.
  8. Registra un ID de correlación y decisión de política en toda la cadena.
  9. Prueba bypass por API directa, lectura cross-tenant, campo prohibido e identidad revocada.

Reflexiones finales

MCP es una interfaz estándar útil, no un límite de seguridad completo. Las APIs son contratos de servicio potentes y tampoco son límites por defecto. El límite aplicable es la cadena que el agente no puede evitar: ejecución restringida, identidad delegada, política determinista sobre acción y argumentos, autorización por objeto en el recurso, minimización o descifrado controlado y una auditoría que demuestre cada decisión. Construye primero esa cadena. Después usa MCP donde su interoperabilidad y tooling simplifiquen la operación.

Fuentes primarias

Hardening antes de la verificación independiente

¿Preparas una aplicación para un pentest independiente o una revisión de seguridad de cliente? Wavect endurece autorización, secretos, rutas de fallo y cobertura de regresión, y después ayuda a tu equipo a cerrar los hallazgos.

Rutas de servicio relevantes:

Tu bandeja, sin ruido

Sigue el trabajo que te importa

Recibe un correo breve cuando publiquemos algo nuevo. Sigue todo el blog o solo los temas que te interesan.

¿Qué quieres recibir?
Elige tus temas

Gratis, doble opt-in y sin píxeles de seguimiento.

Volver
Kevin Riedl

15 min de lectura · 29 de julio de 2026

Siguiente

Recibe nuevos artículos por correo

Un correo breve cuando publicamos. Gratis y sin seguimiento.

Gratis, doble opt-in y sin píxeles de seguimiento.