AI를 활용해 똑똑한 어시스턴트를 만들고 싶은데, 어디서부터 어떻게 시작해야 할지 막막한가요?
GPT 모델 하나로는 한계가 느껴지지만, 다양한 툴과 데이터를 연결하려니 시스템이 너무 복잡해지나요?
이번 블로그에서는 바로 그런 고민을 해결해 줄 **LangGraph와 MCP(Model Context Protocol)**의 결합을 소개합니다.
단순한 챗봇을 넘어서, 멀티 에이전트 기반의 범용 AI 어시스턴트를 어떻게 만들 수 있는지 구조부터 설치, 구현 예시까지 전부 다룹니다.
LangGraph란?
LangGraph는 LLM을 기반으로 한 워크플로우를 그래프 형태로 설계하고 실행할 수 있게 해주는 프레임워크입니다.
모듈식 구조로 되어 있어, 각 노드는 특정 작업이나 도구, 혹은 모델 호출을 담당하고, 엣지(Edge)는 그 흐름을 제어합니다.
쉽게 말해, 복잡한 언어 기반 작업을 순서도처럼 시각화하고 연결할 수 있는 구조를 제공합니다.
LangChain과 유사하지만 더 직관적이고 유연한 구조 설계가 가능해, 자연어 처리 기반의 자동화 시스템에 매우 적합합니다.
MCP(Model Context Protocol)란?
MCP는 LLM이 외부 도구나 데이터에 쉽게 접근할 수 있도록 만들어주는 통합 프로토콜입니다.
USB-C가 어떤 기기든 연결해주는 표준 포트인 것처럼, MCP는 다양한 외부 리소스를 연결하는 역할을 합니다.
예를 들어, GPT가 검색 기능, 데이터베이스, 코드 실행기 등 다양한 기능을 쓰게 하고 싶을 때,
각 기능을 일일이 연동할 필요 없이 MCP 서버에 정의된 툴만 등록하면 됩니다.
왜 LangGraph와 MCP를 함께 써야 할까?
LangGraph는 구조화된 워크플로우 설계를 도와주고, MCP는 필요한 외부 도구 연결을 가능하게 합니다.
이 둘을 결합하면 다양한 기능을 가진 AI 어시스턴트를 단일 그래프 안에서 손쉽게 구성할 수 있습니다.
예시 흐름
- 사용자 메시지 수신
- LangGraph의 에이전트 노드가 적절한 MCP 도구를 선택
- 선택된 MCP 서버의 툴 실행
- 결과 반환 및 대화 흐름 제어
복잡한 멀티에이전트 설계가 단 두 개의 MCP 노드로 끝납니다: 하나는 라우팅용, 하나는 툴 실행용.
설치 및 개발 환경 구성
아래와 같이 간단한 명령어들로 개발 환경을 구성할 수 있습니다.
git clone https://github.com/esxr/langgraph-mcp.git
cd langgraph-mcp
python3 -m venv .venv
source .venv/bin/activate
pip install -U "langgraph-cli[inmem]"
pip install -e .
cp env.example .env
.env 파일에는 OPENAI_API_KEY, GITHUB_PERSONAL_ACCESS_TOKEN 등을 입력해 설정을 완료합니다.
Milvus Lite를 활용한 벡터 검색 기능도 기본 지원됩니다.
구조별 기능 설명

1. 라우터(Router)
build_router_graph.py에서 구현된 이 라우터는
각 MCP 서버에서 사용할 수 있는 툴/프롬프트/리소스를 수집하고 벡터 데이터베이스에 인덱싱합니다.
사용자의 요청이 들어오면, 어떤 서버의 어떤 툴을 쓸지 빠르게 판단할 수 있게 해주는 핵심 역할을 합니다.

2. 어시스턴트(Assistant)
assistant_graph.py에 구현되어 있으며, 실제 대화 흐름을 처리합니다.
- 사용자 메시지를 분석해 적절한 MCP 에이전트를 선택하고
- 해당 MCP 서버에 툴 실행 요청을 보내며
- 결과를 받아 사용자에게 응답합니다
이때 사용하는 구조는 LangGraph 기반의 멀티노드 그래프입니다.

3. MCP Wrapper
mcp_wrapper.py는 다양한 MCP 작업을 쉽게 실행할 수 있게 해주는 전략 패턴 기반의 래퍼 구조입니다.
주요 클래스 및 역할
- MCPSessionFunction: 공통 인터페이스
- RoutingDescription: 툴 정보 수집
- GetTools: 서버 툴 정보 가져오기
- RunTool: MCP 도구 실행
- apply: 위 작업들을 공통 실행 함수로 래핑
새로운 기능이 필요할 땐 MCPSessionFunction만 상속해서 구현하면 끝.
코어 로직 수정 없이 확장 가능한 구조입니다.
기술적 특징 요약
항목 설명
🎯 유연성 | 다양한 외부 툴과 자연스럽게 연동 가능 |
🧩 구조화 | 워크플로우를 시각적 그래프 형태로 설계 |
🧠 스마트 라우팅 | 사용자 요청에 따라 도구 자동 선택 |
🔌 확장성 | 새로운 기능이나 도구 쉽게 추가 가능 |
⚙️ 간단한 설정 | 몇 줄 코드로 실행 환경 구축 가능 |
지금 왜 이 기술을 주목해야 할까?
GPT 모델만으로는 할 수 없는 것들이 많아졌습니다.
검색, 실행, 분석, 저장 등 다양한 외부 기능과 연결된 AI 중심 자동화 시스템이 필요해진 지금,
LangGraph + MCP는 복잡한 구조 없이도 그 해답을 제시해줍니다.
단일 모델에서 벗어나, 다중 에이전트 기반의 똑똑한 어시스턴트를 만들고 싶다면
이 구조는 최고의 출발점이 될 것입니다.
“코드 몇 줄이면, 당신만의 AI 비서를 만들 수 있습니다.”
https://github.com/esxr/langgraph-mcp
GitHub - esxr/langgraph-mcp: LangGraph solution template for MCP
LangGraph solution template for MCP. Contribute to esxr/langgraph-mcp development by creating an account on GitHub.
github.com

'인공지능' 카테고리의 다른 글
웹 크롤링이 이렇게 쉬워졌다고? Firecrawl MCP Server의 모든 것 (0) | 2025.04.09 |
---|---|
LangChain + MCP 연동법: 복잡한 툴 연결, 이젠 예제로 쉽게 끝내자! (0) | 2025.04.08 |
AI도 자기를 인식한다? — KnowSelf가 보여주는 새로운 에이전트 학습의 방향 (0) | 2025.04.08 |
AI는 왜 거짓말을 할까?❞ – 언어 모델 진실성 벤치마크 'TruthfulQA'로 알아보는 AI의 진짜 실력 (0) | 2025.04.08 |
“슈퍼 에이전트의 시대: Genspark가 열어가는 범용 AI 에이전트의 미래” (0) | 2025.04.08 |