Aprenda sobre os mecanismos de comunicação do MCPOs Transportes no Model Context Protocol (MCP) fornecem a base para a comunicação entre clientes e servidores. Um transporte lida com a mecânica subjacente de como as mensagens são enviadas e recebidas.O MCP usa JSON-RPC 2.0 como seu formato de transmissão. A camada de transporte é responsável por converter mensagens de protocolo MCP em formato JSON-RPC para transmissão e converter mensagens JSON-RPC recebidas de volta em mensagens de protocolo MCP.Existem três tipos de mensagens JSON-RPC usadas:O MCP inclui duas implementações de transporte padrão:O transporte stdio permite a comunicação através de fluxos de entrada e saída padrão. Isso é particularmente útil para integrações locais e ferramentas de linha de comando.Construir ferramentas de linha de comando
Implementar integrações locais
Precisar de comunicação de processo simples
Trabalhar com scripts de shell
O transporte SSE permite o streaming de servidor para cliente com requisições HTTP POST para comunicação de cliente para servidor.Apenas o streaming de servidor para cliente é necessário
Trabalhar com redes restritas
Implementar atualizações simples
O MCP facilita a implementação de transportes personalizados para necessidades específicas. Qualquer implementação de transporte só precisa estar em conformidade com a interface Transport:Você pode implementar transportes personalizados para:Protocolos de rede personalizados
Canais de comunicação especializados
Integração com sistemas existentes
Observe que, embora os servidores MCP sejam frequentemente implementados com asyncio, recomendamos a implementação de interfaces de baixo nível, como transportes, com anyio
para uma compatibilidade mais ampla.As implementações de transporte devem lidar com vários cenários de erro:2.
Erros de análise de mensagem
Exemplo de tratamento de erros:Observe que, embora os servidores MCP sejam frequentemente implementados com asyncio, recomendamos a implementação de interfaces de baixo nível, como transportes, com anyio
para uma compatibilidade mais ampla.Ao implementar ou usar o transporte MCP:1.
Lidar com o ciclo de vida da conexão corretamente
2.
Implementar tratamento de erros adequado
3.
Limpar recursos ao fechar a conexão
4.
Usar timeouts apropriados
5.
Validar mensagens antes de enviar
6.
Registrar eventos de transporte para depuração
7.
Implementar lógica de reconexão quando apropriado
8.
Lidar com backpressure em filas de mensagens
9.
Monitorar a saúde da conexão
10.
Implementar medidas de segurança adequadas
Ao implementar o transporte:Implementar mecanismos de autenticação adequados
Validar as credenciais do cliente
Usar tratamento seguro de tokens
Implementar verificações de autorização
Usar TLS para transporte de rede
Criptografar dados confidenciais
Validar a integridade da mensagem
Implementar limites de tamanho de mensagem
Higienizar dados de entrada
Implementar limitação de taxa
Usar timeouts apropriados
Lidar com cenários de negação de serviço
Monitorar padrões incomuns
Implementar regras de firewall adequadas
Dicas para depurar problemas de transporte:1.
Ativar o registro de depuração
2.
Monitorar o fluxo de mensagens
3.
Verificar os estados de conexão
4.
Validar os formatos de mensagem
6.
Usar ferramentas de análise de rede
7.
Implementar verificações de saúde
8.
Monitorar o uso de recursos
10.
Usar rastreamento de erros adequado
Modified at 2025-03-12 10:14:29