#AI

시킬 때마다 다른 결과를 내는 AI에게 도구를 쥐여 주었습니다 — AI가 쓰는 ERD 도구 제작기

시킬 때마다 다른 결과를 내는 AI에게 도구를 쥐여 주었습니다 — AI가 쓰는 ERD 도구 제작기
01

Summary

비결정적인 AI에게 '도구'를 쥐여주어 일관된 ERD 설계를 자동화하는 방법

MCP 프로토콜 기반 도구 설계와 에이전트 벤치마크를 통해 도구 호출 실패율을 95% 이상 낮춘 실무 경험담

여기어때 개발팀에서 AI의 비결정성으로 인해 매번 흐트러지던 ERD 작성 문제를 해결하기 위해 AI와 도구 간의 역할을 분리한 아키텍처 전환 사례입니다. MCP(Model Context Protocol)를 활용해 AI는 설계 의도 파악에 집중하게 하고, 레이아웃 정렬 및 용어 규칙 적용은 전용 도구가 강제하도록 설계했습니다. 정량적 벤치마크 테스트와 도구 인터페이스 최적화를 거쳐 ERD 작성 소요 시간을 반나절에서 30분으로 줄였습니다.

  • 01AI와 도구의 역할 분리: AI는 설계 의도 파악, 전용 도구는 레이아웃 정렬 및 용어/타입 강제 적용
  • 02MCP(Model Context Protocol) 기반 13개 도구 모듈 구축 및 단일 편집 경로 설계를 통한 오작동 방지
  • 03용어사전과 도메인 규칙을 내장하여 '판매금액' 입력 시 영문명 sales_amount와 INTEGER 타입을 자동 지정
  • 04Claude Haiku, Sonnet, Opus 모델 대상 에이전트 벤치마크 수행으로 11가지 도구 호출 실패 원인 개선
  • 05도구 호출 수 44% 감소(272회 -> 153회) 및 실패 호출 수 95% 감소(61회 -> 3회) 달성

RECOMMENDATION

LLM 기반 워크플로우를 구축할 때 AI에게 모든 결과를 직접 생성하도록 강제하기보다, 비결정성을 제어할 수 있는 전용 도구(MCP)를 제공하는 아키텍처를 적극 권장합니다. 특히 에이전트 응답에 실행 결과와 다음 조치 지침을 함께 반환하는 인터페이스 설계 방식은 AI 오작동을 줄이는 데 매우 유용합니다.

The Problem

설치형 ERD 솔루션의 라이선스 비용과 수작업 부담을 줄이기 위해 AI에게 ERD 생성을 맡겼으나, AI의 비결정적 특성으로 인해 매번 결과물 배치가 달라지고 규칙을 위반하는 등 피로도가 누적되는 문제가 발생했습니다.

The Solution

AI에게 다이어그램을 직접 그리게 하는 대신 MCP(Model Context Protocol) 기반 전용 도구를 제공하여 역할 분리를 단행했습니다. AI는 사용자 대화와 개념 설계 및 한글 용어 지정만 담당하고, 레이아웃 정렬, 영문 이름 및 데이터 타입 매핑, 다이어그램 렌더링은 도구가 도메인 규칙과 용어사전을 바탕으로 자동 처리하도록 구현했습니다.

The Result

Claude 모델들을 대상으로 한 테스트 결과 도구 호출 수가 272회에서 153회로 44% 감소하고 실패한 호출은 61회에서 3회로 급감했으며, 기존에 반나절 이상 걸리던 ERD 작성 및 검토 시간이 30분 이내로 크게 단축되었습니다.

Trade-off

AI 도구가 ERD 작성을 자동화함에 따라 사람이 직접 그리거나 미세 수정하는 편집 기능은 최소한으로만 구현했기 때문에, 실제 팀 내 서비스 적용 시 사람이 직접 손대야 하는 일부 정교한 관리 기능의 추가 개발 필요성이 남았습니다.

03

Key Concepts

Concept · 01

Model Context Protocol (MCP)

LLM이 외부 도구, 데이터베이스, 시스템과 표준화된 방식으로 상호작용할 수 있게 해주는 개방형 프로토콜입니다. AI 클라이언트와 외부 도구 간의 컨텍스트 전달을 체계화하여 AI가 정해진 도구를 원활하게 선택 및 실행하도록 지원합니다.

  • 본문에서는 직접 제작한 ERD 그리기는 물론 조회, 정렬, 내보내기 등의 기능을 MCP 서버로 구현하여 AI에게 제공했습니다.
Concept · 02

AI 비결정성 (Non-determinism)

동일한 입력 프롬프트에 대해서도 LLM 출력이 매번 다르게 생성되는 확률적 특성입니다. 정교한 도메인 규칙이나 일관된 데이터 구조 형태를 지속적으로 유지하기 어렵게 만드는 주된 요인입니다.

  • AI에게 직접 Mermaid나 HTML로 ERD를 그리게 했을 때 배치가 매번 바뀌고 규칙을 위반하는 원인으로 분석되었습니다.
Concept · 03

에이전트 벤치마크 (Agent Benchmark)

다양한 LLM 모델들에게 동일한 시나리오와 오류 과제를 수행하게 한 뒤, 도구 호출 횟수, 성공 여부, 실패 원인을 정량적으로 계측하는 평가 체계입니다.

  • Claude Haiku, Sonnet, Opus 모델에 22개의 요구사항 시나리오를 실행시켜 개선 전후의 호출 수와 실패 건수를 정량적으로 비교 측정했습니다.