Integrations
Integrates with Codeium's Cascade feature (for paying users) to provide database management tools through natural language commands in the Cascade interface.
Enables direct management of PostgreSQL databases with tools for tables, columns, records, indexes, constraints, functions, triggers, and executing custom SQL queries.
Provides full administrative control over a Supabase PostgreSQL database, including tools for table operations, record management, schema modifications, indexes, constraints, database functions, triggers, security policies, and storage management.
Supabase MCP 서버 🚀
🔥 Cursor의 Composer와 Codeium의 Cascade를 통해 Supabase PostgreSQL 데이터베이스에 대한 완벽한 관리 제어 기능을 제공하는 강력한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 도구는 테이블 작업, 레코드 관리, 스키마 수정 등 다양한 기능을 제공하여 원활한 데이터베이스 관리를 지원합니다.
📚 목차
🔧 필수 조건
- 노드.js >= 16.x
- npm >= 8.x
- Supabase 프로젝트:
- 프로젝트 ID
- 데이터베이스 비밀번호
- PostgreSQL 연결 문자열
- 커서 IDE 또는 Codeium의 Cascade(유료 사용자용)
🚀 빠른 시작
📥 설치
지엑스피1
⚙️ 구성
- 종속성을 설치하고 프로젝트를 빌드합니다.Copy
- 커서의 MCP 설정에서 다음 명령을 사용하여 서버를 추가합니다.바꾸다:Copy
/path/to/dist/index.js
실제 경로로 변경합니다.[PROJECT-ID]
에 Supabase 프로젝트 ID를 입력하세요.[PASSWORD]
에 데이터베이스 비밀번호를 입력하세요.
참고: 데이터베이스 자격 증명을 안전하게 보관하고 버전 제어에 커밋하지 마세요.
🎯 통합
커서 MCP 통합
모델 컨텍스트 프로토콜(MCP)을 사용하면 Cursor에서 에이전트 LLM에 사용자 지정 도구를 제공할 수 있습니다. 이 서버는 Cursor의 Composer 기능과 통합되어 자연어 명령을 통해 모든 데이터베이스 관리 도구에 직접 액세스할 수 있습니다.
커서 설정
- 커서 설정 > 기능 > MCP 열기
- "+ 새 MCP 서버 추가" 버튼을 클릭하세요
- 모달 양식을 작성하세요:
- 이름: "Supabase MCP"(또는 원하는 별명)
- 유형:
command
(stdio 전송) - 명령: 연결 세부 정보가 포함된 전체 명령 문자열
- 먼저 프로젝트를 빌드하세요.Copy
- Node.js 경로를 가져옵니다.Copy
- 서버 명령을 추가합니다.바꾸다:Copy
/path/to/node
실제 Node.js 경로(5단계에서)로 변경합니다./path/to/dist/index.js
빌드된 JavaScript 파일에 대한 실제 경로로 지정합니다.[PROJECT-ID]
에 Supabase 프로젝트 ID를 입력하세요.[PASSWORD]
에 데이터베이스 비밀번호를 입력하세요.
- "서버 추가"를 클릭한 다음 오른쪽 상단 모서리에 있는 새로 고침 버튼을 클릭하세요.
커서의 도구 사용
Composer Agent는 데이터베이스 작업을 설명할 때 관련 도구를 자동으로 감지하고 사용합니다. 예:
- "내 데이터베이스의 모든 테이블 나열"
- "새로운 사용자 테이블 만들기"
- "이메일 열에 인덱스 추가"
에이전트가 도구를 사용하면 다음이 표시됩니다.
- 도구 호출을 승인/거부하라는 메시지
- 도구 호출 인수(확장 가능)
- 승인 후 응답
참고: 이와 같은 stdio 서버의 경우, 명령은 유효한 셸 명령이어야 합니다. 환경 변수가 필요한 경우 래퍼 스크립트를 사용하는 것이 좋습니다.
Windsurf/Cascade 통합
이 MCP 서버는 Codeium의 Cascade(Windsurf) 통합도 지원합니다. 이 기능은 현재 유료 개인 사용자에게만 제공되며, Teams 또는 Enterprise 사용자는 사용할 수 없습니다.
Cascade 설정
~/.codeium/windsurf/mcp_config.json
생성하거나 편집합니다.Copy- 구성에 대한 빠른 액세스:
- Cascade 입력 위에 있는 툴바를 찾으세요
- 망치 아이콘을 클릭하세요
- "구성"을 클릭하여 mcp_config.json을 엽니다.
- 구성에서 다음을 교체합니다.
/path/to/node
실제 Node.js 경로로 변경합니다./path/to/dist/index.js
실제 경로로 변경합니다.[PROJECT-ID]
에 Supabase 프로젝트 ID를 입력하세요.[PASSWORD]
에 데이터베이스 비밀번호를 입력하세요.
- 캐스케이드에서:
- 도구 모음에서 망치 아이콘을 클릭하세요
- "구성"을 클릭하여 설정을 확인하세요.
- MCP 서버를 로드하려면 "새로 고침"을 클릭하세요.
- 사용 가능한 도구를 보려면 서버 이름을 클릭하세요.
Cascade 사용자를 위한 중요 참고 사항
- 도구 기능만 지원됩니다(프롬프트나 리소스는 지원되지 않음)
- MCP 도구 호출은 성공 여부와 관계없이 크레딧을 소모합니다.
- 이미지 출력이 지원되지 않습니다.
- stdio 전송 유형만 지원됩니다.
- 도구 호출은 임의의 서버 구현자가 작성한 코드를 호출할 수 있습니다.
- Cascade는 MCP 도구 호출 실패에 대한 책임을 지지 않습니다.
✨ 특징
🎯 사용 가능한 데이터베이스 도구
테이블 관리
- 테이블:
list_tables
,create_table
,drop_table
,rename_table
- 열:
add_column
,drop_column
,alter_column
- 레코드:
fetch_records
,create_record
,update_record
,delete_record
인덱스 및 제약 조건
- 인덱스:
list_indexes
,create_index
,delete_index
,update_index
- 제약 조건:
list_constraints
,add_constraint
,remove_constraint
,update_constraint
데이터베이스 함수 및 트리거
- 함수:
list_functions
,create_function
,update_function
,delete_function
- 트리거:
list_triggers
,create_trigger
,update_trigger
,delete_trigger
보안 및 접근 제어
- 정책:
list_policies
,create_policy
,update_policy
,delete_policy
- 역할:
list_roles
,create_role
,update_role
,delete_role
스토리지 관리
- 버킷:
list_buckets
,create_bucket
,delete_bucket
- 파일:
delete_file
,bulk_delete_files
- 폴더:
list_folders
데이터 유형 및 출판물
- 열거형:
list_enumerated_types
,create_enumerated_type
,update_enumerated_type
,delete_enumerated_type
- 게시물:
list_publications
,create_publication
,update_publication
,delete_publication
실시간 기능
- 정책:
list_realtime_policies
,create_realtime_policy
,update_realtime_policy
,delete_realtime_policy
- 채널:
list_realtime_channels
,manage_realtime_channels
,send_realtime_message
,get_realtime_messages
- 관리:
manage_realtime_status
,manage_realtime_views
사용자 관리
- 권한:
list_users
,create_user
,update_user
,delete_user
직접 SQL 액세스
- 쿼리:
query
- 사용자 정의 SQL 쿼리 실행
🚀 주요 이점
- 자연어 제어 : 간단한 대화형 명령을 통해 Supabase 데이터베이스를 관리하세요
- 포괄적인 범위 : 테이블, 레코드, 인덱스, 함수, 보안 등을 포괄하는 전체 도구 모음
- 원활한 통합 : Cursor의 Composer와 Codeium의 Cascade 내에서 직접 작동합니다.
- 개발자 친화적 : IDE와 데이터베이스 관리 도구 간의 컨텍스트 전환을 줄입니다.
- 보안 액세스 : 적절한 인증을 통해 데이터베이스 보안을 유지합니다.
📁 프로젝트 구조
💡 사용법
MCP 서버는 구성이 완료되면 Cursor's Composer를 통해 모든 데이터베이스 관리 도구를 제공합니다. 데이터베이스에서 무엇을 할지 간단히 설명하면 AI가 적절한 명령을 실행합니다.
예:
- 📋 "내 데이터베이스의 모든 테이블을 보여주세요"
- ➕ "ID, 이름, 이메일 열이 있는 새 사용자 테이블을 만듭니다."
- 🔍 "users 테이블의 email 열에 인덱스를 추가하세요"
🔒 보안 참고 사항
- 🔐 데이터베이스 연결 문자열을 안전하게 유지하세요
- ⚠️ 민감한 자격 증명을 버전 제어에 커밋하지 마십시오.
- 👮 적절한 액세스 제어 및 권한을 사용하세요
- 🛡️ SQL 주입을 방지하기 위해 모든 입력을 검증하고 정리합니다.
🛠️ 문제 해결
일반적인 연결 문제
- Node.js 경로 문제
- 올바른 Node.js 경로를 사용하고 있는지 확인하세요.
- Mac/Linux에서: 올바른 경로를 찾는 데
which node
사용하세요 - Windows에서:
where node
사용하여 올바른 경로를 찾으세요. /usr/local/bin/node
실제 Node.js 경로로 바꾸세요.
- 파일 경로 문제
- 상대 경로 대신 절대 경로를 사용하세요
- Mac/Linux의 경우: 프로젝트 디렉토리에서
pwd
사용하여 전체 경로를 가져옵니다. - Windows의 경우:
cd
사용하여 전체 경로를 가져옵니다. - 예:
/Users/username/projects/supabase-mcp-server/dist/index.js
- MCP가 도구를 감지하지 못함
- 커서의 MCP 설정에서 새로 고침 버튼을 클릭하세요.
- 서버가 실행 중인지 확인하세요(오류 메시지 없음)
- 연결 문자열이 올바른지 확인하세요
- Supabase 자격 증명이 유효한지 확인하세요
- 권한 문제
dist
디렉토리가 있는지 확인하세요(npm run build
)- 파일 권한 확인(Unix 시스템에서는
chmod +x
) - 적절한 권한으로
npm install
실행하세요.
디버그 모드
자세한 로그를 보려면 명령 앞에 DEBUG=true
추가하세요.
플랫폼별 참고 사항
윈도우 사용자
리눅스 사용자
여전히 문제가 발생하는 경우 다음 주소로 문제를 제기해 주세요.
- 귀하의 운영 체제
- Node.js 버전(
node --version
) - 전체 오류 메시지
- 재현 단계
🤝 기여하기
기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.
📄 라이센스
This server cannot be installed
Cursor의 Composer와 Codeium의 Cascade를 통해 Supabase PostgreSQL 데이터베이스에 대한 관리 제어 기능을 제공하는 강력한 서버로, 테이블, 레코드, 스키마 수정 등의 기능을 통해 데이터베이스 관리를 지원합니다.