Skip to main content
설정 & 모범사례 페이지에서 이어지는 내용입니다.

5. MCP 서버 연동

5.1 MCP 서버 추가 방법

MCP 서버는 Genie Code가 외부 도구를 호출할 수 있게 해주는 연결 통로입니다. Agent 모드에서만 동작합니다. 설정 경로:
  1. Genie Code 패널 > Settings > MCP servers
  2. “Add MCP server” 클릭
  3. MCP 서버 이름, URL, 인증 정보 입력
  4. 연결 테스트 후 저장
참고 MCP 서버 연동의 상세 설정 방법과 아키텍처는 MCP 연동 페이지에서 자세히 다룹니다. 이 섹션에서는 어떤 서버를 어떻게 조합하면 효과적인지 에 집중합니다.

5.2 유용한 MCP 서버 조합

단일 MCP 서버도 유용하지만, 여러 서버를 조합 하면 워크플로 자동화의 진정한 가치가 드러납니다. 다음은 역할별로 검증된 조합입니다. 데이터 엔지니어 추천 조합:
MCP 서버활용 시나리오
Databricks MCPUnity Catalog 탐색, SQL 실행, 파이프라인 관리
GitHub MCP파이프라인 코드 검색, PR 생성, 코드 리뷰
Slack MCP파이프라인 실패 알림, 팀 채널에 결과 공유
이 조합으로 가능한 워크플로 예시: “파이프라인 실패 원인을 분석하고, 수정 코드를 GitHub PR로 올리고, #data-eng 채널에 요약을 공유해줘” 데이터 분석가 추천 조합:
MCP 서버활용 시나리오
Databricks MCP테이블 탐색, 쿼리 실행, 대시보드 생성
Slack MCP분석 결과를 팀/경영진 채널에 공유
JIRA MCP분석 요청 티켓 관리, 완료 보고
ML 엔지니어 추천 조합:
MCP 서버활용 시나리오
Databricks MCP실험 관리, 모델 레지스트리, 서빙 엔드포인트
GitHub MCP학습 코드 버전 관리, 모델 배포 파이프라인
Slack MCP학습 완료 알림, 모델 성능 리포트 공유

6. Agent 모드 실전 팁

Agent 모드에서 Genie Code는 단순한 코드 생성기에서 자율적으로 계획하고, 실행하고, 검증하는 AI 에이전트 로 변환됩니다. 이 자율성은 강력하지만, 제대로 다루지 않으면 의도하지 않은 결과를 초래할 수 있습니다.

6.1 컨텍스트 격리 전략

Genie Code의 대화 세션은 컨텍스트 윈도우 를 공유합니다. 하나의 세션에서 여러 작업을 처리하면 이전 작업의 맥락이 새 작업에 영향을 줍니다. 원칙: 하나의 세션 = 하나의 작업 단위
상황권장 행동
새로운 데이터셋을 분석할 때새 채팅 세션 시작
이전 분석과 관련 없는 코드를 작성할 때새 채팅 세션 시작
이전 분석 결과를 기반으로 후속 작업할 때같은 세션에서 계속
에러가 반복되어 세션이 혼란스러울 때새 채팅 세션에서 문제를 깔끔하게 재정의
주의 브라우저 탭을 전환하면 Agent 모드가 일시정지 됩니다. 장시간 작업을 실행 중일 때 탭을 떠나면 작업이 중단될 수 있습니다. 또한 브라우저 새로고침 은 현재 세션의 실행 상태를 초기화합니다.

6.2 권한 관리: “Always Allow” 주의

Agent 모드에서 Genie Code가 도구를 호출하거나 코드를 실행할 때, 사용자에게 승인(Approve) 을 요청합니다. 이때 “Always Allow” 옵션이 표시됩니다. “Always Allow”를 사용해도 되는 경우:
  • 읽기 전용 작업 (테이블 스키마 조회, SELECT 쿼리)
  • sandbox/dev 환경에서의 개발 작업
“Always Allow”를 사용하면 안 되는 경우:
  • 프로덕션 데이터에 대한 쓰기 작업
  • 외부 시스템으로의 데이터 전송 (Slack 메시지, JIRA 티켓 생성)
  • DROP, DELETE, UPDATE 등 파괴적 작업이 포함될 수 있는 경우
주의 “Always Allow”는 편리하지만 안전망을 제거 합니다. Agent가 자율적으로 판단하여 실행하는 작업의 범위가 넓어질수록, 개별 액션 확인이 더 중요해집니다. 특히 프로덕션 환경에서는 매 액션을 직접 확인하는 것을 원칙으로 하세요.

6.3 작업 정의 방식: 목표 중심 + 제한 설정

Agent 모드에서는 단계별 지시 보다 최종 목표 + 제한 조건 을 주는 것이 더 효과적입니다. Agent가 스스로 최적 경로를 찾도록 하되, 넘지 말아야 할 경계를 명확히 하는 것입니다. 비효과적인 프롬프트 (단계별 지시):
1. orders 테이블을 읽어줘
2. customer_id로 그룹핑해줘
3. 매출 합계를 계산해줘
4. 상위 10개를 정렬해줘
5. 결과를 차트로 보여줘
효과적인 프롬프트 (목표 + 제한):
@main_catalog.sales.orders 테이블에서 상위 10 고객의 매출 분석 대시보드를 만들어줘.

제한사항:
- 최근 90일 데이터만 사용
- 개발 중에는 1000행으로 제한하여 먼저 테스트
- 결과는 dev_catalog.sandbox.simyung에 저장
- Plotly 차트 사용
이 접근법이 더 나은 이유는, Agent가 중간 단계에서 최적화할 여지를 갖게 되기 때문입니다. 예를 들어 데이터 크기에 따라 파티셔닝 전략을 자율적으로 결정하거나, 더 효율적인 집계 방식을 선택할 수 있습니다.

6.4 보안 제한 설정

Agent 모드에서 가장 중요한 것은 위험한 작업을 사전에 차단 하는 것입니다. 프롬프트에 명시적 제한을 포함하세요:
분석 진행하되 다음 규칙을 반드시 지켜줘:
- DROP TABLE, DELETE, UPDATE, ALTER 문을 실행하지 마
- 프로덕션 카탈로그(prod_catalog)에 절대 쓰기하지 마
- 외부 API 호출 시 민감 데이터를 전송하지 마
- 모든 중간 결과는 dev_catalog.sandbox.{내이름}에만 저장해
이 보안 규칙들은 User Instructions에 한 번 설정해두면 매 프롬프트에 반복하지 않아도 됩니다. 하지만 특히 민감한 작업에서는 프롬프트에서 한 번 더 강조 하는 이중 방어가 안전합니다.

6.5 개발/테스트 시 제한 설정

Agent가 대규모 테이블에 대해 작업할 때, 처음부터 전체 데이터를 처리하면 시간과 비용이 낭비됩니다:
먼저 1000행 샘플로 로직을 검증한 뒤, 확인되면 전체 데이터로 실행해줘.
이 한 줄이 클러스터 비용을 크게 절약합니다. Agent가 로직을 완성하고 사용자의 확인을 받은 후에만 전체 스케일로 확장하기 때문입니다.

6.6 무한 루프 대응

Agent 모드에서 드물게 오류 → 수정 → 오류 → 수정 의 무한 루프에 빠질 수 있습니다. 같은 에러가 2-3번 반복되면 Agent가 스스로 벗어나지 못할 가능성이 높습니다. 대응 방법:
  1. 즉시 Stop 버튼으로 실행 중단
  2. 현재까지의 에러 메시지를 복사
  3. 새 채팅 세션 을 열어서 에러 원인을 텍스트로 설명하고 해결 방향을 질문
  4. Agent에게 단계별로 실행시키되, 각 단계를 확인한 후 다음으로 진행
주의 무한 루프가 발생하면 같은 세션에서 계속 시도하지 마세요. 세션의 컨텍스트가 이미 에러 정보로 가득 차 있어서, Agent가 잘못된 맥락에서 벗어나기 어렵습니다. 깔끔한 새 세션에서 문제를 다시 정의하는 것이 훨씬 빠릅니다.

7. 추천 설정 조합 (역할별)

모든 설정을 처음부터 완벽하게 구성할 필요는 없습니다. 역할에 맞는 핵심 설정부터 시작하고, 사용하면서 점진적으로 확장하세요. 다음 표는 Databricks 데이터 팀의 주요 역할별로 검증된 설정 조합을 보여줍니다.
역할User Instructions 중점추천 Workspace 스킬추천 MCP 서버
데이터 엔지니어PySpark 패턴, DLT 규칙, 에러 핸들링 표준파이프라인 템플릿, 데이터 품질 검증Databricks, GitHub, Slack
데이터 분석가SQL 스타일, 시각화 선호, 리포트 형식대시보드 생성, 리포트 자동화Databricks, Slack
ML 엔지니어MLflow 규칙, 실험 네이밍, 모델 문서화모델 배포 절차, 피처 엔지니어링Databricks, GitHub, Slack
데이터 과학자탐색 분석 패턴, 통계 검정 절차EDA 템플릿, 실험 결과 정리Databricks, Slack
플랫폼 관리자거버넌스 규칙, 리소스 관리 정책권한 감사, 비용 분석Databricks, JIRA, Slack
이 표에서 모든 역할에 Databricks MCPSlack MCP 가 공통으로 포함된 것에 주목하세요. Databricks MCP는 워크스페이스 내 자원에 접근하는 기본 도구이고, Slack MCP는 결과를 팀과 공유하는 가장 빈번한 채널이기 때문입니다. GitHub MCP는 코드를 직접 관리하는 역할(엔지니어)에게 특히 유용합니다.

설정 우선순위 가이드

처음 Genie Code를 사용한다면, 다음 순서로 설정하는 것을 권장합니다:
  1. Workspace Instructions 확인: 관리자가 이미 설정했는지 확인하고, 내용을 숙지합니다
  2. User Instructions 작성: 자신의 역할, 선호 라이브러리, 보안 규칙을 정의합니다
  3. MCP 서버 추가: Databricks MCP부터 시작하고, 필요에 따라 Slack/GitHub를 추가합니다
  4. Skills 생성: 반복 작업이 2-3번 이상 발생하면 스킬로 만듭니다
참고 설정은 살아있는 문서 입니다. 처음에 완벽할 필요 없습니다. 사용하면서 “이걸 매번 말하고 있네”라고 느끼는 순간이 User Instructions에 추가할 타이밍이고, “이 절차를 또 설명하고 있네”라고 느끼는 순간이 스킬을 만들 타이밍입니다.

관련 가이드