개발/용어 사전

MCP란? AI가 외부 도구를 호출하게 하는 프로토콜

cedis 2026. 6. 12. 02:10
AI 응용 기술 용어 정리

MCP는 AI 애플리케이션과 외부 시스템을 연결하기 위한 표준 프로토콜입니다.

핵심 요약

MCP는 Model Context Protocol의 줄임말입니다. LLM이 로컬 파일, 데이터베이스, 외부 API, 업무 도구와 연결될 수 있게 하는 공통 연결 방식으로 이해하면 됩니다.

  • MCP
  • MCP Server
  • JSON-RPC
  • Tool Calling
  • 외부 API 연동

1. 한 줄로 정의하면

MCP는 AI 애플리케이션이 외부 데이터와 도구를 일관된 방식으로 사용할 수 있도록 만든 open standard입니다.

MCP Client
AI 애플리케이션 쪽에서 MCP Server와 통신하는 주체입니다.
MCP Server
외부 데이터나 도구를 MCP 방식으로 노출하는 서버입니다.
Tool
모델이 호출할 수 있는 기능 단위입니다.
JSON-RPC
요청과 응답을 JSON 메시지로 주고받는 RPC 형식입니다.

2. 왜 이 개념이 필요했나

LLM은 텍스트를 생성할 수 있지만, 실제 시스템의 최신 데이터를 마음대로 조회하거나 외부 API를 직접 실행할 수는 없습니다.

MCP는 이 연결 방식을 표준화하려는 시도입니다. 공식 MCP 문서에서는 AI 애플리케이션을 외부 시스템에 연결하는 open-source standard라고 설명합니다.

지식베이스형 서비스에서는 날씨 API, GitHub, DB 조회, 파일 분석 같은 기능을 MCP Server로 노출하고, AI가 필요한 도구를 호출하게 만들 수 있습니다.

3. 동작 흐름

1
도구 정의
예: get_weather_briefing이라는 tool을 MCP Server에 정의합니다.
2
AI 요청
사용자가 '오늘 날씨 기준으로 출근 글 써줘'라고 요청합니다.
3
도구 호출
AI가 날씨 tool 호출이 필요하다고 판단합니다.
4
결과 반영
도구 결과를 받아 콘텐츠 작성안이나 브리핑을 생성합니다.

4. 구조를 그림처럼 보면

순서 흐름
1
AI 애플리케이션(MCP Client)
2
MCP Server에 tools/list 요청
3
사용 가능한 tool schema 확인
4
필요한 tool 호출
get_weather_briefing
5
MCP Server가 외부 API 호출 후 결과 반환
6
AI 애플리케이션이 결과를 답변에 반영

5. 서비스 예시로 이해하면

지식베이스형 서비스에서 MCP는 외부 서비스 연동 영역을 맡기 좋습니다. 예를 들어 기상청 API를 직접 호출하는 weather briefing 기능을 MCP tool로 만들 수 있습니다.

이렇게 하면 LLM 프롬프트 안에 API 호출 코드를 섞지 않고, 외부 시스템 접근을 별도의 서버와 권한 관리로 분리할 수 있습니다.

MCP Server tools:
- get_weather_briefing(location, date)
- search_board_posts(keyword)
- summarize_uploaded_file(file_id)

AI는 필요한 tool을 선택해 호출하고 결과를 답변에 사용

6. 헷갈리기 쉬운 비교

개념역할서비스 예시
Function Calling 모델이 앱의 함수를 호출하도록 요청 날씨 조회 함수 호출
MCP 외부 도구 연결 방식을 표준화 날씨, DB, 파일 분석 서버 연결
Agent 목표를 위해 도구 선택과 실행 루프를 관리 읽지 않은 콘텐츠 추천 작업 수행

7. 실무에서 조심할 점

  • MCP는 AI가 모든 것을 알아서 안전하게 한다는 뜻이 아닙니다. 권한과 API Key 관리는 별도로 필요합니다.
  • 도구가 너무 많으면 어떤 도구를 써야 할지 모델이 헷갈릴 수 있습니다.
  • 외부 API 실패, timeout, rate limit 처리도 MCP Server 쪽에서 설계해야 합니다.

8. 구현할 때 먼저 볼 코드 책임

MCP는 '모델이 외부 API를 직접 호출한다'는 뜻이 아닙니다. 외부 시스템 접근은 MCP Server가 맡고, AI 애플리케이션은 정해진 protocol로 tool을 호출합니다.

따라서 구현 글에서는 tool 이름, input schema, 권한, timeout, 실패 응답 형식을 먼저 정리해야 합니다.

WeatherMcpServer
  tools:
    - get_weather_briefing(location, date)

Tool 실행 책임
  - API Key는 server 환경변수에서 읽기
  - 외부 API timeout 설정
  - 실패 시 JSON-RPC error로 변환
  - 민감한 내부 오류는 사용자에게 노출하지 않기

이번 글에서 기억할 것

  • MCP는 AI 애플리케이션과 외부 시스템을 연결하는 프로토콜입니다.
  • MCP Server는 도구와 데이터를 모델이 사용할 수 있는 형태로 노출합니다.
  • MCP는 Agent와 같지 않습니다. Agent는 MCP 같은 도구를 사용할 수 있는 실행 주체에 가깝습니다.

스스로 점검

  • MCP Server가 왜 필요한지 설명할 수 있는가?
  • Function Calling과 MCP의 차이를 대략 말할 수 있는가?
  • 콘텐츠 서비스에서 MCP tool로 만들 만한 기능을 하나 떠올릴 수 있는가?

참고한 공식 문서