Como funciona
Uma ferramenta dá ao modelo uma forma estruturada de interagir com algo além da conversa. Ela costuma ter um nome, uma descrição, parâmetros de entrada e um resultado esperado. Por exemplo, uma ferramenta chamada buscar_pedido pode receber um identificador e devolver o estado de uma compra.
O modelo não precisa conhecer a implementação interna. O aplicativo que o hospeda interpreta a chamada, encaminha os parâmetros ao sistema responsável e apresenta o resultado de volta ao modelo. Na documentação do SDK oficial do Model Context Protocol, tools são operações chamadas pelo modelo, enquanto resources fornecem dados ao contexto e prompts são modelos de instrução escolhidos pelo usuário.
Uma ferramenta pode apenas ler informações, como consultar a previsão, ou alterar o mundo, como enviar uma mensagem, atualizar um cadastro ou iniciar uma compra. Por isso, a aplicação deve validar argumentos, limitar permissões e pedir confirmação para ações sensíveis. A descrição da ferramenta ajuda o modelo a escolher quando chamá-la, mas não substitui controles de segurança no servidor.
Exemplo prático
Imagine um assistente de atendimento de uma loja virtual. A pessoa pergunta onde está a encomenda. O agente chama consultar_entrega com o número do pedido, recebe a previsão da transportadora e explica o resultado em linguagem simples.
Se a pessoa pedir para trocar o endereço, o sistema pode chamar outra ferramenta, solicitar_alteracao_de_endereco. Como essa ação modifica um pedido, o fluxo pode pedir confirmação e verificar a identidade antes de executá-la. O agente não deve tratar uma resposta de consulta como se a alteração já tivesse sido feita.
Em um projeto de software, ferramentas parecidas podem ler arquivos, executar testes ou abrir uma solicitação de mudança. A resposta da ferramenta é evidência do que ocorreu; o modelo pode usá-la para decidir o próximo passo, mas precisa conferir erros e resultados incompletos.
Para que serve
Ferramentas conectam um agente a APIs, bancos de dados, serviços internos e comandos autorizados. Isso permite que a IA passe de explicar uma tarefa para realizá-la, sem embutir todas as integrações no próprio modelo.
A ferramenta deve ter escopo pequeno e claro. Uma operação específica, como listar_faturas, é mais fácil de controlar do que uma função genérica com acesso irrestrito ao banco. Registre quem fez a chamada, quais dados foram acessados e se houve alteração. Separe permissões de leitura e escrita, proteja credenciais e trate entradas externas como não confiáveis.
Uma ferramenta não é necessariamente inteligente: em geral, ela é uma função ou serviço convencional. A IA escolhe quando usá-la e interpreta a resposta; a lógica da operação continua sendo executada pelo software conectado. Essa separação facilita trocar o modelo sem reescrever cada integração e também deixa explícito onde aplicar validações, limites e aprovações humanas.