[LLM] MCP: Model Context Protocol

가을·2025년 6월 16일

MCP(Model Context Protocol)이란 LLM 모델이 외부 데이터와 도구에 접속할 수 있게 해주는 표준 프로토콜로, LLM에게 Context를 제공하는 방법을 표준화해 LLM 위에 agent나 복잡한 워크플로우 등을 올릴 수 있도록 해줍니다.

MCP 아키텍처

MCP 아키텍처는 Host, Client, Server로 이루어져 있습니다.

Host : 사용자 인터페이스 어플리케이션(EX. Claude Desktop, Cursor AI)으로 사용자와 상호작용하고 LLM을 관리
Client : Host 내부에 존재하는 통신 컴포넌트로 MCP Server와의 연결 및 통신 처리 담당
Server : 외부 시스템 기능을 MCP 프로토콜로 노출하는 독립 서비스로 다양한 시스템에 접근 제공

MCP는 SSE(Server-Sent-Event), STDIO(Standard Input/Output) 두 가지 연동 방식을 지원합니다.

SSE(Server-Sent-Event) : HTTP 기반의 스트리밍 프로토콜로 서버가 실시간으로 Client에게 데이터를 푸시 가능
→ 원격/웹 환경에서 실시간 스트리밍이 필요한 경우 사용

STDIO(Standard Input/Output) : MCP 서버와 Client가 같은 머신 또는 컨테이너 안에서 표준 입출력 스트림을 통해 직접 통신
→ 로컬/CLI/개발 환경에서 빠른 통합이 필요한 경우 사용

MCP의 동작 방식은 다음과 같습니다.

초기화 및 연결
: Host 어플리케이션이 MCP 클라이언트에게 초기화 요청 → MCP 클라이언트는 Server와 연결을 설정
지원 기능 탐색
: 클라이언트가 Server에서 제공하는 도구와 리소스 목록 조회 → Host를 통해 사용자에게 사용 가능한 기능 소개
사용자 입력 처리
: 사용자의 질문이 Host를 통해 LLM에 전달 → LLM은 필요한 도구를 선택해 Host로 전달
도구 호출
: MCP 클라이언트가 Server에 도구 호출 요청 → 도구 실행 결과를 수신
응답 생성
: MCP 클라이언트는 Host에 결과를 전달 → Host는 LLM을 통해 최종 답변을 생성하고 사용자에게 전달

0개의 댓글