Model Context Protocol(MCP)는 그래서 무엇인가요?
MCP 소개
출시 배경
•
2024년 11월 Anthropic에서 출시 (7개월 전)
•
처음에는 내부용으로 만들었으나 너무 좋아서 공개
•
AI 에이전트 개발에서 가장 인기 있는 기술
MCP 용어 분석
Protocol (프로토콜)
•
통신 계약서
•
웹 개발의 HTTP 통신과 유사
•
HTTP = Hypertext Transfer Protocol (웹 통신 계약)
•
MCP = 모델과 컨텍스트 간의 통신 계약
Model (모델)
•
LLM 모델을 의미
•
GPT, Anthropic의 Claude, Gemini 등
•
한국의 Upstage Solar 모델 등 포함
Context (컨텍스트)
•
LLM에 원하는 결과를 얻기 위해 잘 전달해야 하는 정보
•
MCP를 통해 프롬프트와 툴 관리 가능
•
한국어로는 "AI에게 컨텍스트를 전달하는 프로토콜"
MCP의 장점
프로토콜의 범용성
•
HTTP 통신처럼 서버 언어(Java, Python, Node)에 관계없이 통신 가능
•
다양한 모델 지원 가능
USB-C 포트 비유
•
공식 문서에서 "AI 애플리케이션을 위한 USB-C 포트"로 표현
•
어댑터를 통해 모든 MCP 서버와 모든 MCP 클라이언트 연결 가능
MCP 서버 및 클라이언트
MCP 서버 예시
•
Slack, Google Gmail, Google Calendar
•
자동화 도구: Notion, GitHub, Jira
MCP 클라이언트 예시
•
n8n, LangGraph, Cursor, Claude Desktop, GPT 등
어댑터 방식
•
JSON과 유사한 개념
•
서버와 클라이언트 구현 방식에 관계없이 통신 가능
언어 지원 및 SDK
다양한 언어 지원
•
공식 문서에서 다양한 언어 지원
•
어떤 언어로 개발해도 어댑터를 통해 에이전트와 연결 가능
TypeScript 중심
•
대부분의 문서가 Node.js 기반
•
TypeScript SDK가 주로 사용됨
•
Claude에 코드 예시 요청 시 JavaScript가 기본값
공식 MCP 서버 예시
Anthropic 제공
•
Slack MCP 서버
•
Model Context Protocol이 제공자로 표시
기업별 MCP 서버
•
Atlassian: Jira, Confluence MCP
•
Notion: Notion MCP (기존 API보다 편리)
◦
기존: rich text, text, select 등 프로퍼티 값을 개별 처리 필요
◦
MCP: 자동으로 처리
•
GitHub: 공식 MCP 제공
◦
자체 서버 보유
◦
액세스 토큰으로 서버 접근
◦
인프라 관리 불필요
통신 방식
STDIO 방식
•
로컬 환경 사용
•
직접 작성한 Python이나 JS 파일 읽기
•
Docker로 서버를 로컬에서 실행
HTTP 통신 방식
•
과거: Server-Sent Events(SSE) 지원 후 deprecated
•
2개월 전까지는 SSE가 주요 방식
•
현재: Streamable HTTP가 기본값
•
빠른 개발 속도로 언제 변경될지 불확실
다음 단계
•
MCP를 활용한 에이전트 구현으로 이동