콘텐츠로 이동

1. MCP란?

LLM의 한계 — "세상과 단절된 AI"

LLM은 학습된 지식 안에서만 답변할 수 있습니다. 실시간 데이터 조회, 외부 시스템 제어, 사내 도구 연동은 별도 통합 작업 없이는 불가능합니다.

사용자: "오늘 주문 건수가 몇 건이야?"
LLM:    "죄송합니다, 실시간 데이터에 접근할 수 없습니다."

이 문제를 해결하기 위해 다양한 접근법이 등장했습니다.

기존 접근법과 한계

Function Calling / Tool Use

LLM이 함수를 호출할 수 있게 하는 방식입니다.

LLM → API 호출 → 결과 수신 → 응답 생성

한계

  • 각 LLM 제공사마다 구현 방식이 다름 (OpenAI, Anthropic, Google 등)
  • 도구를 추가할 때마다 애플리케이션 코드를 수정해야 함
  • N개의 LLM × M개의 도구 = N×M개의 통합 코드 필요

RAG (Retrieval-Augmented Generation)

외부 문서를 검색해서 컨텍스트로 제공하는 방식입니다.

한계

  • 읽기 전용 — 데이터를 조회할 수 있지만, 쓰기/실행은 불가
  • 검색 품질에 결과가 크게 좌우됨

MCP의 등장

MCP(Model Context Protocol)는 Anthropic이 2024년 11월에 발표한 오픈 프로토콜입니다.

LLM이 외부 도구와 데이터에 접근하기 위한 표준 인터페이스

USB가 다양한 기기를 하나의 포트로 연결하듯, MCP는 다양한 도구를 하나의 프로토콜로 LLM에 연결합니다.

┌─────────────────────────────────────────────────┐
│              기존 방식 (N×M 문제)                  │
│                                                   │
│  Claude ──┬── Slack 전용 코드                      │
│           ├── DB 전용 코드                         │
│           └── Jira 전용 코드                       │
│                                                   │
│  GPT ────┬── Slack 전용 코드 (또 다른 구현)          │
│          ├── DB 전용 코드 (또 다른 구현)             │
│          └── Jira 전용 코드 (또 다른 구현)           │
└─────────────────────────────────────────────────┘

               ↓  MCP 도입 후  ↓

┌─────────────────────────────────────────────────┐
│              MCP 방식 (N+M)                       │
│                                                   │
│  Claude ──┐                                       │
│           ├── MCP ──┬── Slack MCP 서버              │
│  GPT ────┘         ├── DB MCP 서버                 │
│                     └── Jira MCP 서버              │
└─────────────────────────────────────────────────┘

핵심 특징

특징 설명
표준화 어떤 LLM이든 같은 방식으로 도구를 연결
양방향 읽기뿐 아니라 쓰기, 실행도 가능
오픈 프로토콜 특정 벤더에 종속되지 않음
보안 서버가 직접 데이터에 접근 — LLM에 자격증명 노출 불필요
재사용 한 번 만든 MCP 서버를 여러 클라이언트에서 사용

비유로 이해하기

비유 MCP에서의 역할
USB 규격 MCP 프로토콜
USB 포트 (컴퓨터 쪽) MCP 클라이언트 (LLM 앱)
USB 기기 (마우스, 키보드 등) MCP 서버 (도구)
USB 드라이버 SDK (Python, TypeScript)

정리

MCP 이전:  LLM마다 도구마다 개별 통합 → 유지보수 지옥
MCP 이후:  표준 프로토콜로 한 번 만들면 어디서든 사용

다음 챕터

MCP의 아키텍처와 핵심 개념(Tools, Resources, Prompts)을 자세히 알아봅니다.

댓글