피드로 돌아가기
I Gave AI Agents Real Excel. They Did Not Use It Like I Expected - Proven By 90 Days of Telemetry.
Dev.toDev.to
AI/ML

COM 자동화 기반 Excel MCP 서버로 AI 에이전트의 레거시 워크북 제어 구현

I Gave AI Agents Real Excel. They Did Not Use It Like I Expected - Proven By 90 Days of Telemetry.

Stefan Broenner2026년 4월 30일6advanced

Context

기존 .xlsx 파일 기반 라이브러리는 계산 엔진, VBA, Power Query 등 런타임 상태를 처리하지 못하는 한계 존재. 단순 파일 수정을 넘어 실제 Excel 앱 내의 비즈니스 로직과 상태를 제어할 수 있는 인터페이스 필요성 대두.

Technical Solution

  • AI Assistant와 Excel.exe 사이의 가교 역할을 수행하는 MCP(Model Context Protocol) 서버 설계
  • 파일 파싱 방식이 아닌 COM automation을 통한 실시간 Excel 프로세스 직접 제어 구조 채택
  • 시각적 피드백 루프 구현을 위해 단순 데이터 추출이 아닌 Screenshot capture 기능을 도구 집합에 포함
  • STA Threading, Modal Dialog, Workbook Lock 등 데스크톱 앱 특유의 상태 관리 및 동기화 이슈 해결
  • 도메인 중심의 Tool Naming을 통해 LLM의 추론 단계를 줄이고 의도 전달의 정확도 향상
  • Named-pipe CLI daemon 구조를 통한 프로세스 간 통신 최적화 및 세션 유지

Impact

  • 90일간 2,908명의 사용자 및 488,548회의 Tool Invocation 기록
  • 20,000회 이상의 VBA 작업과 25,000회 이상의 Power Query/DAX 모델 조작 수행
  • 68,000회 이상의 포맷팅 작업 및 7,700회 이상의 스크린샷 캡처를 통한 시각적 검증 루프 확인
  • 주간 사용자 수 84명에서 1,209명으로 급격한 성장 달성

Key Takeaway

레거시 시스템 자동화 시 Headless 접근보다 실제 런타임 환경의 상태(State)와 시각적 피드백을 포함한 통합 환경 제어가 실질적인 효용성을 제공함.


- 상태 기반 데스크톱 앱 제어 시 stateless HTTP wrapper가 아닌 Session 중심 설계 적용 - LLM 도구 설계 시 API 메커니즘보다 사용자 의도(User Intent) 중심의 도메인 네이밍 부여 - 도구 이름 변경은 프롬프트 의존성을 파괴하는 Breaking Change이므로 SDK 수준의 버전 관리 필요 - 시각적 요소가 중요한 UI 앱 제어 시 스크린샷 등 시각적 피드백 루프를 도구 인터페이스에 포함

원문 읽기