Pular para conteúdo

Aula 04 - Estrutura de Recursos no MCP 📂

Resources, Tools e Prompts


Agenda de Hoje 📅

  1. O que são Resources?
  2. O Poder das Tools
  3. Prompts: Templates de Inteligência
  4. URIs e Esquemas de Localização
  5. Discovery de Capacidades

1. Resources (Os Dados) 💾

  • Dados para leitura.
  • Podem ser estáticos ou dinâmicos.
  • Exemplos: Logs, bases de conhecimento, registros.

1.1 Tipos de Recursos

  • Textos: Markdown, JSON, TXT.
  • Binários: Imagens, PDFs.

2. Tools (As Ações) 🛠️

  • Funções que a IA pode executar.
  • Causam mudanças no sistema ou buscam dados complexos.
  • Ex: Enviar e-mail, salvar arquivo, deletar registro.

2.1 Tool Anatomy

  • Nome: Identificador único.
  • Descrição: Guia para o LLM.
  • Input Schema: Validação de parâmetros.

3. Prompts (Instruções Reutilizáveis) 🧠

  • Templates de texto para guiar o modelo.
  • Padronizam tarefas complexas.
  • Ex: "Analisar este código buscando bugs".

4. O Sistema de URIs 📍

  • Cada recurso tem um endereço único.
  • mcp://my-server/database/users

5. Discovery (A Descoberta) 🔍

graph TD
    A[Cliente] -- "list-tools" --> B[Servidor]
    B -- "Tool A, Tool B" --> A
    A -- "list-resources" --> B
    B -- "Res 1, Res 2" --> A

6. Definindo Tools com JSON Schema

{
  "type": "object",
  "properties": {
    "amount": { "type": "number" },
    "currency": { "type": "string" }
  }
}

7. Recursos Dinâmicos vs Estáticos

Estático Dinâmico
mcp://server/manual.md mcp://server/status/cpu
Conteúdo fixo Atualizado a cada leitura

8. Prática: Inspecionando Capacidades 💻

$ mcp-inspect list-resources
- mcp://local/logs/error.log
- mcp://local/docs/api-guide.md

9. O Papel das Descrições (Engenharia de Prompt)

  • "Use esta ferramenta para..."
  • Quanto melhor a descrição, menos a IA erra.

10. Organização de Capacidades

mindmap
  root((Servidor MCP))
    Resources
      Arquivos
      Bancos de Dados
    Tools
      Escrita
      Integração API
    Prompts
      Templates Análise
      Guia de Estilo

11. Resumo ✅

  • Resources = Leitura de dados via URIs.
  • Tools = Ações e funções parametrizadas.
  • Prompts = Templates de instruções para o modelo.

12. Mini-Projeto: Planejamento

  • Listar 1 Resource, 1 Tool e 1 Prompt para seu projeto.

13. Dúvidas? 🤔

"Resources informam, Tools agem, Prompts guiam."