MCP(Model Context Protocol)가 뭔데?
MCP는 2024년 11월 ‘앤트로픽’이 발표한 오픈 소스 프로토콜로, AI 모델과 외부 데이터 소스 또는 도구를 연결해주는 개방형 표준 프로토콜이다. 이 프로토콜은 AI 모델이 필요한 맥락(Context)이나 정보를 외부에서 가져올 수 있도록 해주는 통로 역할을 한다.
MCP가 왜 필요한가?
기존에는 언어 모델(LLM)이 자신에게 주어진 텍스트 외에 별도의 지식이나 데이터에 접근하기 어려워, 새로운 데이터 원본마다 별도 커스텀 통합이 필요했는데, 이를 해결하고자 MCP가 만들어졌다.
MCP를 지원하는 AI 애플리케이션, 데이터 소스와도 쉽게 연결될 수 있어 보안적이고 양방향적인 데이터 연동이 가능해진다.
MCP의 구성 요소

MCP는 클라이언트-서버 아키텍처를 기반으로 하며, 다음과 같은 세 가지 핵심 구성 요소로 이루어져 있다.
-
MCP 호스트(Host)
- AI 모델을 실행하는 애플리케이션
- 여러 MCP 클라이언트 관리
- AI/LLM 통합 및 샘플링을 조정
- Claude Desktop, IDE 또는 AI 도구 등
-
MCP 클라이언트(MCP Clients)
- 호스트에 의해 생성되며 서버와의 독립적인 연결을 유지
- 서버와 1:1 연결을 유지하는 프로토콜 클라이언트
- LLM으로부터 요청을 수신하고 적절한 MCP 서버로 요청 전달
- 양방향으로 프로토콜 메시지를 라우팅
-
MCP 서버(MCP Servers)
- 특정 기능과 컨텍스트를 제공해주는 역할(LLM이 사용할 수 있는 도구와 데이터 액세스 기능을 제공)
- MCP 기본 요소를 통해 리소스, 도구 및 프롬프트를 노출
- 로컬 데이터 소스
- MCP 서버가 안전하게 액세스할 수 있는 컴퓨터의 파일, 데이터베이스 및 서비스
- 원격 서비스
- MCP 서버가 연결할 수 있는 인터넷(예: API를 통해)을 통해 사용 가능한 외부 시스템
MCP의 주요 특징
-
개방형 표준(Open Standard)
: 오픈소스로 공개되어 있어 누구나 자유롭게 사용하고 개선할 수 있고, 어떤 AI 시스템에서도 사용할 수 있다.
-
양방향 연결(Two-way Connection)
: AI 모델과 데이터 소스 간의 양방향 통신을 지원한다. AI 모델과 데이터 소스가 지속적으로 연결된 상태에서 서로 정보를 주고받을 수 있다.
-
범용성과 표준화(Universality and Standardization)
: 다양한 데이터 소스와 도구를 하나의 표준 프로토콜로 연결할 수 있다.
-
보안 및 신뢰성(Security and Reliability)
: AI 모델과 데이터 소스 간의 안전하고 신뢰할 수 있는 연결을 제공한다.
MCP의 작동 방식

- 호스트 애플리케이션이 MCP 클라이언트를 생성
- MCP 클라이언트와 MCP 서버와 연결
- 서버는 클라이언트에세 컨텍스트 정보를 제공
- 클라이언트가 정보를 호스트에게 전달
- AI 모델이 특정 작업을 수행하기 위한 도구 호출 요청
- 호스트는 요청에 적절한 클라이언트에게 전달
- 클라이언트가 서버에 요청을 전달
- 클라이언트는 서버로부터 결과를 전달받아 호스트에 전달
- 호스트는 이 결과를 AI 모델에게 제공
- AI 모델을 결과를 바탕으로 응답을 제공
MCP vs API 비교
MCP 특징
- 표준화된 프로토콜로 관리의 용이성
- 한 번의 MCP 통합으로 여러 도구 연결할 수 있어 확장성에 용이
- 양방향 통신 지원으로 지속적인 정보 공유 가능
- 오픈소스로 제공되며 지속적인 발전 가능성
- 여러 시스템들 간에 컨텍스트를 유지
- 개발자가 아닌 일반 사용자도 쉽게 이용 가능
API 특징
- 각 시스템마다 개별 통합이 필요
- 변경이 전체 시스템에 영향을 미치며, 확장이 복잡
- 단방향 통신으로 요청-응답 형식으로만 작동
- API별로 따로 유지보수 필요
- 여러 시스템들 간에 컨텍스트를 유지가 어려움
- 일반 사용자들은 사용하기 어려움
MCP 활용 분야
- AI 에이전트와 자동화 시스템
- MCP는 여러 AI 에이전트가 서로 정보를 공유하고 협력할 수 있는 환경을 제공
- 개인화된 AI 비서
- 개인 데이터를 안전하게 관리하면서 이메일, 캘린더, 스마트 디바이스 등과 상호작용
- 엔터프라이즈 데이터 통합
- 기업 내부의 데이터 소스와 AI 모델을 연결하여 효율적인 데이터 분석과 자동화를 지원
- 코드 편집기(IDE)
- IDE와 통합되어 파일 시스템, 버전 관리, 패키지 관리자와 같은 도구를 연결
<출처>