LLM (Large Language Model)은 자연어를 이해하고 생성하는 데 특화된 AI 모델이다복잡한 언어 패턴과 문맥을 파악하고, 다양한 자연어 처리(NLP) 작업에서 뛰어난 성능을 보입니다. LLM은 책, 기사 등 방대한 학습 데이터를 기반으로 언어의 원리를 이해하며, 자연어의 복잡성을 기존 기계 학습 알고리즘보다 더 정확하게 이해할 수 있습니다.
MCP는 애플리케이션이 LLM에 컨텍스트를 제공하는 방식을 표준화하는 개방형 프로토콜이다. 여기서 컨텍스트란? LLM이 어떤 질문이나 요청에 대해 적절한 답변을 생성할 수 있도록 도와주는 배경 정보, 상황 정보, 이전 대화 내용, 관련 데이터 등을 포함할 수 있다. 한마디로 우리가 생성형 AI한테 물어보는 질문 같은 것들이다.
MCP는 AI 애플리케이션이 다양한 데이터 소스 및 도구에 연결하는 표준화된 방식을 제공함. C타입과 같은 역할을 한다.
MCP는 LLM 애플리케이션과 통합 간의 원활한 통신을 지원하는 유연하고 확장 가능한 아키텍처를 기반으로 함.
MCP는 클라이언트-서버 아키텍처를 따른다.
프로토콜 계층은 메시지 프레이킹, 요청/응답 연결, 고수준 통신 패턴을 처리한다.
class Protocol<Request, Notification, Result> {
// Handle incoming requests
setRequestHandler<T>(schema: T, handler: (request: T, extra: RequestHandlerExtra) => Promise<Result>): void
// Handle incoming notifications
setNotificationHandler<T>(schema: T, handler: (notification: T) => Promise<void>): void
// Send requests and await responses
request<T>(request: Request, schema: T, options?: RequestOptions): Promise<T>
// Send one-way notifications
notification(notification: Notification): Promise<void>
}