Tipos de transporte – UCP manifest

No UCP manifest, os tipos de transporte definem como o serviço é exposto e consumido. Cada tipo atende a cenários diferentes de integração. Vamos aprofundar cada um:


🚚 1. rest (HTTP/REST)

🧩 O que é

É o modelo mais tradicional: o serviço é acessado via HTTP, normalmente com JSON.

🔧 Como funciona

  • Usa métodos HTTP: GET, POST, PUT, DELETE
  • Possui uma URL (endpoint)
  • Retorna dados estruturados (geralmente JSON)

✅ Quando usar

  • Integração com sistemas externos
  • APIs públicas ou internas
  • Arquiteturas baseadas em microservices

📌 Exemplo

JSON

{"transport": {
"type": "rest",
"baseUrl": "https://api.exemplo.com",
"methods": ["GET", "POST"]
}
}

⚖️ Vantagens

  • Padrão amplamente suportado
  • Fácil de testar (Postman, curl)
  • Alta interoperabilidade

⚠️ Limitações

  • Mais “verbooso” para cenários de IA
  • Não é otimizado para contexto de modelos

🤖 2. MCP (Model Context Protocol)

🧩 O que é

Um protocolo focado em integração com IA e LLMs, permitindo que modelos acessem ferramentas e dados de forma estruturada.

🔧 Como funciona

  • O serviço expõe capacidades (tools) para o modelo
  • Comunicação geralmente estruturada em chamadas de ferramenta
  • Pode incluir contexto, memória e instruções

✅ Quando usar

  • Integração com copilotos, agentes e LLMs
  • Sistemas que precisam “dar poderes” à IA (ex: consultar banco, executar ações)
  • Automação inteligente

📌 Exemplo

{"transport": {
"type": "mcp",
"server": "mcp://tools-server"
}
}

⚖️ Vantagens

  • Otimizado para IA
  • Permite chamadas estruturadas de funções
  • Mantém contexto de interação

⚠️ Limitações

  • Mais novo / menos padronizado que REST
  • Depende de ecossistema compatível

🤝 3. A2A (Agent-to-Agent)

🧩 O que é

Comunicação direta entre agentes autônomos, sem interação humana direta.

🔧 Como funciona

  • Um agente envia mensagens para outro
  • Pode incluir negociação, coordenação, workflows distribuídos
  • Geralmente assíncrono ou orientado a eventos

✅ Quando usar

  • Sistemas multiagente
  • Orquestração de tarefas complexas
  • Automação distribuída (ex: vários bots colaborando)

📌 Exemplo

JSON
{"transport": {
"type": "a2a",
"protocol": "agent-message-bus"}
}

⚖️ Vantagens

  • Permite automação avançada
  • Escalável (múltiplos agentes)
  • Ideal para IA colaborativa

⚠️ Limitações

  • Mais complexo de projetar
  • Difícil de depurar
  • Requer governança (quem fala com quem)

🧩 4. embedded

🧩 O que é

O serviço está dentro da própria aplicação, sem comunicação de rede.

🔧 Como funciona

  • Chamadas locais (funções, bibliotecas)
  • Disponível diretamente no runtime

✅ Quando usar

  • Ferramentas internas
  • Funções auxiliares
  • Baixa latência crítica

📌 Exemplo

{
"transport": {
"type": "embedded"
}
}


⚖️ Vantagens

  • Extremamente rápido (sem rede)
  • Simples
  • Sem dependências externas

⚠️ Limitações

  • Não escalável externamente
  • Acoplamento maior
  • Difícil compartilhar entre sistemas

🧠 Comparação rápida

TipoComunicaçãoUso principalRede
restHTTPAPIs tradicionais
mcpProtocolo IAIntegração com LLMs
a2aMensagens/agentesSistemas multiagente
embeddedLocalFunções internas

🎯 Como escolher o transporte

Use esta lógica prática:

  • 🔹 Quer expor API clássica → rest
  • 🔹 Quer integrar com Copilot / IA → mcp
  • 🔹 Quer agentes conversando entre si → a2a
  • 🔹 Quer algo interno/local → embedded

💡 Insight importante

Em arquiteturas modernas, é comum combinar transportes:

  • REST para integração externa
  • MCP para IA
  • Embedded para lógica interna
  • A2A para automação entre agentes