Skip to content

[Feature] eGovFrame MCP Server 및 AI 친화 가이드 메타데이터 표준 제안 (AI 에이전트·LLM 연계) #628

Description

@EricSeokgon

배경 / 문제 정의

표준프레임워크는 공공 SW 개발의 사실상 표준이지만, 최근 확산되는 AI 코딩 에이전트(LLM 기반 IDE·에이전트)와의 연계 수단이 부재합니다. 그 결과 다음 문제가 발생합니다.

  • LLM이 표준프레임워크의 최신 가이드·공통컴포넌트·버전 정보를 알지 못해 부정확하거나 구버전 기준의 코드를 생성합니다.
  • 개발자가 표준프레임워크 규약(패키지 구조, 네이밍, 공통컴포넌트 사용법)을 LLM에게 매번 수작업으로 설명해야 합니다.
  • 포털·가이드 문서가 LLM이 직접 조회·활용할 수 있는 형태로 제공되지 않습니다.

제안 내용 — eGovFrame MCP Server

표준프레임워크의 지식과 기능을 MCP(Model Context Protocol) 서버로 노출하여, 어떤 LLM 에이전트에서도 표준화된 방식으로 표준프레임워크를 조회·활용할 수 있게 합니다. MCP는 특정 모델·벤더에 종속되지 않는 개방형 프로토콜이므로, 공식 MCP 서버를 제공하면 다양한 AI 에이전트 생태계에 표준프레임워크가 "도구"로 편입됩니다.

제공 기능(도구) 예시

도구 설명
search_guide 실행환경/공통컴포넌트 가이드 문서를 키워드로 검색하고 해당 Markdown 섹션을 반환
get_component 공통컴포넌트 메타정보(기능·의존성·버전·사용 예시) 조회
scaffold_template 레이어별(presentation/business/persistence) 표준 코드 골격(Controller, Service, DAO, VO, Mapper) 생성
check_convention 입력된 소스가 표준프레임워크 패키지 구조·네이밍 규약을 준수하는지 점검
get_version_info 실행환경/디바이스/컴포넌트의 최신 버전 및 호환성 정보 반환

데이터 소스로는 egovframe-docs 저장소의 Markdown 가이드(컨트리뷰션으로 정비 중인 문서)와 공통컴포넌트 메타데이터·표준 코드 템플릿을 활용합니다.

기대 효과

  • 생성 정확도 향상: LLM이 최신 가이드를 근거로 코드를 생성해 환각(hallucination)과 구버전 오류를 줄입니다.
  • 개발 생산성: 표준 규약에 맞는 코드 골격을 에이전트가 자동 생성해 반복 작업을 단축합니다.
  • 생태계 확장: 벤더 중립 프로토콜로 제공되어 다양한 AI 도구에서 표준프레임워크를 활용할 수 있어 저변 확대에 기여합니다.
  • 문서 자산 재활용: 컨트리뷰션으로 정비되는 Markdown 가이드를 AI 연계 자산으로 직접 활용합니다.

구현 아이디어 (개략)

  1. egovframe-docs Markdown을 색인화하여 search_guide 백엔드 구성
  2. 공통컴포넌트 메타데이터 스키마(JSON) 정의 및 get_component 매핑
  3. 레이어별 표준 코드 템플릿을 파라미터화하여 scaffold_template 구현
  4. MCP 표준 사양(stdio/HTTP)에 따라 도구 인터페이스 노출, 주요 LLM IDE와 연동 검증
  5. 1차 범위는 가이드 검색 + 코드 스캐폴딩으로 한정, 이후 컴포넌트·규약 점검으로 확장

보조 제안 — AI 친화적 가이드 메타데이터 표준

egovframe-docs 각 문서 상단 front matter(YAML)에 문서 ID·레이어·대상 버전·관련 컴포넌트·키워드 메타데이터를 추가하는 규약을 제안합니다. 위 MCP 서버의 검색 정확도를 높이고, LLM이 문서의 적용 범위를 정확히 판단하도록 돕습니다.

---
id: ioc-container
layer: foundation-layer-core
version: rte-4.2
keywords: [IoC, DI, BeanFactory, ApplicationContext]
related: [ioc-container-basics, ioc-container-dependencies]
---

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions