MCP는 Model Context Protocol(모델 컨텍스트 프로토콜)의 약자로, AI 모델(LLM)과 외부 시스템(도구, 데이터 소스, 서비스)을 연결하는 개방형 표준 프로토콜입니다.
핵심 개념
| 항목 |
설명 |
| 개발사 |
Anthropic (2024년 11월 25일 오픈소스 공개) |
| 별칭 |
"AI의 USB-C" — 하나의 표준으로 다양한 연결을 가능하게 함 |
| 현재 상태 |
OpenAI, Google, Microsoft 등 업계 전반이 채택한 사실상 표준 |
| 거버넌스 |
2025년 12월 Linux Foundation AAIF에 기부, 커뮤니티 주도로 전환 |
왜 MCP가 필요한가? (M×N 문제)
MCP 이전에는 N개의 AI 모델과 M개의 외부 도구를 연결할 때 N × M개의 개별 통합 코드가 필요했습니다.
MCP 이전: N × M 통합
Claude → GitHub 전용, ChatGPT → GitHub 전용, Gemini → GitHub 전용 (각각 별도 구현)
MCP 이후: N + M 통합
GitHub MCP 서버 한 번 구현 → Claude, ChatGPT, Gemini 모두에서 사용 가능
아키텍처: 3계층 구조
┌─────────────────────────────────────────────┐
│ Host (AI 애플리케이션) │
│ (Claude Desktop, VS Code, Cursor 등) │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Client 1 │ │ Client 2 │ │ Client 3 │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
└───────┼─────────────┼─────────────┼─────────┘
│ │ │
┌────▼─────┐ ┌────▼─────┐ ┌───▼──────┐
│ Server 1 │ │ Server 2 │ │ Server 3 │
│ (GitHub) │ │ (Slack) │ │ (DB) │
└──────────┘ └──────────┘ └──────────┘
| 구성요소 |
역할 |
| Host |
사용자가 상호작용하는 AI 애플리케이션 (Claude Desktop, VS Code 등) |
| Client |
Host 내부에서 특정 Server와 1:1 연결을 담당 |
| Server |
외부 시스템의 기능을 MCP 표준으로 노출하는 독립 프로세스 |
3가지 핵심 기능
| 기능 |
제어 주체 |
설명 |
예시 |
| Tools (도구) |
LLM이 자동 선택 |
실행 가능한 함수 |
API 호출, 파일 쓰기, DB 쿼리 |
| Resources (리소스) |
앱/사용자 선택 |
읽기 전용 데이터 |
파일 내용, DB 스키마 |
| Prompts (프롬프트) |
사용자 선택 |
재사용 가능한 템플릿 |
코드 리뷰, 날씨 브리핑 |
통신 방식
- JSON-RPC 2.0 기반 메시지 포맷
- 전송 방식:
- stdio: 로컬 프로세스 간 통신 (빠르고 간단)
- Streamable HTTP: 원격 서버 통신 (클라우드 배포, OAuth 인증 지원)
주요 채택 현황
| 시점 |
이벤트 |
| 2024.11 |
Anthropic이 MCP 오픈소스 공개 |
| 2025.03 |
OpenAI가 Agents SDK에 MCP 채택 발표 |
| 2025.04 |
Google DeepMind가 ADK에 MCP 지원 발표 |
| 2025.12 |
Linux Foundation AAIF에 기부 |
| 2026.03 |
월간 SDK 다운로드 9,700만 돌파 |
요약
MCP는 AI 에이전트가 외부 도구와 소통하는 방식을 표준화한 프로토콜입니다. USB-C가 다양한 기기의 충전/데이터 케이블을 통일했듯, MCP는 AI 모델이 GitHub, Slack, 데이터베이스, 파일 시스템 등 다양한 외부 시스템과 연결되는 방식을 하나로 통일합니다. 현재 Claude, ChatGPT, Gemini 등 주요 AI 플랫폼이 모두 지원하는 업계 표준으로 자리잡았습니다.