MCP (Model Context Protocol)는 Anthropic이 2024년 말 공개한 AI 에이전트와 외부 도구/서비스를 연결하는 오픈 프로토콜입니다. AI 모델이 파일 시스템, 데이터베이스, API, SaaS 서비스 등에 접근할 수 있는 표준화된 인터페이스를 제공합니다. “AI를 위한 USB-C”에 비유됩니다.
1. 사용자가 AI 앱에서 질문/요청
2. AI 모델이 필요한 도구 판단 → MCP 도구 호출 결정
3. MCP 클라이언트 → MCP 서버로 요청 전송 (JSON-RPC 2.0)
4. MCP 서버가 외부 서비스 호출 → 결과 반환
5. AI 모델이 결과를 바탕으로 답변 생성
통신 프로토콜
전송: stdio (로컬) 또는 SSE/HTTP (원격)
메시지: JSON-RPC 2.0
인증: OAuth 2.0 (원격 서버)
MCP vs 기존 방식
항목
Function Calling (기존)
MCP
표준
벤더별 다름 (OpenAI, Anthropic 각자)
통일 표준
도구 배포
앱마다 개별 구현
한 번 만들면 어디서든 사용
발견
하드코딩
동적 발견 (서버가 도구 목록 제공)
생태계
파편화
공유 생태계
직접 만들기
MCP 서버 (Python)
from mcp.server import Serverfrom mcp.types import Toolserver = Server("my-server")@server.tool()async def get_weather(city: str) -> str: """도시의 현재 날씨를 조회합니다.""" # API 호출 로직 return f"{city}: 맑음, 22°C"server.run()
MCP 서버 (TypeScript)
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";const server = new McpServer({ name: "my-server" });server.tool("get_weather", { city: z.string() }, async ({ city }) => ({ content: [{ type: "text", text: `${city}: 맑음, 22°C` }]}));
2026 현황
사실상 표준: Anthropic, Google, Microsoft, OpenAI 모두 지원/채택