Integrations
Uses .env files to securely store and manage configuration variables like API keys and database credentials
Enables SQL execution, schema inspection, and database migration management for PostgreSQL databases
Designed for integration with React Native PaveApp, providing database access capabilities
Servidor MCP de Yazdani Supabase
Un servidor MCP que se integra con Supabase PostgreSQL y utiliza Claude 3.7 para el procesamiento de consultas en lenguaje natural, diseñado para la integración con React Native PaveApp.
Características
- Inspección de esquemas : ver esquemas, tablas, columnas y relaciones de bases de datos
- Ejecución de SQL : ejecute consultas SQL con controles de seguridad
- Gestión de migraciones : ver y administrar migraciones de bases de datos
- Procesamiento del lenguaje natural : Convierta el lenguaje natural a SQL usando Claude 3.7
- Controles de seguridad : Protección contra operaciones destructivas
- Modo de base de datos simulada : soporte para desarrollo y pruebas sin una conexión de base de datos en vivo
- Mecanismo de retroceso automático : recurre elegantemente a datos simulados cuando falla la conexión a la base de datos
- Compatibilidad con el agrupador de sesiones : utiliza el agrupador de sesiones Supabase para conexiones estables
Instalación
Prerrequisitos
- Python 3.8 o superior
- Acceso a una base de datos PostgreSQL de Supabase (opcional con modo simulado)
- Clave API antrópica (para la integración de Claude)
Configuración
- Clonar el repositorio:Copy
- Instalar dependencias:Copy
- Crea un archivo
.env
con tus credenciales:Copy
Uso
Ejecución del servidor con base de datos en vivo
Para el funcionamiento normal con una conexión de base de datos Supabase:
Ejecución del servidor con una base de datos simulada
Para desarrollo o pruebas sin una conexión a una base de datos en vivo:
Conexión de prueba
Para probar la conexión con la base de datos real y simulada:
Pruebas de lenguaje natural
Hemos agregado un potente entorno de prueba de lenguaje natural que le permite probar el servidor MCP con consultas de lenguaje natural:
El cliente de prueba de lenguaje natural proporciona:
- Interfaz de línea de comandos interactiva para realizar pruebas
- Conversión de lenguaje natural a SQL usando Claude
- Ejecución de SQL contra la base de datos Supabase
- Visualización de resultados formateados
- Historial de comandos y capacidades de guardado de resultados
Ejemplos de consultas en lenguaje natural para probar:
- "Muéstrame todas las tablas en el esquema público"
- "Obtener todos los usuarios que se registraron en el último mes"
- "¿Cuál es el número total de usuarios en la base de datos?"
Instalación como paquete
Integración con React Native PaveApp
Configuración del servidor MCP para React Native
- Ejecutar el servidor :
- Para desarrollo: utilice el modo simulado con
improved_mock_server.bat
- Para producción: asegúrese de que las credenciales de la base de datos sean correctas y ejecute
run_server.py
- Para desarrollo: utilice el modo simulado con
- Hacer que el servidor sea accesible :
- Para el desarrollo local: asegúrese de que React Native pueda acceder a su red local
- Para producción: aloje el servidor donde su aplicación pueda acceder a él
- Conectarse desde React Native :
- Utilice las bibliotecas de cliente MCP para conectarse al servidor
- Configurar el cliente con la dirección y el puerto del servidor
Puntos finales de API
El servidor MCP expone las siguientes herramientas a las que se puede acceder a través del protocolo MCP:
get_schemas
: enumera todos los esquemas de base de datosget_tables
: enumera las tablas en un esquemaget_table_schema
: Obtener la estructura detallada de la tablaexecute_postgresql
: Ejecutar sentencias SQLretrieve_migrations
: Lista de migraciones de bases de datosgenerate_sql
: Generar SQL a partir de lenguaje natural
Solución de problemas
Detalles de la conexión
El servidor utiliza el agrupador de sesiones Supabase para las conexiones de base de datos:
Supabase recomienda este formato de conexión para aplicaciones que mantienen conexiones persistentes, especialmente en redes IPv4.
Problemas de conexión
Si tiene problemas de conexión con Supabase:
- Verifique que su proyecto Supabase esté activo
- Verifique que las credenciales de su base de datos sean correctas en el archivo
.env
- Asegúrese de que su dirección IP esté permitida en la configuración de la base de datos de Supabase
- Verifique que esté utilizando el host de pooler correcto para su región
- Intente utilizar el modo de base de datos simulada:
USE_MOCK_DB=true
- Ejecute
python test_pooler_connection.py
para probar específicamente la conexión del pooler - Ejecute
python connection_test.py
para ejecutar una prueba de conexión completa
Modo de base de datos simulada
El servidor ahora incluye soporte mejorado para bases de datos simuladas:
- Retorno automático a datos simulados cuando falla la conexión
- Interfaz consistente entre datos reales y simulados
- Indicación clara cuando se utilizan datos simulados
- Registro mejorado para la resolución de problemas
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
Un servidor MCP que permite la consulta en lenguaje natural de bases de datos Supabase PostgreSQL utilizando Claude 3.7, lo que permite a los usuarios inspeccionar esquemas, ejecutar SQL, administrar migraciones y convertir lenguaje natural en consultas SQL.