Anthropic은 2024년 11월 25일, 데이터가 있는 시스템과 AI 어시스턴트를 연결하기 위한 개방형 표준으로 Model Context Protocol을 발표했습니다. MCP는 애플리케이션이 언어 모델에 도구, 리소스, 프롬프트를 제공하는 방식을 표준화합니다. 모델과 도구의 조합마다 맞춤형 연결 코드를 만드는 대신, 서버가 MCP를 한 번만 구현하면 MCP를 지원하는 모든 클라이언트가 이를 사용할 수 있습니다. 공식 문서에서는 이를 AI 애플리케이션을 위한 "USB-C 포트"에 비유합니다.
2025년 12월, Anthropic은 MCP를 새로 설립된 Agentic AI Foundation에 기증했습니다. 이 재단은 Anthropic, Block, OpenAI가 공동 설립한 Linux Foundation 산하의 지정 기금(directed fund)으로, 이를 통해 프로토콜은 특정 벤더에 종속되지 않는 거버넌스를 갖추게 되었습니다. 일상적인 개발은 기존 메인테이너들이 계속 맡고 있습니다. 어시스턴트가 점점 에이전트화되면서 MCP의 중요성도 커지고 있습니다. 공통 프로토콜이 있으면 커넥터를 조합할 수 있고 여러 벤더 간에 이식할 수도 있기 때문입니다.
MCP란 무엇이며 어떻게 작동하나요?
MCP는 세 가지 역할로 구성된 클라이언트–서버 아키텍처를 사용합니다.
| 역할 | 설명 | 예시 |
|---|---|---|
| 호스트 | 사용자가 작업하는 AI 애플리케이션 | 채팅 앱, Visual Studio Code 같은 IDE, 또는 에이전트 |
| 클라이언트 | 호스트 내부의 커넥터. 서버마다 하나씩 존재 | VS Code가 사용하는 각 서버에 대해 여는 연결 |
| 서버 | 시스템을 모델에 노출하는 프로그램 | 파일 시스템, 데이터베이스, 캘린더 또는 코드 저장소 서버 |
서버는 세 가지 핵심 프리미티브를 제공합니다. 모델이 작업을 수행하기 위해 호출할 수 있는 도구(tools), 파일 내용이나 레코드 같은 컨텍스트를 제공하는 리소스(resources), 그리고 자주 쓰는 상호작용을 위한 재사용 가능한 템플릿인 프롬프트(prompts)입니다. 메시지는 JSON-RPC 2.0 형식으로 주고받으며, 로컬에서는 표준 입출력(stdio)을, 원격에서는 Streamable HTTP를 사용합니다. 원격 연결에서는 OAuth로 접근 권한을 부여하는 방식이 권장됩니다.
Model Context Protocol이 중요한 이유
MCP 이전에는 어시스턴트마다 데이터 소스별로 일회성 통합을 따로 만들어야 했습니다. 공통 프로토콜이 생기면서 한 번 작성한 커넥터를 호환되는 모든 클라이언트에서 사용할 수 있게 되었습니다. MCP 문서에는 이를 지원하는 애플리케이션으로 Claude, ChatGPT, Visual Studio Code, Cursor 등이 나와 있습니다. MCP는 도구 사용 / 함수 호출과 같은 아이디어를 바탕으로 하되, 이를 여러 벤더에 걸쳐 표준화한 것입니다.