Pular para conteúdo

Exercícios: Aula 05 - Comunicação C/S 🔄

🟢 Nível Básico

  1. Qual a principal diferença entre uma requisição (Request) e uma notificação (Notification)?
  2. O que é o id em uma mensagem JSON-RPC e por que ele é incremental?

🟡 Nível Intermediário

  1. Explique o que acontece durante o Handshake inicial entre o cliente e o servidor.
  2. Se o servidor retornar o código de erro -32601 (Method not found), o que provavelmente está errado na chamada do cliente?

🔴 Nível Desafio

  1. Análise de Fluxo: Desenhe a sequência de mensagens JSON-RPC para o seguinte cenário:
    • O Cliente pede a lista de recursos.
    • O Servidor responde com dois recursos (logs e docs).
    • O Cliente lê o recurso de logs.
    • O Servidor retorna o conteúdo do log.

📚 Gabarito e Soluções Comentadas

Gabarito Explicado ### Questão 1: Qual a principal diferença entre uma requisição (Request) e uma notificação (Notification)? **Resposta Comentada:** - **Fundamentação:** No contexto de **Comunicação Cliente ↔ Servidor MCP**, o conceito abordado (Qual a principal diferença entre uma requisição (Request) e uma notificação (Notification)?) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 2: O que é o `id` em uma mensagem JSON **Resposta Comentada:** - **Fundamentação:** No contexto de **Comunicação Cliente ↔ Servidor MCP**, o conceito abordado (O que é o `id` em uma mensagem JSON) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 3: Explique o que acontece durante o **Handshake** inicial entre o cliente e o servidor. **Resposta Comentada:** - **Fundamentação:** No contexto de **Comunicação Cliente ↔ Servidor MCP**, o conceito abordado (Explique o que acontece durante o **Handshake** inicial entre o cliente e o servidor.) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 4: Se o servidor retornar o código de erro ` **Resolução e Implementação:**
// Estrutura de implementação recomendada para Se o servidor retornar o código de erro `
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Comunicação Cliente ↔ Servidor MCP**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 5: Análise de Fluxo **Resposta Comentada:** - **Fundamentação:** No contexto de **Comunicação Cliente ↔ Servidor MCP**, o conceito abordado (Análise de Fluxo) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais.