You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 2
Next »
출처
MCP 개요
- 애플리케이션이 LLM에 컨텍스트를 제공하는 방법을 표준화하는 개방형 프로토콜
- M : Model
- C : Context
- P : Protocol
- Anthropic사에서 제정한 개방형 프로토콜
- AI 애플리케이션 통합의 복잡성을 해결하기 위해 설계
- JSON-RPC 2.0을 기반으로 하는 클라이언트-서버 아키텍처를 채택
- 표준화된 방식으로 AI모델을 다양한 데이터 소스 및 도구에 연결하여 상호운용성 증대
- AI 에이전트가 외부 도구와 데이터 소스에 접근할수 있는 표준화된 인터페이스를 제공
- 호스트 애플리케이션이 다양한 도구와 데이터 소스를 원활하게 전환하며 자율적으로 작업을 수행
MCP 아키텍처 다이어 그램
- MCP 아키텍처 다이어 그램
MCP 아키텍처 구성요소
Host (애플리케이션)
- Claude Desktop, Cursor AI와 같은 사용자 인터페이스 애플리케이션
- LLM을 관리하고 사용자와 AI 모델 간 상호작용 제공
- 내부에 MCP Client를 포함하여 외부 도구와 연결
Client (통신 중개자)
- Host 내부에 존재하는 통신 컴포넌트
- MCP Server와의 연결 및 통신 처리 담당
- Server가 제공하는 Tool과 Resource 목록을 탐색하고 호출
Server (도구제공자)
- 외부 시스템 기능을 MCP 프로토콜로 노출하는 독립 서비스
- Google Drive, Slack, 데이터베이스 등 다양한 시스템에 접근 제공
- 하나의 Host가 여러 Server에 동시에 연결하여 다양한 기능을 통합할 수 있음
MCP Key Components

MCP Host / Client
Roots (Notification)
- 클라이언트 (사용자 컴퓨터나 프로그램)가 서버에게 파일 시스ㅔㅁ의 "로트"를 알려주는 표준 방법
- 서버는 클라이언트에게 이 루트 목록을 요청할 수 있고, 만약 이 목록이 변경되면 알림을 받을 수 있음
Sampling
- 서버가 클라이언트를 통해 모델에게 생성을 요청하는 표준화된 방법으로 클라이언트가 모델 접근을 중개
- 서버가 클라이언트의 허락과 관리 하에 LLM의 지능적인 기능을 활용하여, 클라이언트를 통해 안전하게 이용
MCP Server Context 요소
Resources (리소스)
- 모델이 참고할 수 있는 익기 전용 데이터
- URI 형식으로 식별되는 데이터 접근점
- 예: 파일내용, API응답, 데이터베이스 조회 결과
- @mcp.resource("file://{path}") 형태로 정의
- LLM이 실제 작업을 수행하고 시스템에 변화를 줄 수 있는 실행 가능한 함수
- 예: 계산 수행, 데이터 검색, 외부 API호출 등의 기능 제공
- 입력 파라메터와 출력 형식이 명확히 정의됨.
Prompts (프롬프트)
- LLM에게 특정 작업 수행 방법을 알려주는 재사용 가능한 템플릿
- 예: 코드 검토, 텍스트 요챡, 데이터 분석 등의 정형화된 작업
- @mcp.prompt() 데코레이터로 정의