ADK-Rust의 모델 컨텍스트 프로토콜
모델 컨텍스트 프로토콜(MCP)은 AI 애플리케이션과 별도로 소유된 기능 사이의 경계입니다. MCP 서버는 도구, 읽을 수 있는 리소스, 프롬프트 템플릿 및 인수 자동 완성을 게시할 수 있습니다. 클라이언트는 해당 카탈로그를 검색하고 비공개 통합이 아닌 협상된 프로토콜 메서드를 통해 통신합니다.
ADK-Rust 2는 공식 rmcp 3.1 SDK을 사용합니다. 클라이언트는 기본적으로 MCP 2025-11-25를 협상하고 레거시 핸드셰이크를 통해 2026-07-28 서버에 연결합니다. rmcp 호환성을 참조하세요.
ADK-Rust가 들어맞는 위치
Rendering architecture…
McpToolset는 초기화된 하나의 MCP 클라이언트 연결을 ADK-Rust에 맞게 조정합니다. McpServerManager는 로컬 stdio 자식 프로세스의 변경 가능한 레지스트리를 관리하고 해당 프로세스의 도구를 집계합니다. 기능을 게시하는 애플리케이션은 adk_tool::mcp::rmcp을 사용하여 MCP 서버를 구축할 수 있으며, 이는 프레임워크에서 사용하는 정확한 SDK 버전입니다.
적절한 접점을 선택하세요
| 필요한 작업 | 사용 항목 | 소유권 |
|---|---|---|
| 알려진 로컬 서버 하나에 연결 | McpToolset + TokioChildProcess | 애플리케이션이 자식 프로세스를 시작함 |
| 원격 MCP 서비스 하나에 연결 | McpHttpClientBuilder | 원격 배포가 가용성을 담당함 |
| 런타임에 로컬 서버 정의 변경 | McpServerManager | 애플리케이션이 로컬 레지스트리와 자식 프로세스를 소유함 |
| MCP 서버 게시 | adk_tool::mcp::rmcp | 서비스가 스키마, 권한 부여 및 부작용을 소유함 |
| 사용 중단된 샘플링 통합을 계속 작동하도록 유지 | mcp-sampling 기능 | SEP-2577에 따른 호환성만 제공 |
구현된 기능 맵
| 기능 | ADK-Rust API | 동작 |
|---|---|---|
| 도구 검색 및 호출 | McpToolset, Toolset | 원시 스키마와 멀티모달 결과가 보존됨 |
| 도구 필터링 | with_filter, with_tools | 모델에는 선택한 도구만 표시됨 |
| 리소스 및 템플릿 | list_resources, list_resource_templates, read_resource | 안정적인 URIs을 통해 컨텍스트 읽기 |
| 프롬프트 | list_prompts, get_prompt | 재사용 가능한 서버 관리 메시지 확인 |
| 자동 완성 | complete_prompt_argument, complete_resource_argument | 서버에 인수 제안 요청 |
| 리소스 구독 | subscribe_resource, unsubscribe_resource | 사용자 지정 핸들러가 업데이트 알림 수신 |
| 정보 수집 | ElicitationHandler | 양식 및 URL 모드 |
| 작업 | McpTaskConfig | 협상된 도구 호출 작업 생성, 폴링, 결과 및 취소 |
| 스트리밍 가능한 HTTP | McpHttpClientBuilder | 시간 초과, 헤더, 인증 주입, 만료된 세션 복구 |
| 동적 로컬 레지스트리 | McpServerManager | 추가, 업데이트, 활성화, 비활성화, 제거, 저장, 모니터링 및 재시작 |
| 고급 SDK 작업 | adk_tool::mcp::rmcp | 서버 핸들러, 전송, 알림 및 확장 유형 |
문서 경로
중요한 범위
- 동적 관리는 현재 로컬 stdio 자식 프로세스를 대상으로 합니다.
- 관리자 상태 모니터링은 닫힌 MCP 연결을 감지합니다. 서버의 데이터베이스나 외부 API가 정상인지 입증하지는 않습니다.
autoApprove은 호환 가능한 구성을 위해 유지되며, ADK-Rust는 이를 권한 부여로 해석하지 않습니다.OAuth2Config는 고정된 클라이언트 자격 증명 토큰 요청을 수행합니다. 이는 전체 MCP 권한 부여 검색 및 브라우저 권한 부여 흐름이 아닙니다.- 샘플링, 루트 및 로깅은 SEP-2577을 통해 업스트림에서 사용이 중단되었습니다.
이러한 범위는 공개 계약의 일부이며 배포 설계에 반영되어야 합니다.