Now Loading ...
-
MCP 란
MCP 란
Model Context Protocol (MCP)는 LLM(대형 언어 모델)과의 상호작용을 위한 프로토콜입니다. MCP는 LLM이 특정 작업을 수행하기 위해 필요한 컨텍스트를 제공하는 데 중점을 둡니다. 이 프로토콜은 LLM이 더 나은 응답을 생성할 수 있도록 돕기 위해 설계되었습니다.
MCP는 LLM이 작업을 수행하는 데 필요한 정보를 명확하게 전달하고, LLM이 해당 정보를 기반으로 최적의 응답을 생성할 수 있도록 지원합니다. 이를 통해 LLM의 성능을 향상시키고, 사용자와의 상호작용을 보다 효율적으로 만들 수 있습니다.
LLM vs LLM Agent
정의
LLM
LLM Agent
주요 역할
대형 언어 모델 (예: GPT-3, GPT-4)
LLM을 활용한 에이전트 (예: AutoGPT, BabyAGI)
Tool 사용
자연어 처리, 텍스트 생성 등 단일 작업 수행
복잡한 태스크를 계획하고 실행하는 에이전트
Memory
없음 (컨텍스트 제한)
있음 (대화 기록, 작업 히스토리 기억 가능)
Tool 사용
불가능 (내부 모델 능력에만 의존)
가능 (API, 계산기, DB, 웹 브라우저 등 외부 리소스 활용)
Planner
없음
있음 (도구를 언제/어떻게 쓸지 판단하고 순서 계획)
실행 방식
정적인 응답 → 입력 1개 → 출력 1개
동적인 행동 → 입력 → 툴 호출 → 결과 해석 → 반복
유연성
낮음 (미리 학습된 지식만 활용 가능)
높음 (실시간 검색, 계산, API 활용 가능)
지속적 작업
어려움
가능 (여러 단계를 거치는 장기 과제 처리)
즉 LLM은 단순히 입력에 대한 응답을 생성하는 반면, LLM Agent는 LLM을 활용하여 복잡한 작업을 계획하고 실행하는 에이전트입니다.
LLM Agent는 도구를 사용하고, 기억을 유지하며, 동적인 행동을 통해 지속적인 작업을 수행할 수 있는 능력을 갖추고 있습니다. 이러한 차이로 인해 LLM Agent는 더 유연하고 강력한 기능을 제공합니다.
LLM Agent 개발의 파편화와 표준화 필요성
LLM Agent 구축하는 방식은 프레임워크마다 제각각이었습니다.
툴 연동방식이 서로 다름
재사용과 확장성 부족
시스템간 연동이 어려움
따라서 표준 프로토콜의 필요성이 커졌고 해결책으로 MCP 등장
MCP의 기본구조
Host, Client, Server
Host
LLM Application 자체로 통신의 중심이며 여러 개의 Client 포함하고 이들을 관리
특징
LLM 기반의 인터페이스
내부에 MCP Client 포함
user interface 상호작용
Client와 연결된 Server들의 실행 결과와 context를 통합해 LLM에 전달
역할 요약
MCP Client들의 초기화 및 라이프사이클 관리
인증 및 권한 제어
여러 Client로부터 받은 정보를 Context로 통합
사용자와 LLM 사이의 브릿지
ex) Claude 사이트, Cursor AI Code Editor
Client
MCP 서버들과 연결되어있으며, 양방향 메시지 교환 기능 목록 관리, 초기 협상등을 수행
특징
MCP 서버와 연결 (1:1)
내부적 메시지 교환 기능, 서버 상태, 기능 목록
각 Client는 특정 목적에 맞춰 설계
역할 요약
stateful connection
메시지 라우팅 처리
Server
LLM이 외부 세계와 상호작용 할 수 있도록 도와주는 역할
특징
Tool
외부 API 또는 기능 실행 명령 단위, LLM이 호출 가능
Resource
텍스트, 로그, DB 스키마 등 외부 Conext 제공
Prompt Template
LLM이 따라야 할 지시문, 형식
역할 요약
LLM이 직접 호출할 수 있는 도구(Tool) 제공
Host/Client가 요청하는 리소스 정보 제공
LLM의 행동을 안내할 프롬프트 템플릿 제공
초기화 과정에서 프로토콜 협상 수행
Client로부터 받은 요청을 처리하고 응답 반환
기반 LLM Agent의 동작 흐름
LLM : 일반적인 대화, 단순 질의
LLM Agent : 복잡한 작업 수행, 외부 정보 필요
LLM
사용자 입력: 사용자가 LLM에 질문 또는 요청을 입력합니다.
LLM 처리: LLM은 메시지 해석하여 Tool 호출 여부 결정하고, 필요한 경우 내부 지식 기반에서 응답을 생성합니다.
응답 반환: MCP Client를 통해 사용자에게 응답을 반환합니다.
LLM Agent
사용자 입력: 사용자가 LLM Agent에 질문 또는 요청을 입력합니다.
LLM Agent 처리: LLM Agent는 입력을 분석하고, 필요한 경우 Tool 호출 여부를 결정합니다.
Tool 호출: LLM Agent는 필요한 Tool을 찾은 후, 적절한 파라미터 추출합니다.
Tool 실행: Client는 요청값을 JSON-RPC 형식으로 변환
Tool 응답 처리: MCP Server로 요청을 보낸 후, MCP에서는 Tool 관련 기능을 호출하여 처리합니다.
응답 반환: Tool의 실행 결과(JSON-RPC)를 LLM Agent로 반환하고, LLM Agent는 이를 해석하여 최종 사용자에게 응답을 전달합니다.
Touch background to close