<p class="wp-block-paragraph">No UCP manifest, os <strong>tipos de transporte</strong> definem <em>como o serviço é exposto e consumido</em>. Cada tipo atende a cenários diferentes de integração. Vamos aprofundar cada um:</p>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<h1 class="wp-block-heading">🚚 1. <code>rest</code> (HTTP/REST)</h1>
<h2 class="wp-block-heading">🧩 O que é</h2>
<p class="wp-block-paragraph">É o modelo mais tradicional: o serviço é acessado via <strong>HTTP</strong>, normalmente com JSON.</p>
<h2 class="wp-block-heading">🔧 Como funciona</h2>
<ul class="wp-block-list">
<li>Usa métodos HTTP: <code>GET</code>, <code>POST</code>, <code>PUT</code>, <code>DELETE</code></li>
<li>Possui uma URL (endpoint)</li>
<li>Retorna dados estruturados (geralmente JSON)</li>
</ul>
<h2 class="wp-block-heading">✅ Quando usar</h2>
<ul class="wp-block-list">
<li>Integração com sistemas externos</li>
<li>APIs públicas ou internas</li>
<li>Arquiteturas baseadas em microservices</li>
</ul>
<h2 class="wp-block-heading">📌 Exemplo</h2>
<p class="wp-block-paragraph">JSON</p>
<pre class="wp-block-preformatted">{"transport": {<br>"type": "rest",<br>"baseUrl": "https://api.exemplo.com",<br>"methods": ["GET", "POST"]<br>}<br>}<br></pre>
<p class="wp-block-paragraph"></p>
<h2 class="wp-block-heading">⚖️ Vantagens</h2>
<ul class="wp-block-list">
<li>Padrão amplamente suportado</li>
<li>Fácil de testar (Postman, curl)</li>
<li>Alta interoperabilidade</li>
</ul>
<h2 class="wp-block-heading">⚠️ Limitações</h2>
<ul class="wp-block-list">
<li>Mais “verbooso” para cenários de IA</li>
<li>Não é otimizado para contexto de modelos</li>
</ul>
<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide"/>
<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>
<h1 class="wp-block-heading">🤖 2. MCP (Model Context Protocol)</h1>
<h2 class="wp-block-heading">🧩 O que é</h2>
<p class="wp-block-paragraph">Um protocolo focado em <strong>integração com IA e LLMs</strong>, permitindo que modelos acessem ferramentas e dados de forma estruturada.</p>
<h2 class="wp-block-heading">🔧 Como funciona</h2>
<ul class="wp-block-list">
<li>O serviço expõe <strong>capacidades (tools)</strong> para o modelo</li>
<li>Comunicação geralmente estruturada em chamadas de ferramenta</li>
<li>Pode incluir contexto, memória e instruções</li>
</ul>
<h2 class="wp-block-heading">✅ Quando usar</h2>
<ul class="wp-block-list">
<li>Integração com copilotos, agentes e LLMs</li>
<li>Sistemas que precisam “dar poderes” à IA (ex: consultar banco, executar ações)</li>
<li>Automação inteligente</li>
</ul>
<h2 class="wp-block-heading">📌 Exemplo</h2>
<p class="wp-block-paragraph"></p>
<pre class="wp-block-preformatted">{"transport": {<br>"type": "mcp",<br>"server": "mcp://tools-server"<br>}<br>}<br></pre>
<p class="wp-block-paragraph"></p>
<h2 class="wp-block-heading">⚖️ Vantagens</h2>
<ul class="wp-block-list">
<li>Otimizado para IA</li>
<li>Permite chamadas estruturadas de funções</li>
<li>Mantém contexto de interação</li>
</ul>
<h2 class="wp-block-heading">⚠️ Limitações</h2>
<ul class="wp-block-list">
<li>Mais novo / menos padronizado que REST</li>
<li>Depende de ecossistema compatível</li>
</ul>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>
<h1 class="wp-block-heading">🤝 3. <code>A2A</code> (Agent-to-Agent)</h1>
<h2 class="wp-block-heading">🧩 O que é</h2>
<p class="wp-block-paragraph">Comunicação direta entre <strong>agentes autônomos</strong>, sem interação humana direta.</p>
<h2 class="wp-block-heading">🔧 Como funciona</h2>
<ul class="wp-block-list">
<li>Um agente envia mensagens para outro</li>
<li>Pode incluir negociação, coordenação, workflows distribuídos</li>
<li>Geralmente assíncrono ou orientado a eventos</li>
</ul>
<h2 class="wp-block-heading">✅ Quando usar</h2>
<ul class="wp-block-list">
<li>Sistemas multiagente</li>
<li>Orquestração de tarefas complexas</li>
<li>Automação distribuída (ex: vários bots colaborando)</li>
</ul>
<h2 class="wp-block-heading">📌 Exemplo</h2>
<pre class="wp-block-preformatted">JSON<br>{"transport": {<br>"type": "a2a",<br>"protocol": "agent-message-bus"}<br>}<br></pre>
<h2 class="wp-block-heading">⚖️ Vantagens</h2>
<ul class="wp-block-list">
<li>Permite automação avançada</li>
<li>Escalável (múltiplos agentes)</li>
<li>Ideal para IA colaborativa</li>
</ul>
<h2 class="wp-block-heading">⚠️ Limitações</h2>
<ul class="wp-block-list">
<li>Mais complexo de projetar</li>
<li>Difícil de depurar</li>
<li>Requer governança (quem fala com quem)</li>
</ul>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<div style="height:100px" aria-hidden="true" class="wp-block-spacer"></div>
<h1 class="wp-block-heading">🧩 4. <code>embedded</code></h1>
<h2 class="wp-block-heading">🧩 O que é</h2>
<p class="wp-block-paragraph">O serviço está <strong>dentro da própria aplicação</strong>, sem comunicação de rede.</p>
<h2 class="wp-block-heading">🔧 Como funciona</h2>
<ul class="wp-block-list">
<li>Chamadas locais (funções, bibliotecas)</li>
<li>Disponível diretamente no runtime</li>
</ul>
<h2 class="wp-block-heading">✅ Quando usar</h2>
<ul class="wp-block-list">
<li>Ferramentas internas</li>
<li>Funções auxiliares</li>
<li>Baixa latência crítica</li>
</ul>
<h2 class="wp-block-heading">📌 Exemplo</h2>
<pre class="wp-block-preformatted">{<br>"transport": {<br>"type": "embedded"<br>}<br>}</pre>
<p class="wp-block-paragraph"><br></p>
<h2 class="wp-block-heading">⚖️ Vantagens</h2>
<ul class="wp-block-list">
<li>Extremamente rápido (sem rede)</li>
<li>Simples</li>
<li>Sem dependências externas</li>
</ul>
<h2 class="wp-block-heading">⚠️ Limitações</h2>
<ul class="wp-block-list">
<li>Não escalável externamente</li>
<li>Acoplamento maior</li>
<li>Difícil compartilhar entre sistemas</li>
</ul>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<h1 class="wp-block-heading">🧠 Comparação rápida</h1>
<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><th>Tipo</th><th>Comunicação</th><th>Uso principal</th><th>Rede</th></tr><tr><th><strong>rest</strong></th><td>HTTP</td><td>APIs tradicionais</td><td>✅</td></tr><tr><th><strong>mcp</strong></th><td>Protocolo IA</td><td>Integração com LLMs</td><td>✅</td></tr><tr><th><strong>a2a</strong></th><td>Mensagens/agentes</td><td>Sistemas multiagente</td><td>✅</td></tr><tr><th><strong>embedded</strong></th><td>Local</td><td>Funções internas</td><td>❌</td></tr></tbody></table></figure>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<h1 class="wp-block-heading">🎯 Como escolher o transporte</h1>
<p class="wp-block-paragraph">Use esta lógica prática:</p>
<ul class="wp-block-list">
<li>🔹 Quer expor API clássica → <strong>rest</strong></li>
<li>🔹 Quer integrar com Copilot / IA → <strong>mcp</strong></li>
<li>🔹 Quer agentes conversando entre si → <strong>a2a</strong></li>
<li>🔹 Quer algo interno/local → <strong>embedded</strong></li>
</ul>
<hr class="wp-block-separator has-alpha-channel-opacity"/>
<h1 class="wp-block-heading">💡 Insight importante</h1>
<p class="wp-block-paragraph">Em arquiteturas modernas, é comum <strong>combinar transportes</strong>:</p>
<ul class="wp-block-list">
<li>REST para integração externa</li>
<li>MCP para IA</li>
<li>Embedded para lógica interna</li>
<li>A2A para automação entre agentes</li>
</ul>
<p class="wp-block-paragraph"></p>
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.
Deixe um comentário