HS

henkdz/selfhosted-supabase-mcp

Database management

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

138 stars 47 forks 품질 71 트렌드 16

henkdz/selfhosted-supabase-mcp는 https://github.com/henkdz/selfhosted-supabase-mcp.에서 가져온 MCP 서버 후보입니다.

개요

henkdz/selfhosted-supabase-mcp는 https://github.com/henkdz/selfhosted-supabase-mcp.에서 가져온 MCP 서버 후보입니다.

개요(AI 번역)

개요

이 프로젝트는 셀프 호스팅 Supabase 인스턴스와 상호작용하기 위해 특별히 설계된 모델 컨텍스트 프로토콜(MCP) 서버를 제공합니다. 이 서버는 MCP 클라이언트(예: IDE 확장)와 로컬 또는 비공개 호스팅 Supabase 프로젝트 간의 간극을 메워 데이터베이스 내부, 관리 및 개발 환경에서 직접 상호작용할 수 있게 합니다.

이 서버는 공식 Supabase 클라우드 MCP 서버를 개조한 교훈을 바탕으로 처음부터 구축되었으며, 자체 호스팅 사용 사례에 맞춘 최소한의 집중된 구현을 제공했습니다.

목적

이 서버의 주요 목표는 자체 호스팅 Supabase 설치를 사용하는 개발자들이 MCP 기반 도구를 다음과 같은 작업에 활용할 수 있도록 하는 것입니다:

  • 데이터베이스 스키마와 데이터 쿼리.
  • 데이터베이스 마이그레이션 관리.
  • 데이터베이스 통계 및 연결 상태 검사.
  • 인증 사용자 관리.
  • Supabase 저장소와의 상호작용.
  • 타입 정의 생성.

공식 클라우드 서버의 다중 프로젝트 관리 및 클라우드 전용 API와 관련된 복잡성을 피하여, 단일 프로젝트 셀프 호스팅 환경에 최적화된 경험을 제공합니다.

기능 (구현된 도구)

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

README

원문 README의 일부입니다. 원문 보기.

Self-Hosted Supabase MCP Server

Overview

This project provides a Model Context Protocol (MCP) server designed specifically for interacting with self-hosted Supabase instances. It bridges the gap between MCP clients (like IDE extensions) and your local or privately hosted Supabase projects, enabling database introspection, management, and interaction directly from your development environment.

This server was built from scratch, drawing lessons from adapting the official Supabase cloud MCP server, to provide a minimal, focused implementation tailored for the self-hosted use case.

Purpose

The primary goal of this server is to enable developers using self-hosted Supabase installations to leverage MCP-based tools for tasks such as:

  • Querying database schemas and data.
  • Managing database migrations.
  • Inspecting database statistics and connections.
  • Managing authentication users.
  • Interacting with Supabase Storage.
  • Generating type definitions.

It avoids the complexities of the official cloud server related to multi-project management and cloud-specific APIs, offering a streamlined experience for single-project, self-hosted environments.

Features (Implemented Tools)

Tools are categorized by privilege level:

  • Regular tools are accessible by any authenticated Supabase JWT (authenticated or service_role role).
  • Privileged tools require a service_role JWT (HTTP mode) or direct database/service-key access (stdio mode).

Schema & Migrations

Tool Description Privilege
list_tables Lists tables in the database schemas Regular
list_extensions Lists installed PostgreSQL extensions Regular
list_available_extensions Lists all available (installable) extensions Regular
list_migrations Lists applied migrations from supabase_migrations.schema_migrations Regular
apply_migration Applies a SQL migration and records it in supabase_migrations.schema_migrations Privileged
list_table_columns Lists columns for a specific table Regular
list_indexes Lists indexes for a specific table Regular
list_constraints Lists constraints for a specific table Regular
list_foreign_keys Lists foreign keys for a specific table Regular
list_triggers Lists triggers for a specific table Regular
list_database_functions Lists user-defined database functions Regular
get_function_definition Gets the source definition of a function Regular
get_trigger_definition Gets the source definition of a trigger Regular
GitHub에서 전체 README 보기

설치

npx -y @smithery/cli install @HenkDz/selfhosted-supabase-mcp --client claude
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "selfhosted-supabase": { "command": "bun", "args": [ "run", "<path-to-dist/index.js>", // e.g., "/home/user/selfhosted-supabase-mcp/dist/index.js" "--url", "<your-supabase-url>", // e.g., "http://localhost:8000" "--anon-key", "<your-anon-key>", // Optional - Add these if needed by the tools you use "--service-key", "<your-service-key>", "--db-url", "<your-db-url>", // e.g., "postgresql://postgres:password@host:port/postgres" "--jwt-secret", "<your-jwt-secret>", // Optional - Whitelist specific tools "--tools-config", "<path-to-your-mcp-tools.json>" // e.g., "./mcp-tools.json" ] } } }