요즘 GPT 같은 LLM을 SaaS나 비즈니스 시스템에 도입할 때 자주 등장하는 개념 중 하나가 **MCP(Model Context Protocol)**이다.
이번 글에서는 MCP가 어떤 개념인지, 실제 개발에선 어떻게 적용되는지를 정리해봤다.

MCP란 무엇인가?

Model Context Protocol은 이름 그대로 "모델(LLM)에게 전달할 컨텍스트를 구성하는 프로토콜 또는 구조화된 방식"을 뜻한다.

기존 GPT 같은 LLM은 프롬프트 기반으로 동작하지만, 실무에서는 단순한 질문이 아니라 다양한 배경 정보(컨텍스트)를 기반으로 응답해야 할 일이 많다.
MCP는 이 때 필요한 정보를 수집하고 구성한 뒤, 모델에 전달해 일관되고 정확한 응답을 이끌어내는 아키텍처적 접근이다.

쉽게 말하면

  • 사용자 입력을 받아
  • 필요한 데이터를 내부 API나 DB 등에서 가져오고
  • 이 데이터를 포함한 컨텍스트를 구성한 후
  • LLM에 전달해서 응답을 받는 구조

이 흐름 전체를 체계화한 것이 MCP라고 할 수 있다.

MCP 서버란?

MCP의 개념을 실제 구현한 백엔드 서버를 흔히 MCP 서버라고 부른다.
예를 들어 다음과 같은 기능을 하는 백엔드 서버가 있다면, 이것은 MCP 서버라고 할 수 있다.

  1. 사용자의 질의를 수신한다
  2. 질의와 관련된 데이터를 DB나 내부 API에서 가져온다
  3. 질의 내용과 수집한 데이터를 하나의 프롬프트로 구성한다
  4. 이 프롬프트를 LLM에 전달하고, 응답을 받아온다
  5. 응답을 가공하여 사용자에게 전달한다

이와 같은 역할을 하는 서버는 단순 API 서버가 아니라 "컨텍스트 수집 및 전달"이라는 책임을 수행하기 때문에 MCP 서버라고 불린다.

SaaS 프로젝트에 AI 기능을 붙일 때, MCP는 어떻게 활용되는가?

SaaS에 AI 기능을 붙이는 경우, 사용자의 질의에 따라 내부 데이터를 가져오고 이를 기반으로 AI 응답을 생성하는 흐름이 자주 필요하다.

예를 들어 다음과 같은 시나리오를 생각해보자.

  1. 사용자가 "이번 달 매출 알려줘"라고 질의
  2. 서버는 사용자 ID, 권한 등을 바탕으로 관련 데이터를 내부 API에서 수집
  3. 수집한 데이터와 사용자의 질문을 함께 LLM에 전달
  4. 자연어 기반의 해석된 결과를 반환

이 구조에서 SaaS의 API 서버가 MCP 역할을 수행하게 되며, 이 경우 해당 API 서버를 "MCP 서버"로 정의할 수 있다.

즉, LLM을 단순히 호출하는 것을 넘어서, 입력된 질문을 바탕으로 적절한 컨텍스트를 조립하여 LLM이 최적의 응답을 하도록 만드는 서버가 바로 MCP 서버다.

LangChain으로 만드는 MCP 서버

LangChain은 MCP 구조를 빠르게 구성하는 데 매우 유용한 파이썬 라이브러리다.
RAG 구조나 Function Calling 등을 활용해 사용자의 요청을 처리하는 데 적합하며, 다음과 같은 구성이 가능하다.

  • 사용자 질의 수신 (FastAPI)
  • DB 검색 or 문서 검색 (Retriever)
  • 프롬프트 구성 (PromptTemplate or LangChain Chain)
  • LLM 호출 (OpenAI, HuggingFace 등)
  • 응답 정리 후 반환

이 모든 흐름을 LangChain을 통해 서버화하면, 이것은 곧 MCP 서버가 된다.

정리

MCP는 단순한 기술 요소라기보다는, LLM과 실제 시스템을 연결하는 데 필요한 "중간 계층"의 아키텍처적 사고방식이다.
SaaS를 포함한 다양한 서비스에 AI를 도입하고자 할 때, 이 MCP 구조를 어떻게 설계하고 구성하느냐에 따라 성능과 확장성에 큰 차이가 생긴다.

따라서 AI 기능을 SaaS에 도입할 계획이 있다면, 단순히 GPT API를 호출하는 수준이 아니라, 컨텍스트 수집 → 프롬프트 조립 → LLM 호출 → 응답 처리까지 포함하는 구조를 고려해야 하며, 그 전체를 하나의 패턴으로 정의한 것이 바로 MCP라고 이해하면 된다.

+ Recent posts