Model Context Protocol (MCP)는 거대 언어 모델(LLM)을 측정 가능하고 안전한 루프 내에서 외부 도구를 호출할 수 있는 에이전트로 전환하기 위한 구체적인 표준으로 출시되었습니다. MCP를 인식하는 호스트와 MCP 서버 사이에 공유된 "플러그"를 정의함으로써, 이 프로토콜은 개발자가 임시방편적인(ad-hoc) 코드 대신 예측 가능하고 감사 가능한 워크플로우를 사용할 수 있게 해줍니다.
LLM에 프로토콜이 필요한 이유
LLM은 학습 데이터로부터 텍스트의 다음 토큰을 예측할 뿐입니다. 추가적인 로직 없이는 최신 정보를 가져오거나, 데이터베이스에 쓰거나, 외부 API를 트리거할 수 없습니다. 개발자들은 모델을 루프 안에 가두는 "에이전트"를 구축해 왔습니다. 모델이 도구를 요청하면, 도구가 실행되고, 그 결과가 다시 모델에 전달되며, 모델은 계속 진행할지 아니면 사용자에게 답변할지를 결정하는 방식입니다.
이 루프는 작동하지만, 공통된 규칙 세트가 없다면 제어 불가능한 프로세스가 생성되거나 시스템이 의도하지 않은 호출에 노출되기 쉽습니다. 새로운 도구가 필요할 때마다 커스텀 통합 작업을 수행해야 했으므로, 프로젝트 전반에 걸쳐 토큰 사용량, 예산 제한 또는 보안 정책을 추적하기가 어려웠습니다.
MCP는 루프의 구조와 그 루프를 통해 전달되어야 하는 데이터를 규격화함으로써 이러한 간극을 메웁니다.
MCP 에이전트의 두 가지 구성 요소
MCP는 에이전트를 정의(definition) — 에이전트가 무엇을 할 수 있는지 설명하는 템플릿 — 와 인스턴스(instance) — 사용자 요청의 구체적인 실행 — 로 분리합니다.
에이전트 정의 (템플릿)
- 호스트 루프(Host loop) – '요청-도구 사용-읽기-결정' 사이클을 구동하는 오케스트레이터.
- 시스템 컨텍스트(System context) – 모델의 행동을 형성하는 페르소나 및 상위 수준의 지침.
- MCP 서버 세트(MCP server set) – 호스트가 호출할 수 있는 사용 가능한 도구 소스의 카탈로그.
- 도구 정책(Tool policy) – 특정 에이전트에게 허용된 도구의 명시적 목록.
- LLM 선택(LLM selection) – 텍스트 추론을 생성할 특정 모델.
- 종료 제한(Termination limits) – 무한 루프를 방지하기 위한 최대 반복 횟수 및 토큰 예산.
- 작업 계약(Task contract) – 에이전트가 수용하는 입력값과 반환하는 출력 형식에 대한 공식적인 설명.
- 컨텍스트 전략(Context strategy) – 토큰 제한 내에 머물기 위해 대화 기록을 자르거나 요약하는 규칙.
에이전트 인스턴스 (실행 중인 작업)
- 목표(Goal) – 루프를 시작하는 사용자의 요청.
- 작업 컨텍스트(Working context) – 이전 도구 결과 등을 포함하여 축적된 기록.
- 자격 증명(Credentials) – 선택된 도구를 호출하는 데 필요한 토큰 또는 권한 세트.
- 소비된 예산(Consumed budget) – 지금까지 사용된 토큰과 수행된 단계의 합계.
이러한 요소들은 에이전트가 무엇을 할 수 있는지와 현재 무엇을 하고 있는지를 모두 보여줍니다.
MCP가 개발 흐름을 바꾸는 방식
MCP 이전에는 LLM이 날씨 API를 조회하고, 데이터베이스에서 행을 가져온 다음, 보고서를 작성하게 하려는 개발자가 각 엔드포인트마다 맞춤형 글루 코드(glue code)를 작성해야 했습니다. 이러한 코드는 종종 모델의 프롬프트 내부에 도구 호출을 숨겨버려, 어떤 요청이 어떤 응답을 트리거했는지 확인하는 것을 불가능하게 만들었습니다.
MCP를 사용하면 호스트가 모델에 대화를 보내고, 모델이 생성한 도구 요청을 검사하고, 직접 도구를 실행한 다음, 그 결과를 다시 모델에 전달합니다. 추가되는 코드는 최소화되지만 가시성은 완벽해집니다. 모든 왕복 과정과 모든 토큰이 기록됩니다.
이러한 가시성은 두 가지 실질적인 이점을 제공합니다.
- 비용 측정 – 개발자는 동일한 작업에 대해 더 저렴한 모델과 더 큰 모델을 비교하여, 각 반복 단계에서 정확히 얼마나 많은 토큰이 소비되는지 확인할 수 있습니다.
- 보안 감사 – 도구 정책 및 자격 증명 확인이 모델 외부에서 이루어지므로, 모델이 승인되지 않은 서비스를 몰래 호출하는 것을 방지할 수 있습니다.
아직 정의되지 않은 것
MCP는 대화의 형태와 함께 전달되는 메타데이터를 규정하지만, 도구가 내부적으로 어떻게 구현되는지는 규정하지 않습니다.
다음에 주목할 점
- 메트릭 제품군(Metric suites) – 이 시리즈의 다음 기사에서는 개발자가 추적해야 할 수치(토큰 소비량, 반복 횟수, 도구당 지연 시간)의 체크리스트를 약속합니다. 이러한 메트릭은 모든 MCP 기반 에이전트의 사실상의 상태 점검(health check) 기준이 될 것입니다.
핵심 요약
Model Context Protocol은 LLM 에이전트에게 에이전트가 할 수 있는 일과 특정 순간에 수행하고 있는 일을 분리하는, 공유 가능하고 감사 가능한 구조를 제공합니다. 불투명했던 도구 호출을 투명한 루프로 전환함으로써, MCP는 이러한 측정을 가능하게 만듭니다.
