Supabase User MCP
Supabase User MCP
Dale a cada humano y agente su propio límite de identidad de base de datos.
Supabase User MCP es un servidor MCP de plano de datos independiente y centrado en la seguridad para aplicaciones construidas sobre Supabase. Está diseñado para permitir que los clientes de IA trabajen con datos de aplicación como un usuario o agente específico, mientras que la Seguridad a Nivel de Fila (RLS) de PostgreSQL sigue siendo la autoridad final de autorización.
[!WARNING] Este repositorio está en desarrollo activo M0. Contiene solo una sonda de protocolo sin autoridad, no un servidor de datos de usuario desplegable, y no debe conectarse a datos de producción.
Por qué existe esto
El servidor MCP alojado de Supabase es una herramienta de plano de control para desarrolladores. Gestiona proyectos, esquemas, migraciones, funciones y recursos operativos bajo la autoridad de un desarrollador. Supabase recomienda explícitamente usar ese servidor para desarrollo y pruebas, en lugar de exponerlo a clientes o datos de producción.
Supabase User MCP explora el problema complementario del plano de datos:
Supabase hosted MCP | Supabase User MCP | |
Usuario principal | Desarrollador | Usuario de aplicación o agente acotado |
Plano | Plano de control del proyecto | Plano de datos de la aplicación |
Acciones típicas | Esquema, migración, operaciones de proyecto | Lecturas y escrituras específicas del dominio |
Autorización | Cuenta de desarrollador y alcance del proyecto | Usuario, cliente, inquilino, capacidad y fila |
Límite de base de datos | Herramientas administrativas | RLS debe seguir siendo efectivo |
Entorno previsto | Desarrollo y pruebas | Producción solo después de que pasen las puertas de seguridad |
El objetivo no es hacer imposible la inyección de prompts. El objetivo es garantizar que un modelo comprometido no pueda exceder la autoridad de la identidad y la capacidad que se le otorgó.
Related MCP server: MCP Warehouse Server
Tesis de seguridad
MCP client
│ authenticated request
▼
Supabase User MCP
├── validates identity and request context
├── exposes a small, allowlisted tool surface
├── enforces limits, approval states, and audit metadata
▼
Supabase Data API / PostgREST
▼
PostgreSQL + RLS
├── caller and OAuth-client policy
├── tenant and capability policy
└── row and operation policyEl proyecto sigue seis principios innegociables:
Sin clave maestra en la ruta de solicitud MCP. Un manejador de herramienta público nunca debe usar una clave
service_roleo secreta para realizar acciones de usuario.La base de datos toma la decisión final. Las comprobaciones de la aplicación mejoran la usabilidad; RLS y las restricciones de la base de datos hacen cumplir la autorización.
Las herramientas son capacidades, no una consola REST genérica. El servidor inicial no expondrá SQL arbitrario, tablas, esquemas, nombres de RPC, URLs o métodos HTTP.
Las lecturas y escrituras son autoridades diferentes. Los cambios canónicos o irreversibles utilizan un flujo de trabajo de propuesta y aprobación impuesto por la base de datos.
El contenido no confiable sigue siendo datos. Los resultados de las herramientas están limitados y marcados como no confiables; la inyección de prompts se prueba como un problema de contención.
Las afirmaciones requieren evidencia. Un hito está completo solo cuando pasan sus pruebas positivas, negativas, de identidad cruzada y adversariales.
Superficie de producto planificada
La primera versión útil es deliberadamente limitada:
memory_search— búsqueda de texto completo o semántica limitada sobre registros autorizadosmemory_get— recuperar un registro de memoria autorizado por identificador opacomemory_list_recent— listar registros recientes autorizados con un límite de página estrictomemory_append_observation— agregar información no canónica de forma idempotentememory_propose_change— preparar una mutación canónica para revisión humanamemory_get_proposal— inspeccionar el estado de aprobación sin aplicar el cambio
Los nombres describen la implementación de referencia de memoria soberana. Los adaptadores pueden mapear más tarde el mismo modelo de capacidades a otros esquemas de aplicación de Supabase. Consulta el catálogo de características completo.
Fase actual
El proyecto está en M0: fundamento de protocolo y política. Antes de que el código del servidor se considere viable, M0 debe resolver dos cuestiones de identidad:
Cómo un servidor MCP HTTP remoto obtiene un token de Supabase aguas abajo sin violar los requisitos de vinculación de audiencia y tránsito de tokens de MCP.
Cómo se aprovisionan y revocan los principales no humanos duraderos, dado que el servidor OAuth de Supabase documenta actualmente concesiones de código de autorización y token de actualización en lugar de una concesión
client_credentials.
Estas son puertas de arquitectura, no detalles de implementación. La prueba local de stdio y el servicio HTTP remoto se rastrean como perfiles de despliegue separados hasta que la cadena de identidad remota se demuestre de extremo a extremo.
El spike ejecutable de M0 ahora prueba un espacio de trabajo TypeScript estricto, negociación stdio MCP 2026-07-28, validación estructurada de entrada/salida y una herramienta deliberadamente no autoritativa. No tiene cliente de Supabase, credenciales, acceso a red ni operaciones de datos. Consulta la evidencia de compatibilidad.
Prueba la sonda de compatibilidad M0
Requisitos previos: Node.js 22.20.0 y npm 11.19.0.
npm ci
npm run check
npm run build
npm startnpm start lanza un servidor stdio JSON-RPC para un cliente MCP 2026-07-28; no es una aplicación de terminal interactiva. La única herramienta expuesta es system_compatibility_probe, que no realiza ninguna operación de red o datos. Las versiones exactas y los comandos de verificación están documentados en la guía de desarrollo.
Hoja de ruta
Hito | Resultado | Puerta de lanzamiento |
M0 | Decisiones de protocolo, identidad, política y modelo de amenazas | La revisión de arquitectura está completa |
M1 | Laboratorio de políticas local con principales y registros representativos | La matriz de acceso pasa |
M2 | Servidor de referencia stdio de solo lectura | El aislamiento RLS está probado de extremo a extremo |
M3 | Escrituras idempotentes y flujo de aprobación canónico | La mutación canónica directa es imposible |
M4 | Perfil HTTP remoto y OAuth conforme a estándares | La audiencia y la cadena de tokens aguas abajo pasan la revisión |
M5 | Operaciones de flota, observabilidad y endurecimiento adversarial | Los simulacros de revocación y contención pasan |
M6 | Contrato v1 estable | La revisión de seguridad independiente y la lista de verificación de lanzamiento pasan |
Cada hito tiene entregables, dependencias, exclusiones y criterios de salida medibles en la hoja de ruta de desarrollo.
Documentación
Definición de producto — usuarios, trabajos, límites y medidas de éxito
Arquitectura — componentes, límites de confianza y perfiles de despliegue
Catálogo de características — herramientas propuestas y capacidades de plataforma
Modelo de seguridad — identidades, capacidades, RLS y aprobaciones
Modelo de amenazas — activos, atacantes, casos de abuso y mitigaciones
Hoja de ruta — secuencia de implementación y puertas de lanzamiento
Guía de desarrollo — pila fija, diseño y estándares de ingeniería
Evidencia de compatibilidad M0 — versiones fijas y prueba de protocolo
Decisiones de arquitectura — decisiones consecuentes y puertas abiertas
Contribuciones
Las contribuciones de mayor valor hoy son revisiones adversariales, trabajo previo, casos de prueba de políticas y pequeñas correcciones de documentación. Por favor, lee CONTRIBUTING.md y GOVERNANCE.md antes de abrir una solicitud de extracción. Los informes de seguridad pertenecen al proceso privado descrito en SECURITY.md, no en un problema público.
Estado del proyecto e independencia
Supabase User MCP es un proyecto de código abierto independiente. No es un producto oficial de Supabase y no está respaldado por Supabase, Inc. "Supabase" se utiliza para identificar la compatibilidad con la plataforma Supabase.
Licenciado bajo la Licencia Apache 2.0.
This server cannot be deployed
Maintenance
Related MCP Connectors
Safe, read-only Postgres and MySQL access for AI agents. Audit log + column-level controls.
Versioned agent memory in your own Postgres: portable context, permissioned, audit trail.
Runtime permission, approval, and audit layer for AI agent tool execution.
Hosted AI agents and workflows with app OAuth, human approval gates, and a run ledger.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables controlled AI-agent access to enterprise-shaped tools with a deny-by-default gated write path, human approval, dry-run execution, and append-only audit logging.1-
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to query a Postgres data warehouse through a governed, read-only SQL interface with policy enforcement, row limits, schema-level PII isolation, and a full audit trail.1-
- AlicenseBqualityCmaintenanceEnables AI agents to act on live business objects under enforceable per-call identity, per-tool grants, and mandatory human approval for irreversible actions, with connectors isolated from core logic.8MIT

@weave-kit/engineofficial
AlicenseNot gradedqualityAmaintenanceEnables AI agents to safely operate on PostgreSQL data through typed MCP tools with per-identity RBAC, guardrails, and immutable audit logging.437 npmMIT