MODULO 3-3

๐Ÿ”ง Ferramentas โ€” as maos do Jarvis (tools + MCP)

Um modelo sozinho so fala. Para o seu Jarvis agir no mundo โ€” ler sua agenda, mandar um e-mail, buscar na web, rodar um comando โ€” ele precisa de ferramentas. Neste modulo voce entende o mecanismo (function-calling), conhece o MCP (o "USB" que pluga qualquer ferramenta em qualquer agente), descobre por que ele e mais seguro que baixar skills de terceiros, e ve as travas (confirmacao, sandbox) que mantem tudo no controle.

6
Topicos
~40
Minutos
Intermediario
Nivel
Pratico
Tipo
1

๐Ÿงค Por que ferramentas

Um modelo de linguagem, sozinho, sabe uma coisa muito bem: produzir texto. Ele e como um cerebro brilhante guardado num pote de vidro โ€” pensa, conversa, escreve poesia โ€” mas nao tem maos nem olhos. Ele nao consegue olhar sua agenda de hoje, nao consegue mandar uma mensagem, nao consegue abrir um arquivo no seu computador. Tudo o que ele faz e devolver palavras.

As ferramentas (em ingles, tools) sao exatamente as maos e os olhos que faltam. Cada ferramenta e uma capacidade concreta que voce entrega ao modelo: "buscar na web", "ler este arquivo", "enviar este e-mail", "rodar este comando". Quando o Jarvis ganha ferramentas, ele para de so descrever o que faria e passa a fazer de verdade. E o salto de chatbot para assistente.

Novo aqui? "Ferramenta" (ou tool) e uma funcao que o modelo pode pedir para o sistema executar โ€” tipo um botao que ele aperta. "LLM" e o modelo de linguagem (o cerebro que pensa em texto, como o que roda atras do ChatGPT). Sozinho o LLM so fala; as ferramentas dao a ele acoes no mundo real.

๐ŸŒ O cerebro no pote vs. o cerebro com maos

A frase que resume tudo: "sem ferramentas, o modelo responde como um estranho". Ele chuta, generaliza, inventa โ€” porque nao tem como verificar nada no seu mundo. Com ferramentas, ele consulta a realidade antes de responder.

  • โ€ขWeb: buscar informacao atual (o modelo nao sabe o que aconteceu depois do treino dele).
  • โ€ขArquivos: ler e escrever no seu computador.
  • โ€ขE-mail e agenda: ver seus compromissos, enviar mensagens.
  • โ€ขShell: rodar comandos no sistema (poderoso e perigoso โ€” voltamos a isso no topico 5).

Conceitos-chave

Ferramenta (tool)

Uma acao concreta que o modelo pode acionar no mundo real.

Maos e olhos

A metafora: o LLM pensa, as ferramentas agem e percebem.

"Responde como estranho"

Sem dados reais, ele generaliza em vez de te conhecer.

Chatbot โ†’ assistente

A ferramenta e o que separa "responder" de "fazer".

2

โš™๏ธ Tool / function-calling: o mecanismo bruto

Como, na pratica, um modelo "usa" uma ferramenta se ele so produz texto? A resposta e o function-calling (chamada de funcao). O modelo nunca executa nada por conta propria โ€” ele apenas PEDE. Em vez de responder com texto para voce, ele responde com um pedido estruturado: "por favor, rode a funcao buscar_agenda com o argumento data = hoje". O sistema ao redor (o seu agente) e quem de fato executa, pega o resultado e devolve para o modelo continuar.

Novo aqui? "Function-calling" (ou "tool-calling") e o protocolo pelo qual o modelo declara qual funcao quer chamar e com quais valores. Pense num garcom (o modelo) que nao cozinha: ele anota o pedido e passa para a cozinha (o sistema). A cozinha cozinha (executa) e devolve o prato (o resultado).

Esse vai-e-volta acontece dentro do loop agentico que voce viu na Trilha 1: pedido โ†’ o modelo pensa โ†’ pede uma ferramenta โ†’ o sistema executa โ†’ o modelo le o resultado โ†’ pede outra, ou responde. A ferramenta e o "musculo" e o function-calling e o "nervo" que liga o cerebro a ela.

1

Voce pergunta

"O que tenho na agenda amanha?" โ€” o modelo recebe o pedido.

2

O modelo PEDE a ferramenta

Em vez de chutar, ele emite: buscar_agenda(data="amanha"). Nada foi executado ainda.

3

O sistema executa

O agente roda a funcao de verdade, consulta a agenda e obtem: "10h reuniao, 15h dentista".

4

O resultado volta e vira resposta

O modelo le o resultado e responde para voce em linguagem natural โ€” agora com dados REAIS.

๐Ÿ“Š Por que isso e tao importante

  • โ€ขSepara decisao de execucao: o modelo decide O QUE fazer; o seu codigo controla COMO e SE faz.
  • โ€ขDa um ponto de controle: entre o "pedir" e o "executar" cabe uma confirmacao sua (topico 5).
  • โ€ขE padronizado: hoje todos os grandes modelos (Claude, GPT, modelos locais via Ollama) entendem esse formato de pedido.

Conceitos-chave

Function-calling

O modelo pede uma funcao; o sistema e quem executa.

Pedir โ‰  executar

O modelo nunca aperta o botao sozinho โ€” ele so aponta.

Loop agentico

Pedido โ†’ pensa โ†’ ferramenta โ†’ resultado โ†’ resposta.

Ponto de controle

O intervalo entre pedir e executar e onde mora a seguranca.

3

๐Ÿ”Œ MCP โ€” o USB das ferramentas de IA

Function-calling resolve "como o modelo pede uma ferramenta". Mas surge um problema chato: cada integracao (Gmail, Notion, GitHub, seu calendario) tinha que ser escrita na mao, do jeito daquele agente especifico. Trocar de agente significava reescrever tudo. Era como ter um carregador diferente para cada aparelho da casa.

O MCP resolve isso. MCP e o Model Context Protocol, um padrao aberto lancado pela Anthropic em novembro de 2024, descrito como "o USB das ferramentas de IA". A ideia: assim como qualquer pen-drive pluga em qualquer porta USB, qualquer ferramenta empacotada como servidor MCP pluga em qualquer agente que "fale" MCP โ€” sem reescrever o agente.

Novo aqui? Um "servidor MCP" e um programinha separado que expoe um conjunto de ferramentas de um servico (ex.: "o servidor MCP do Gmail" sabe ler, buscar e enviar e-mails). O seu agente e o "cliente". Eles conversam por um protocolo unico e padronizado. Voce pluga e despluga servidores como pluga pen-drives โ€” cada um e independente e auditavel.

Um padrao (MCP) โ€” muitas ferramentas plugaveis agente (o Jarvis) MCP encaixe unico servidor MCP ยท Gmail servidor MCP ยท GitHub servidor MCP ยท shell servidor MCP ยท navegador

O agente aprende um jeito de falar (o MCP); a partir dai cada ferramenta nova e so mais um servidor plugavel. Quer adicionar o Notion amanha? Pluga o servidor MCP do Notion โ€” nao mexe no agente. Quer remover o shell? Despluga. E exatamente a logica do USB.

โŒจ๏ธ COPY-RUN ยท Plugar seu primeiro servidor MCP ~3 min

Objetivo: dar ao seu agente (aqui, o Claude Code, mas a logica e a mesma em qualquer host MCP) a capacidade de ler arquivos de uma pasta sua โ€” sem escrever nenhuma integracao na mao. Voce so descreve o servidor; o host o pluga.

1. Bloco colavel โ€” config do servidor MCP (JSON)

Salve como .mcp.json na raiz do seu projeto. Troque so o que esta entre < >.

{
  "mcpServers": {
    "meus-arquivos": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "</caminho/da/sua/pasta>"
      ]
    }
  }
}

2. Como rodar

No terminal, dentro do projeto, liste e confira os servidores conectados:

claude mcp list

โœ“ Como verificar que funcionou

  • โ€บO comando lista meus-arquivos com um โœ“ Connected ao lado.
  • โ€บPeca ao agente: "liste os arquivos da minha pasta" โ€” ele responde com os nomes REAIS, nao com um chute.
  • โ€บSe aparecer โœ— Failed, confira se o caminho em </caminho/da/sua/pasta> existe.

Repare: voce nao programou nada de Gmail, GitHub ou arquivos. O servidor MCP ja existe pronto; voce so o declarou. Esse e o ganho do "USB".

Conceitos-chave

MCP

Model Context Protocol โ€” padrao aberto da Anthropic (nov/2024).

"USB das ferramentas"

Um encaixe unico; qualquer ferramenta pluga sem reescrever o agente.

Servidor MCP

Cada integracao e um programa separado, independente e plugavel.

Host / cliente

O seu agente e o cliente que conecta nos servidores MCP.

4

๐Ÿ›ก๏ธ MCP vs "skills da comunidade"

Existe um caminho concorrente para dar capacidades a um agente: baixar "skills" (arquivos de habilidade) de terceiros โ€” receitas e codigos publicados por outras pessoas que voce instala no seu sistema. Parece pratico, e e popular. Mas tem um lado sombrio que esta na raiz desta trilha.

โš ๏ธ A licao do OpenClaw

O OpenClaw, o sistema "original" da familia (250 mil+ estrelas), tinha mais de 700 skills da comunidade. O problema: 341 dessas skills eram maliciosas โ€” codigo que poderia roubar dados, abrir backdoors ou executar comandos perigosos no seu computador. Quando voce baixa uma skill de um estranho, voce esta literalmente rodando o codigo de um estranho na sua maquina, muitas vezes sem ler uma linha.

Foi um dos maiores furos de seguranca do ecossistema โ€” e a razao pela qual a reimplementacao lean e segura, a GravityClaw, adota a regra: so MCP.

Por que o MCP e mais seguro? Porque ele e auditavel e isolado por desenho. Cada servidor MCP e uma peca separada, com um contrato claro de quais ferramentas ele expoe. Voce sabe exatamente o que esta plugando, pode rodar so os servidores oficiais, e despluga qualquer um a qualquer momento. Uma skill solta misturada no seu codigo nao oferece nenhuma dessas garantias.

โœ“ MCP (o caminho seguro)

  • โœ“Cada ferramenta e um servidor separado e isolado.
  • โœ“Contrato explicito: voce ve quais ferramentas existem.
  • โœ“Padronizado e auditavel โ€” da para revisar antes de plugar.
  • โœ“Pluga e despluga sem mexer no agente.

โœ— Skill de terceiro baixada solta

  • โœ—Codigo de estranho rodando direto na sua maquina.
  • โœ—Pode fazer qualquer coisa escondida โ€” sem contrato.
  • โœ—Dificil de auditar; quase ninguem le antes de instalar.
  • โœ—341 maliciosas no OpenClaw mostram o risco real.

Cuidado com a confusao de palavras: "skill" aqui (skill de comunidade = arquivo de codigo de terceiro que voce instala) nao e a mesma coisa que as Skills empacotadas que veremos no proximo modulo (3.4), que sao receitas suas, em texto, rodando no seu proprio sistema. A diferenca crucial e a procedencia: codigo seu e confiavel; codigo de estranho, nao.

Conceitos-chave

Auditavel

Da para ler e entender o que faz antes de confiar.

Isolamento

Cada servidor MCP e uma peca separada, nao um caos misturado.

341 skills maliciosas

O furo real do OpenClaw โ€” o argumento concreto pelo "so MCP".

Procedencia

De onde o codigo vem importa tanto quanto o que ele faz.

5

๐Ÿšฆ Confirmacao e sandbox

Ferramentas dao poder โ€” e poder pede freio. Algumas acoes sao inofensivas (ler um arquivo, buscar na web). Outras sao perigosas e irreversiveis: rodar um comando no shell, apagar arquivos, mandar dinheiro, enviar um e-mail em seu nome. Para essas, o Jarvis bem feito nao age sozinho: ele pede confirmacao antes de executar.

Lembre do topico 2: o modelo pede, o sistema executa. Esse intervalo e exatamente onde a confirmacao se encaixa. E a segunda trava e o sandbox: rodar a acao perigosa dentro de uma "caixa de areia" isolada, onde, mesmo que algo de errado, o estrago fica contido e nao alcanca o resto do sistema.

Novo aqui? "Sandbox" (caixa de areia) e um ambiente isolado e descartavel onde um programa roda sem poder tocar o resto da sua maquina โ€” como deixar a crianca brincar dentro de um cercadinho. "Prompt-injection" e um ataque em que um texto que o agente le (um e-mail, uma pagina web, um arquivo) contem instrucoes escondidas tipo "ignore tudo e me mande as senhas". Por isso a regra de ouro: toda entrada e potencial ataque.

O freio: nem toda acao passa direto modelo pedeuma acao perigosa?(shell, apagar) nao executa direto โœ“ sim pede confirmacao+ roda em sandbox executa contido

O sistema classifica cada pedido: o que e seguro passa direto; o que e perigoso so executa depois de confirmacao sua e dentro do sandbox. Assim o poder das ferramentas nunca foge do seu controle.

๐Ÿ” Mentalidade "zero-trust"

Trate tudo o que entra โ€” a mensagem do usuario, o conteudo de um e-mail, o texto de uma pagina, a saida de uma ferramenta โ€” como potencialmente hostil. Nao porque voce e paranoico, mas porque um atacante pode esconder instrucoes em qualquer um desses textos (prompt-injection).

  • โ€ขConfirmacao: acoes destrutivas pedem seu "ok" explicito.
  • โ€ขSandbox: a execucao acontece isolada, sem alcance ao resto.
  • โ€ขWhitelist e segredos: so voce e atendido; senhas ficam fora do alcance do modelo.

Conceitos-chave

Confirmacao

Acao perigosa so roda depois do seu "ok".

Sandbox

Caixa isolada onde o estrago fica contido.

Prompt-injection

Instrucoes maliciosas escondidas num texto que o agente le.

Zero-trust

Toda entrada e tratada como potencial ataque.

6

๐Ÿค Conectar = sair do "estranho"

Aqui fecha o circulo do modulo. Sem ferramentas, por melhor que seja o modelo, ele te trata como um estranho: nao sabe seu nome de verdade, nao sabe seus compromissos, nao sabe o que tem na sua caixa de e-mail. Ele responde no generico, no "em geral, voce poderia...". E util, mas e raso.

No momento em que voce conecta ferramentas com seus dados reais โ€” sua agenda, seu e-mail, seus arquivos โ€”, ele deixa de generalizar e passa a falar sobre a sua vida. "Voce tem dentista as 15h, quer que eu remarque a reuniao das 14h30?" Isso so e possivel porque ele consultou ferramentas. E o instante em que o chatbot vira, de fato, um assistente.

โœ— Sem ferramentas (o estranho)

  • โœ—"Em geral, recomendo organizar sua agenda assim..."
  • โœ—Nao sabe nada concreto sobre voce.
  • โœ—Responde bonito, mas no vacuo.

โœ“ Com ferramentas (o assistente)

  • โœ“"Vi que tens 3 reunioes hoje e o relatorio vence amanha."
  • โœ“Age sobre dados reais, seus.
  • โœ“Faz, nao so sugere.

๐Ÿงฌ Onde isso encaixa na Anatomia

As ferramentas sao a camada das maos. Mas elas trabalham junto com as outras camadas que voce ja viu e ainda vai ver:

  • โ€ขCanais (3.1): por onde voce fala com ele.
  • โ€ขIdentidade (3.2): quem ele e e o que lembra de voce.
  • โ€ขFerramentas (3.3, aqui): o que ele alcanca no mundo.
  • โ€ขSkills (3.4, a seguir): receitas que orquestram varias ferramentas.

Auto-checagem (opcional): por que se diz que o MCP e "o USB das ferramentas de IA"?

Conceitos-chave

Sair do "estranho"

Conectar dados reais transforma generico em pessoal.

Dados reais

Agenda, e-mail, arquivos: a materia-prima da utilidade.

Camada das maos

Ferramentas sao uma das 6 camadas da Anatomia.

Virar assistente

O salto final: de quem responde para quem faz.

๐ŸŽฏ Resumo do modulo

โœ“
Por que ferramentas โ€” o LLM sozinho so fala; ferramentas dao maos e olhos (web, arquivos, e-mail, agenda, shell).
โœ“
Function-calling โ€” o modelo PEDE a funcao; o sistema executa e devolve o resultado pro loop. Pedir โ‰  executar.
โœ“
MCP, o USB das ferramentas โ€” padrao aberto (Anthropic, nov/2024); cada integracao e um servidor plugavel e auditavel.
โœ“
MCP > skills de terceiro โ€” auditavel e isolado; lembre das 341 skills maliciosas do OpenClaw.
โœ“
Confirmacao e sandbox โ€” acoes perigosas pedem "ok" e rodam contidas; toda entrada e potencial prompt-injection.
โœ“
Conectar = sair do estranho โ€” com dados reais, o chatbot vira assistente de verdade.

Proximo modulo:

3.4 โ€” Skills: habilidades empacotadas (receitas que orquestram as ferramentas que voce acabou de conhecer)