MCP 서버, 클라이언트, 호스트 등 용어들이 혼용되어 쓰여 혼란스러운 경우가 많다. 이를 위해 쉽게 정리해봤다.
기술적으로 서버(Server)와 클라이언트(Client)는 사실 각각의 컴퓨터다. 네이버에 접속한다는 것은 판교에 있는 어떤 컴퓨터(서버)가 "컨텐츠"를 웹페이지를 "서빙" 하고, 나의 컴퓨터(클라이언트)가 이 컨텐츠를 요청한다는 뜻이다.
MCP 도 마찬가지다. 파일 시스템에 접근하는 LLM 을 생각해보자. 만약 내 MCP를 통해 회사 컴퓨터의 파일시스템에 접근하는 작업을 하고 싶으면 회사 컴퓨터에 "MCP 파일 서버" 를 띄워야 한다. 그러면 LLM이 동작하는 쪽(보통 클라우드)의 컴퓨터가 MCP 클라이언트가 되어 파일을 요청하게 된다.
JSON 형태의 간단한 MCP 파일시스템 요청을 보낸다고 해보자.
{
"method": "fs/read_file",
"params": {
"path": "/home/user/test.txt"
}
}
여기서
- 이 JSON 요청을 서버로 전송하는 주체가 MCP Client,
- 요청을 받아 실제 작업을 수행하는 프로그램이 MCP Server 다.
따라서 MCP Server는 비교적 명확하다.
“내가 MCP를 통해 접근하고자 하는 도구(tool)를 실제로 실행하는 컴퓨터/프로그램” 이 MCP Server가 된다.
그리고 대부분의 경우 MCP Client는 LLM이다.
클라우드에서 동작하는 LLM이 JSON-RPC 프로토콜을 통해 MCP Server에 요청을 보내게 된다.
그렇다면 MCP 호스트는 무엇인가? MCP 호스트는 당신이 사용하는 LLM 및 MCP 를 관리하고 연결을 구성하는 앱 또는 프로그램을 말한다. 쉽게 말해, 당신이 사용하는 LLM 인터페이스 또는 에이전트 환경이 MCP Host가 된다. 예시로는 클로드 데스크탑, VSCode 등이 있을 것이다.
만약 자체적으로 MCP 를 활용하는 서비스를 개발하고 있을때, 누군가 "그래서 MCP 호스트가 뭐에요?" 라고 묻는다면
- 로컬 앱이나 웹(프론트엔드) 가 직접 LLM 요청을 보낸다면 -> 서비스 앱 자체가 MCP 호스트
- 백엔드 서버에서 LLM 을 처리하는 경우 -> 백엔드 서버가 MCP 호스트
- 크롬 등 브라우저 확장 프로그램이 LLM 을 처리하는 경우 -> 확장프로그램이 MCP 호스트
라고 답변할 수 있을것이다.
예시로 정리해보자. 만약 내가 개발 중인 Agent 앱이 ChatGPT API 를 사용하고 MCP 를 통해 Google Drive에서 파일을 가져온다면,
- MCP Host: 내가 만든 Agent 앱 (내 로컬 컴퓨터)
- MCP Client: ChatGPT LLM (OpenAI 서버)
- MCP Server: Google Drive MCP 서버 (Google 서버)
이렇게 역할이 나뉠 수 있다.
누구에겐 당연한 이야기일 수 있지만 생각보다 용어가 혼용되어 쓰이는 경우가 많아 정리해둔다.

'아티클' 카테고리의 다른 글
| 국가대표 AI 는 지금 도대체 무엇을 하고 있는가 (0) | 2025.12.21 |
|---|---|
| AI 시대, 언어 능력의 중요성 (1) | 2025.12.12 |
| 당신이 도입하는 AI Agent 는 안전한가? (1) | 2025.11.29 |
| Palantir 의 FDE 가 던지는 AI SI 업계에 시사점 (4) | 2025.11.21 |
| 누구도 그 실체를 알지 못하는 온톨로지 (0) | 2025.11.14 |