Model Context Protocol em ADK-Rust

O Model Context Protocol (MCP) é a fronteira entre uma aplicação de IA e uma capacidade mantida separadamente. Um servidor MCP pode publicar ferramentas, recursos legíveis, modelos de prompt e conclusão de argumentos. O cliente descobre esse catálogo e se comunica por meio de métodos de protocolo negociados, em vez de uma integração privada.

ADK-Rust 2 usa o rmcp 3.1 SDK oficial. O cliente negocia MCP 2025-11-25 por padrão e alcança servidores 2026-07-28 por meio do handshake legado deles. Consulte compatibilidade com rmcp.

Onde ADK-Rust se encaixa

Rendering architecture…

McpToolset adapta uma conexão de cliente MCP inicializada para ADK-Rust. McpServerManager mantém um registro dinâmico de processos filho stdio locais e agrega suas ferramentas. Aplicações que publicam capacidades podem criar servidores MCP com adk_tool::mcp::rmcp, que é a versão exata de SDK usada pelo framework.

Escolha a interface adequada

Você precisaUseResponsabilidade
Conectar um servidor local conhecidoMcpToolset + TokioChildProcessA aplicação inicia o processo filho
Conectar um serviço MCP remotoMcpHttpClientBuilderA implantação remota é responsável pela disponibilidade
Alterar definições do servidor local em tempo de execuçãoMcpServerManagerA aplicação gerencia um registro local e processos filho
Publicar um servidor MCPadk_tool::mcp::rmcpSeu serviço gerencia esquemas, autorização e efeitos colaterais
Manter uma integração de amostragem obsoleta funcionandomcp-sampling recursoApenas compatibilidade sob SEP-2577

Mapa de capacidades implementadas

CapacidadeADK-Rust APIComportamento
Descoberta e chamadas de ferramentasMcpToolset, ToolsetEsquemas brutos e resultados multimodais são preservados
Filtragem de ferramentaswith_filter, with_toolsO modelo vê apenas as ferramentas selecionadas
Recursos e modeloslist_resources, list_resource_templates, read_resourceLer o contexto por meio de URIs estável
Promptslist_prompts, get_promptResolver mensagens reutilizáveis pertencentes ao servidor
Conclusãocomplete_prompt_argument, complete_resource_argumentSolicitar ao servidor sugestões de argumentos
Assinaturas de recursossubscribe_resource, unsubscribe_resourceManipuladores personalizados recebem notificações de atualização
ElucidaçãoElicitationHandlerModos de formulário e URL
TarefasMcpTaskConfigCriação, consulta, resultado e cancelamento de tarefas de chamadas de ferramentas negociadas
HTTP transmitívelMcpHttpClientBuilderTempos limite, cabeçalhos, injeção de autenticação, recuperação de sessão expirada
Registro local dinâmicoMcpServerManagerAdicionar, atualizar, ativar, desativar, remover, salvar, monitorar e reiniciar
Trabalho avançado com SDKadk_tool::mcp::rmcpManipuladores de servidor, transportes, notificações e tipos de extensão

Caminho da documentação

Limites importantes

  • O gerenciamento dinâmico atualmente tem como alvo processos filhos locais stdio.
  • O monitoramento de integridade do gerenciador detecta uma conexão MCP fechada. Ele não comprova que o banco de dados do servidor ou o API externo está íntegro.
  • autoApprove é preservado para configurações compatíveis; ADK-Rust não o interpreta como autorização.
  • OAuth2Config executa uma solicitação de token de client-credentials fixa. Ele não é o fluxo completo de descoberta de autorização e autorização pelo navegador do MCP.
  • Sampling, roots e logging estão obsoletos upstream por meio do SEP-2577.

Esses limites fazem parte do contrato público e devem ser refletidos no projeto de implantação.