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