
MCP server 개발기
두줄요약
Spring AI로 사내 REST API를 MCP 도구로 노출하는 서버 구축 과정을 정리했습니다.\n프로토콜 처리는 위임하고 도구 설계·설명·인증을 핵심 과제로 제시했습니다.
문제 상황
- LLM이 사내 실시간 데이터를 조회하도록 기존 백엔드 REST API를 MCP 도구로 노출해야 하는 요구
- JSON-RPC 라우팅, 세션, Streamable HTTP, 도구 스키마를 직접 구현할 때의 높은 보일러플레이트
구조와 흐름
- UI → AI 서버 → LLM → MCP 서버 → 도메인별 백엔드 서비스 REST API 연결 구조
- 서버·장비·수집·알림 도메인별 도구 클래스와 기존 클라이언트 라이브러리 재사용
- MCP Inspector와 initialize → tools/list → tools/call 흐름을 통한 도구 검증
선택 이유
- Spring AI MCP Server의 프로토콜 처리, 세션 관리, JSON Schema 자동 생성 기능 활용
- @McpTool·@McpToolParam 기반 메서드 등록으로 낮은 도구 추가 비용
- 기존 Spring Boot·Gradle·DI 환경과의 자연스러운 통합
주의할 점
- 도구 이름과 설명의 구체성이 LLM의 도구 선택 품질에 영향
- 배열 파라미터 호출 시 JSON 배열 형식 입력 필요
- 운영 전 MCP 엔드포인트 인증 추가와 빠른 프레임워크 버전 변화 검토 필요


