PostgreSQL 반복 쿼리 자동화
요약: PostgreSQL 데이터베이스에 연결된 에이전트로 정기 지표 쿼리를 실행하고, 결과를 정해진 포맷으로 자동 리포트. 단순 일일 KPI부터 이상 탐지·트렌드 분석·고객 코호트·재고 알림까지 광범위하게 활용 가능합니다.먼저 읽어주세요 — 읽기 전용 보고서 용도로만 권장
최소 안전장치- 읽기 전용 DB 계정 으로만 연결 —
GRANT SELECT만 부여,INSERT/UPDATE/DELETE/DROP/TRUNCATE는 DB 레벨에서 차단 - 가능하면 운영 DB 가 아닌 Read Replica·분석용 DB 에 연결
- 민감 컬럼(개인정보·결제 정보) 은 뷰로 마스킹하거나 컬럼 권한 제거
- System Prompt 에
SELECT 외 쿼리 금지명시
활용 시나리오
| 시나리오 | 빈도 | 출력 |
|---|---|---|
| 일일 매출 / 주문 KPI | 매일 09:00 | 전일 대비 변화율 + Slack 채널 |
| 주간 신규 가입자 코호트 | 매주 월 09:00 | 가입 주차별 retention 표 + 이메일 |
| 이상 탐지 (매출·트래픽 outlier) | 매시간 | 임계 초과 시에만 PagerDuty / Slack alert |
| 재고 부족 알림 | 매일 08:00 | 안전재고 하회 SKU 목록 + 발주 담당자 멘션 |
| 장애 대시보드 자동 답변 | 사용자 질의 시 | error_log + slow_query 조인 → 원인 추정 |
| 고객 문의 통계 | 주간 | 카테고리별 건수 · SLA 미준수 비율 |
| A/B 테스트 결과 자동 집계 | 일간 | 그룹별 전환율 + 통계적 유의성 |
| 계약 만료 임박 알림 | 매주 | 30/60/90 일 내 만료 고객 · 갱신 담당자 |
| 데이터 품질 점검 | 매일 새벽 | NULL률·중복·정합성 위반 로그 |
| 임원 위클리 요약 | 매주 금 17:00 | 핵심 KPI 5 개 + 자연어 인사이트 1 단락 |
요구 사항
| 항목 | 설정 위치 |
|---|---|
| PostgreSQL MCP 도구 | Console → Tool Management → PostgreSQL 템플릿 |
| DB 접속 환경변수 | Internal → System Management → Environment (운영자만 설정 가능) |
| 읽기 전용 DB 계정 | 운영 DB 에서 직접 생성 (보안 필수) |
| 에이전트 생성 & 도구 연결 | Agent 생성 → Tools 탭 |
| Scheduler (반복 실행) | 사용자 메뉴 → Scheduler |
| (선택) Slack 전송 | Slack MCP 템플릿 + 채널 bot token |
단계
에이전트 + PostgreSQL 도구 등록
Console → Tool Management → 도구 생성 → PostgreSQL 템플릿 선택.
환경변수
POSTGRES_CONNECTION_STRING 에 읽기 전용 연결 문자열 입력.
자세한 설정: PostgreSQL 템플릿스키마 탐색
첫 실행 시 에이전트에게 스키마를 알려줍니다:
프롬프트 예시: “postgresql 에 연결된 DB에서 public 스키마의 테이블 목록과 각 테이블의 컬럼을 알려줘.”에이전트가
list_tables, get_table_schema 도구를 Tool Call 카드로 호출하며 구조 파악.쿼리 자연어로 실행
프롬프트 예시: “어제 하루 주문 건수를 region 별로 집계하고, 상위 5개 지역을 표로 보여줘.”에이전트가
execute_query 로 SQL 실행. 결과는 Tool Call 카드 + 자연어 요약으로 표시.Flow Studio 에 저장 (재사용)
반복 실행할 쿼리 플로우를 Flow Studio 로 저장:
- 노드 1:
execute_query(sql="...") - 노드 2: LLM 응답 포맷 (예: Markdown 표)
- 노드 3: (선택) Slack 메시지 전송
Scheduler 로 반복 예약
사용자 메뉴 → Scheduler → + New Schedule:
- Flow: 저장한 Flow 이름
- Cron:
0 9 * * MON(매주 월요일 9시) 또는0 9 * * *(매일 9시) - Timezone:
Asia/Seoul
프롬프트 템플릿
일일 지표 리포트
이상 탐지 (Outlier)
코호트 분석 (Retention)
A/B 테스트 결과
재고 부족 알림
데이터 품질 점검
자연어 임원 요약
주의사항
Tool 호출 실패 시 Blocked API Keys 나 DB 접속 로그를 먼저 확인하세요.
변형·응용
- 다중 DB 조합 — PostgreSQL + GitHub MCP → 배포 일자와 매출 변화 상관 분석
- RAG + SQL 하이브리드 — 사내 위키(Storage 문서) + DB 지표 → “이번 분기 매출 하락 원인” 같은 질의에 정량+정성 답변
- 사용자 권한별 마스킹 뷰 — 영업·재무·임원 등 역할별 다른 뷰를 에이전트에 노출
- 자연어 → SQL → 시각화 — 결과를 Plotly Tool 로 차트 생성
- 장애 자동 분석 — 모니터링 알람 발생 시 Slack → 에이전트 호출 → 관련 SQL 자동 실행 → 1차 분석 보고
관련 레시피
- Slack 알림 자동화 — 쿼리 결과를 Slack으로
- 보고서 자동 발행 — Scheduler + Flow 로 정기 리포트 발행
- 대량 문서 인덱싱·요약 — 요약 메타를 PostgreSQL 에 적재
- GitHub PR 리뷰 요약 — 다른 MCP 예시
- 레시피 목록