Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Supabase Self-Hosted

БесплатноНе проверен

Integrates with Supabase instances through dual client API and direct PostgreSQL connections to enable database operations, user management, schema inspection,

GitHubEmbed

Описание

Integrates with Supabase instances through dual client API and direct PostgreSQL connections to enable database operations, user management, schema inspection, SQL execution, migration handling, and storage management with built-in security features and performance optimization tools.

README

🗄️ Serveur MCP Supabase Self-Hosted - Gestion complète de votre instance Supabase privée

🌟 Fonctionnalités

  • 🔐 Gestion complète de votre instance Supabase privée
  • 🛠️ 54+ outils MCP pour l'administration Supabase
  • 📊 Monitoring et métriques en temps réel
  • 🚀 Déploiement automatique sur Railway
  • 🔒 Sécurité renforcée avec prévention SQL injection
  • Performance optimisée pour la production

🏗️ Architecture

Ce repository contient uniquement le serveur MCP Supabase pur, sans interface web ni hub central.

Supabase MCP Server (Port 8000)
├── 🗄️ Gestion de base de données
├── 🔐 Authentification et autorisation
├── 📁 Stockage et fichiers
├── 🔄 Temps réel et subscriptions
├── 🛠️ Migrations et schémas
├── 📊 Monitoring et logs
└── 🚀 Déploiement automatique

🚀 Démarrage Rapide

Prérequis

  • Python 3.11+
  • Instance Supabase (self-hosted ou cloud)
  • Variables d'environnement Supabase

Option A — SDK Smithery (recommandé)

# Cloner le repository
git clone https://github.com/MisterSandFR/Supabase-MCP-SelfHosted.git
cd Supabase-MCP-SelfHosted

# Installer les dépendances
pip install -r requirements.txt

# (Facultatif) Installer la CLI Smithery si besoin
npm i -g @smithery/cli

# Lancer le dev SDK (selon votre environnement)
smithery dev   # ou: smithery playground
  • Le serveur SDK est défini dans pyproject.toml via:
    • [tool.smithery] server = "supabase_mcp_server.server:create_server"
  • Lors du déploiement dans l’interface Smithery, configurez le Test Profile puis lancez le Scan.

Option B — HTTP self-hosted (compat)

# Cloner le repository
git clone https://github.com/MisterSandFR/Supabase-MCP-SelfHosted.git
cd Supabase-MCP-SelfHosted

# Installer les dépendances Python
pip install -r requirements.txt

# Configurer les variables d'environnement
export SUPABASE_URL="https://your-project.supabase.co"
export SUPABASE_ANON_KEY="your-anon-key"
export SUPABASE_SERVICE_KEY="your-service-key"  # Optionnel

# Démarrer le serveur HTTP externe
python src/supabase_server.py

Avec Docker (Railway / self-hosted)

# Build et démarrage (utilisez Dockerfile.railway si besoin)
docker build -f Dockerfile.railway -t supabase-mcp-server .
docker run -p 8000:8000 \
  -e SUPABASE_URL="https://your-project.supabase.co" \
  -e SUPABASE_ANON_KEY="your-anon-key" \
  supabase-mcp-server

⚙️ Configuration

Variables d'Environnement

# Supabase Configuration
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=eyJ... (votre clé anonyme)
SUPABASE_SERVICE_KEY=eyJ... (optionnel, pour opérations privilégiées)

# Server Configuration
PORT=8000
PYTHONUNBUFFERED=1

🛠️ Outils MCP Disponibles

Base de Données (15 outils)

  • execute_sql - Exécution de requêtes SQL
  • list_tables - Liste des tables
  • inspect_schema - Inspection du schéma
  • apply_migration - Application de migrations
  • backup_database - Sauvegarde de base
  • restore_database - Restauration de base
  • vacuum_analyze - Optimisation de base
  • get_database_stats - Statistiques de base
  • create_index - Création d'index
  • drop_index - Suppression d'index
  • list_extensions - Liste des extensions
  • manage_extensions - Gestion des extensions
  • execute_psql - Commandes psql
  • check_health - Vérification de santé
  • get_database_connections - Connexions de base

Authentification (8 outils)

  • list_auth_users - Liste des utilisateurs
  • create_auth_user - Création d'utilisateur
  • update_auth_user - Mise à jour d'utilisateur
  • delete_auth_user - Suppression d'utilisateur
  • get_auth_user - Récupération d'utilisateur
  • verify_jwt_secret - Vérification JWT
  • manage_roles - Gestion des rôles
  • manage_rls_policies - Gestion des politiques RLS

Stockage (6 outils)

  • list_storage_buckets - Liste des buckets
  • list_storage_objects - Liste des objets
  • manage_storage_policies - Gestion des politiques
  • upload_file - Upload de fichier
  • download_file - Téléchargement de fichier
  • delete_file - Suppression de fichier

Temps Réel (4 outils)

  • list_realtime_publications - Liste des publications
  • manage_realtime - Gestion du temps réel
  • create_subscription - Création de subscription
  • delete_subscription - Suppression de subscription

Migrations (8 outils)

  • create_migration - Création de migration
  • list_migrations - Liste des migrations
  • push_migrations - Push des migrations
  • validate_migration - Validation de migration
  • smart_migration - Migration intelligente
  • auto_migrate - Migration automatique
  • sync_schema - Synchronisation de schéma
  • import_schema - Import de schéma

Monitoring (5 outils)

  • get_logs - Récupération des logs
  • metrics_dashboard - Tableau de bord métriques
  • analyze_performance - Analyse de performance
  • analyze_rls_coverage - Analyse couverture RLS
  • audit_security - Audit de sécurité

Utilitaires (8 outils)

  • generate_typescript_types - Génération de types TS
  • generate_crud_api - Génération d'API CRUD
  • cache_management - Gestion du cache
  • environment_management - Gestion d'environnement
  • manage_secrets - Gestion des secrets
  • manage_functions - Gestion des fonctions
  • manage_triggers - Gestion des triggers
  • manage_webhooks - Gestion des webhooks

🔧 API Endpoints

Serveur MCP (HTTP self-hosted)

  • GET /health - Health check
  • POST /mcp - Endpoint JSON-RPC principal
  • GET /.well-known/mcp-config - Configuration MCP
  • GET /mcp/tools.json - Découverte des outils (JSON)

Outils Spécialisés

  • GET /api/tools - Liste des outils disponibles
  • POST /api/execute - Exécution d'outils

🚀 Déploiement

Smithery (SDK Python) — Recommandé

  1. Vérifiez que pyproject.toml contient:
    • [tool.smithery] server = "supabase_mcp_server.server:create_server"
  2. Dans Smithery → Deploy, sélectionnez SDK Python
  3. Configurez le Test Profile puis lancez le Scan
    • Requis: SUPABASE_URL, SUPABASE_ANON_KEY

Railway (Self-hosted)

# Déployer sur Railway
railway login
railway init
railway up

Docker

# Build et déploiement
docker build -t supabase-mcp-server .
docker run -p 8000:8000 supabase-mcp-server

Intégration avec Hub Central

Ce serveur est conçu pour être intégré avec le MCP Hub Central :

{
  "servers": {
    "supabase": {
      "name": "Supabase MCP Server",
      "host": "supabase.mcp.coupaul.fr",
      "port": 8000,
      "path": "/",
      "categories": ["database", "auth", "storage", "realtime", "security", "migration", "monitoring", "performance"]
    }
  }
}

🧪 Test Profile (Smithery)

Lors de la connexion côté Smithery, fournissez les clés suivantes dans le Test Profile:

{
  "SUPABASE_URL": "https://your-project.supabase.co",
  "SUPABASE_ANON_KEY": "eyJ..."
}

En cas de cache, re-sauvegardez le profil et relancez le Scan.

🔒 Sécurité

  • Validation des entrées pour prévenir les injections SQL
  • Rate limiting par IP et utilisateur
  • Audit logs de toutes les opérations
  • Chiffrement HTTPS obligatoire en production
  • Gestion des secrets sécurisée
  • Politiques RLS pour la sécurité des données

📊 Monitoring

Le serveur fournit un monitoring complet :

  • Métriques de performance en temps réel
  • Logs structurés avec niveaux configurables
  • Health checks automatiques
  • Alertes en cas de problème
  • Tableau de bord métriques
  • Analyse de performance détaillée

🤝 Contribution

  1. Fork le repository
  2. Créer une branche feature (git checkout -b feature/amazing-feature)
  3. Commit vos changements (git commit -m 'Add amazing feature')
  4. Push vers la branche (git push origin feature/amazing-feature)
  5. Ouvrir une Pull Request

📄 Licence

Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.

🙏 Remerciements

  • Supabase pour la plateforme
  • Smithery pour l'écosystème MCP
  • La communauté Supabase pour les contributions

📞 Support


Fait avec ❤️ par coupaul

from github.com/mistersandfr/supabase-mcp-selfhosted

Установить Supabase Self-Hosted в Claude Desktop, Claude Code, Cursor

Рекомендуется · одна команда, все IDE
unyly install supabase-self-hosted

Ставит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.

Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh

Или настроить вручную

Выполни в терминале:

claude mcp add supabase-self-hosted -- uvx supabase-mcp-server

Пошаговые гайды: как установить Supabase Self-Hosted

FAQ

Supabase Self-Hosted MCP бесплатный?

Да, Supabase Self-Hosted MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Supabase Self-Hosted?

Нет, Supabase Self-Hosted работает без API-ключей и переменных окружения.

Supabase Self-Hosted — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Supabase Self-Hosted в Claude Desktop, Claude Code или Cursor?

Открой Supabase Self-Hosted на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

wenb1n-dev/SmartDB_MCP

A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim

wenb1n-devавтор: wenb1n-dev

Postgres Server

This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools

madhurprashавтор: madhurprash

Postgres

Query your database in natural language

Anthropicавтор: Anthropic

PostgreSQL

Read-only database access with schema inspection.

modelcontextprotocolавтор: modelcontextprotocol

Redis

Interact with Redis key-value stores.

modelcontextprotocolавтор: modelcontextprotocol

SQLite

Database interaction and business intelligence capabilities.

modelcontextprotocolавтор: modelcontextprotocol

mxcp

Open-source framework for building enterprise-grade MCP servers using just YAML, SQL, and Python, with built-in auth, monitoring, ETL and policy enforcement.

raw-labsавтор: raw-labs

tadas-github/a2asearch-mcp

MCP server to search 4,800+ MCP servers, AI agents, CLI tools and agent skills. Install: npx -y a2asearch-mcp. Ask Claude: "Find MCP servers for database access

tadas-githubавтор: tadas-github

julien040/anyquery

Query more than 40 apps with one binary using SQL. It can also connect to your PostgreSQL, MySQL, or SQLite compatible database. Local-first and private by desi

julien040автор: julien040

drakonkat/wizzy-mcp-tmdb

A MCP server for The Movie Database API that enables AI assistants to search and retrieve movie, TV show, and person information.

drakonkatавтор: drakonkat

Compare Supabase Self-Hosted with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории data