MCP는 어떻게 동작하나?
AI 모델과 외부 도구를 표준 방식으로 연결하는 오픈 프로토콜
MCP(Model Context Protocol)는 Anthropic이 공개한 오픈 프로토콜로, AI 모델과 외부 도구·데이터 소스 간의 연결을 표준화합니다. 기존에는 AI와 DB, 파일, API 등을 연동하려면 각각 별도로 구현해야 했고(N×M 문제), MCP는 이를 하나의 표준으로 통합합니다. 아키텍처는 Host(LLM 서비스) → Client(연결 관리) → Server(외부 시스템 연결) 구조이며, Server는 Prompts(가이드라인), Resources(참조 데이터), Tools(실행 함수)를 제공하고, Client는 Roots(파일 시스템 접근)와 Sampling(AI에 도움 요청)을 제공합니다. TypeScript, Python 등 다양한 SDK가 있으며, Smithery 같은 허브에 4,000개 이상의 MCP 서버가 등록되어 있습니다.
구조 다이어그램
- Host: Claude 같은 LLM 서비스 (사용자 인터페이스)
- Client: Host 내부에서 MCP Server와의 연결을 관리
- Server: 외부 시스템(DB, 파일, API)을 AI에 노출하는 독립 프로세스
- 통신은 JSON-RPC 기반, transport는 stdio/SSE/HTTP 선택 가능
- Smithery 등 허브에 4,000+ MCP 서버 등록
동작 흐름
Host(Claude 등 LLM 서비스)가 MCP Client를 초기화
Client가 MCP Server에 연결 요청 (stdio, SSE, HTTP 등 transport)
Server가 자신이 제공하는 Tools, Resources, Prompts 목록을 Client에 전달
AI 모델이 사용자 요청을 분석하고 필요한 Tool 호출을 결정
Client가 Server의 Tool을 실행 (DB 쿼리, 파일 읽기, API 호출 등)
Server가 실행 결과를 Client에 반환 → AI 모델이 결과를 활용해 응답 생성
장점
- ✓ N×M 통합 문제 해결 (표준 프로토콜)
- ✓ 도구 개발자와 LLM 개발자가 독립적으로 개발 가능
- ✓ 오픈소스로 누구나 활용 가능
- ✓ 다양한 언어 SDK 제공 (TypeScript, Python 등)
- ✓ Tools·Resources·Prompts로 체계적 구조
단점
- ✗ 아직 초기 단계 (생태계 성장 중)
- ✗ Server 구현 및 보안 관리 필요
- ✗ 네트워크 의존 (Server 다운 시 도구 사용 불가)
- ✗ AI 모델별 MCP 지원 수준 상이