remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides environment variable management for securely storing configuration settings like Supabase credentials needed by the MCP server.
Listed as a prerequisite for the MCP server implementation, indicating Git integration for version control of the server codebase.
Enables GitHub Copilot to interact with Supabase databases through the MCP server, providing database schema information and query assistance based on the connected Supabase instance.
Plan de implementación del servidor Supabase MCP
Este documento describe el plan para crear un servidor de Protocolo de contexto de modelo (MCP) que se conecta a Supabase, lo que permite que los asistentes de IA como GitHub Copilot interactúen con su base de datos de Supabase.
Tabla de contenido
- Descripción general
- Prerrequisitos
- Pasos de implementación
- Arquitectura del servidor
- Configuración
- Consideraciones de seguridad
- Guía de instalación
- Ejemplos de uso
- Solución de problemas
Descripción general
El servidor MCP de Supabase actuará como puente entre los asistentes de IA (como GitHub Copilot) y su base de datos de Supabase. Esto permite que la IA:
- Comprenda el esquema de su base de datos
- Conozca las tablas y relaciones
- Ayudar con la redacción de consultas
- Proporcionar sugerencias sensibles al contexto relacionadas con su modelo de datos
Prerrequisitos
- Node.js 18+ instalado
- gestor de paquetes npm o yarn
- Proyecto Supabase con clave API de administrador
- VS Code con soporte para Copilot/MCP
- Git
Pasos de implementación
1. Crear paquete de servidor
2. Instalar dependencias
3. Estructura básica del servidor
Crea estos archivos:
src/index.js
- Punto de entrada principalsrc/supabase-client.js
- Manejo de conexión de Supabasesrc/schema-provider.js
- Extracción del esquema de la base de datossrc/query-handler.js
- Ejecución segura de consultas.env.example
- Plantilla de variable de entornoconfig.js
- Gestión de configuración
4. Detalles de la implementación del servidor
src/index.js
Este archivo inicializará el servidor MCP y conectará los componentes:
src/subabase-client.js
src/schema-provider.js
src/query-handler.js
config.js
.env.ejemplo
5. Funciones de la base de datos Supabase
Necesitarás crear estos procedimientos almacenados en Supabase:
get_schema_information()
- Devuelve el esquema de la base de datosget_table_information(table_name TEXT)
- Devuelve información sobre una tabla específicaexecute_query(query_string TEXT, query_params JSONB)
- Ejecuta consultas de forma segura
Arquitectura del servidor
Configuración
Agregue el servidor Supabase MCP a su settings.json
de VS Code:
Consideraciones de seguridad
- Gestión de claves API :
- Utilice una clave API con alcance y con los permisos mínimos requeridos
- Almacene las claves API de forma segura, nunca se comprometa con el control de versiones
- Considere utilizar una estrategia de rotación de claves
- Restricciones de consulta :
- El valor predeterminado es SELECCIONAR únicamente por seguridad
- Considere implementar un enfoque de lista de consultas permitidas
- Añadir limitación de velocidad para evitar el abuso
- Protección de datos :
- Evite exponer información personal identificable (PII) o datos confidenciales
- Implementar seguridad a nivel de fila en Supabase
- Considere agregar enmascaramiento de datos para campos sensibles
Guía de instalación
Desarrollo local
- Clonar el repositorioCopy
- Instalar dependenciasCopy
- Crear un archivo
.env
a partir del ejemploCopy - Edite
.env
con sus credenciales de Supabase - Iniciar el servidorCopy
Integración de VS Code
- Actualice su
settings.json
de VS Code con la configuración del servidor - Reiniciar VS Code
- Verifique que el servidor se esté ejecutando en el panel MCP de VS Code
Ejemplos de uso
Una vez integrado, puede utilizar el servidor Supabase MCP de varias maneras:
- Exploración de esquemas:Copy
- Información de la tabla:Copy
- Asistencia en consultas:Copy
Solución de problemas
El servidor no se inicia
- Comprueba tu versión de Node.js (debe ser mayor de 18 años)
- Verifique sus credenciales de Supabase
- Comprobar registros de errores en la terminal
El esquema no se carga
- Verifique que su clave de servicio de Supabase tenga los permisos necesarios
- Compruebe que las funciones de la base de datos se hayan creado correctamente
VS Code no se puede conectar
- Verifique que la ruta del servidor en settings.json sea correcta
- Reiniciar VS Code después de los cambios de configuración
- Verifique que el proceso del servidor se esté ejecutando
This server cannot be installed
Un puente entre los asistentes de IA como GitHub Copilot y las bases de datos Supabase, que permite a la IA comprender el esquema, ayudar con la redacción de consultas y brindar sugerencias conscientes del contexto relacionadas con su modelo de datos.