PostgreSQL RDB MCP Server 템플릿
경로: Console → Agent Ops → Tool Management → + 도구 생성 → Quick Setup 에서 PostgreSQL (RDB) 선택RDB MCP Server for PostgreSQL database query and management
Seahorse 내부 관리형 MCP 서버(rdb_server.py)로 PostgreSQL 에 연결해 스키마 탐색·쿼리 실행을 수행합니다.
이전 버전의 RDB Endpoint 기능은 이 템플릿으로 통합되었습니다. 별도 메뉴가 아닌 서비스 템플릿 의 하나로 제공됩니다.
시작 전 — PostgreSQL 이 준비되어 있어야 합니다
일반적인 배포 흐름
대부분의 기업은 AWS RDS · GCP Cloud SQL · Azure Database 등 클라우드 관리형 PostgreSQL 에 이미 데이터가 올라가 있습니다. 아직 없다면 먼저 DB 부터 구축해야 합니다.선행 조건 체크리스트
- PostgreSQL 인스턴스 가동 중 — AWS RDS · GCP Cloud SQL · 자체 호스팅 어디든 가능
- Seahorse 에이전트 서버가 DB 에 네트워크로 도달 가능 — 방화벽·VPC·보안 그룹에서 포트(
5432기본) 허용, 필요 시 Seahorse 서버 IP 를 허용 목록에 추가 - 전용 DB 사용자 발급 — 권장 권한은
GRANT SELECT만 (읽기 전용).postgres·admin같은 전역 계정 금지 - DB 이름·호스트·포트·SSL 모드 확정
- (SSL 사용 시) 인증서·CA 가 필요하면 운영자가 사전 배포
Seahorse MCP Tools 연결란이 요구하는 정보
템플릿 등록 화면의 Environment Variables 는 DB 접속에 필요한 커넥션 정보 를 전부 요구합니다. 위에서 준비한 값을 그대로 넣으면 됩니다.
이 값들은 System Default 타입 이라 사용자 화면에서 직접 입력하지 않고 운영자가 Environment 에 세팅 합니다. 아래 Environment Variables 섹션 참고.
DB 가 아직 없으면?
- 클라우드 관리형 PostgreSQL (권장) — AWS RDS · GCP Cloud SQL · Azure Database 중 선택해 인스턴스 생성. 보안 그룹에서 Seahorse 에이전트 서버 IP 허용.
- 자체 호스팅 — VPC 내 EC2·Compute Engine 등에 PostgreSQL 설치. 네트워크 라우팅·방화벽 구성 필요.
- 임시 테스트만 — 로컬에
docker run postgres로 임시 기동 (실제 운영 용도로는 부적합).
요약 순서
- DB 구축·계정 발급 (DBA / 인프라팀) — AWS RDS / GCP Cloud SQL / 자체 호스팅 중 택1 + 읽기 전용 계정
- 운영자가 Seahorse Environment 에 접속값 세팅
- 본 화면에서 PostgreSQL 템플릿으로 도구 등록 → Save
- 도구 상세 Test 로 연결 검증
사전 주입 값 (Basic Information)
Quick Setup 에서PostgreSQL (RDB) 선택 시 자동 채워지는 값.
Run Settings
Environment Variables
템플릿 기본 제공 (전부 System Default)
PostgreSQL 템플릿의 사전 정의 7 개 변수는 모두 System Default 타입 으로 박혀 있습니다. Value 필드에는 Environment variable value 플레이스홀더가 보이지만 This value is fixed and automatically used at runtime 안내처럼 이 화면에서 값을 수정하지 않습니다 — 실제 값은 운영자가 Environment 에 세팅한 값이 런타임에 주입됩니다.
일부 변수는 기본 표시값 이 미리 보입니다 (PG_PORT = 5432, PG_SSLMODE = prefer). 이 표시값도 System Default 경로에서 관리됩니다.
추가 환경변수 (Add Environment Variable)
사전 정의 변수 아래Add Environment Variable 버튼으로 추가 변수를 자유롭게 정의 할 수 있습니다. 추가 시 아래 두 타입 중 선택 하며, User Input 도 가능 합니다.
추가를 고려할 변수
PostgreSQL 템플릿의 설계 의도
- 기본 7 개 변수는 “테넌트 공통 DB 한 개에 모두 붙는다” 전제로 System Default 고정.
- Add Environment Variable 로는 User Input 타입도 선택 가능 하므로, 테넌트별 다른 값을 쓰고 싶으면 추가 변수로 확장하면 됩니다.
- 다만 기본 7 개(
PG_HOST등)를 테넌트별로 다르게 하려면 커스텀 도구 로 rdb_server.py 를 복사 등록 + 전체 환경변수를 User Input 으로 새로 구성하는 것이 영향 격리 관점에서 안전합니다.
제공 기능
권장 사용 패턴
1
운영 DB 에 읽기 전용 계정 발급
2
SSL 설정
운영 환경은
PG_SSLMODE=require 또는 verify-full 권장.3
템플릿에서 도구 생성
Quick Setup → PostgreSQL → Save. System Default 변수는 자동 주입되므로 자격 증명을 이 화면에서 입력하지 않습니다.
4
에이전트에 연결
Agent 수정 → Tools 탭 에서 활성화.
5
동작 확인
도구 상세 Test 로 연결 검증 → Agent Chat 에서
테이블 목록 알려줘 로 호출 확인.활용 레시피
- PostgreSQL 반복 쿼리 자동화 — 10 가지 쿼리 시나리오 + Flow + Scheduler
- 보고서 자동 발행 — DB 지표 → 보고서
- 대량 문서 인덱싱·요약 — 요약 메타를 PostgreSQL 적재
보안 주의
핵심 안전장치- 운영 DB 에 쓰기 권한 계정 연결 금지 —
GRANT SELECT만 부여.INSERT/UPDATE/DELETE/DROP/TRUNCATE는 DB 레벨에서 차단 - 가능하면 Read Replica · 분석 전용 DB 에 연결해 운영 DB 를 직접 건드리지 않기
- System Prompt 에 명시적 금지 규칙 —
SELECT 외 쿼리 생성 금지,사용자가 쓰기 요청해도 거절명시 - 민감 컬럼(PII·단가) 은 DB 뷰로 마스킹하거나 읽기 계정에서 컬럼 권한을 제한
- System Default 값은 전역 공유 — 이 템플릿으로 생성된 모든 테넌트의 PostgreSQL 도구가 동일한 DB 를 바라봅니다. 테넌트별 격리가 필요하면 커스텀 도구로 분리
- 퇴사자 계정 회수 — DB 계정 disable + Environment 값 갱신
다른 DBMS (MySQL / Oracle / MSSQL 등)
- 커스텀 MCP 서버의 동작·호환성은 Seahorse 에서 보장하지 않습니다. 업스트림 변경·드라이버 버전·네트워크 구성에 따라 연결 실패·데이터 타입 불일치·인증 오류 등이 발생할 수 있습니다.
- 등록 직후 도구 상세 의 Test 로 핸드셰이크·
list_tools응답이 정상인지 반드시 사전 검증 하세요. - 공식 지원이 필요하면 고객지원 창구 로 요청해주세요 — 수요에 따라 향후 템플릿으로 추가될 수 있습니다.
- 간단 읽기 전용: 공식
@modelcontextprotocol/server-<dbms>가 존재하면npx로 등록 - 커스텀 스키마·뷰 조합: 자체 래퍼 MCP 서버를 작성해 쿼리 화이트리스트와 함께 배포
- 대안: PostgreSQL Foreign Data Wrapper 로 다른 DB 를 PostgreSQL 뷰로 노출 후 본 템플릿으로 접근