Nos últimos meses, muito se falou sobre o Model Context Protocol (MCP) — um novo padrão que promete transformar a forma como os agentes de IA interagem com ferramentas. Ao explorar o tema, ficou claro: apesar de simples, o MCP é incrivelmente poderoso.
Em resumo, o MCP é uma API padronizada que expõe conjuntos de ferramentas que podem ser conectadas a modelos de linguagem (LLMs), criando um ecossistema flexível para desenvolver agentes autônomos de maneira simplificada — até mesmo localmente no seu notebook.
Conteúdo
O que é o MCP e por que ele importa?
O MCP permite que ferramentas sejam descritas e disponibilizadas de forma padronizada para os LLMs. Com isso, você pode conectar diferentes “servidores MCP”, que representam ambientes com ferramentas (como acesso ao sistema de arquivos, navegadores, etc.), diretamente a um modelo de linguagem.
Isso significa que o LLM pode, por conta própria, chamar funções externas, tomar decisões com base nos resultados e executar tarefas autônomas — como navegar em sites, escrever arquivos, ou interagir com o ambiente local.
Como criar um Agente com MCP
Com o SDK da Hugging Face (@huggingface/inference
para JavaScript e huggingface_hub
para Python), é fácil transformar um cliente de inferência em um cliente MCP. Assim que conectado a um ou mais servidores MCP, o agente pode acessar as ferramentas disponíveis e começar a operar.
Na prática, um agente é apenas um loop que alterna entre chamadas de ferramentas e mensagens geradas por IA.
Exemplo funcional (via terminal):
Se você tem Node.js, pode testar assim:
bashCopiarEditarnpx @huggingface/mcp-client
Isso inicia um agente simples que se conecta a dois servidores locais MCP:
- Um servidor de sistema de arquivos (com acesso à sua Área de Trabalho);
- Um servidor baseado em navegador sandbox com Playwright e Chromium.
Você poderá interagir com o agente com comandos como:
Escreva um haicai sobre a comunidade Hugging Face e salve em um arquivo chamado
hf.txt
na minha Área de Trabalho.
Ou algo mais complexo, como:
Pesquise sobre provedores de inferência da HF no Brave Search e abra os três primeiros resultados.
Ferramentas, funções e chamadas estruturadas
Os LLMs modernos (como GPT-4, Claude, Mistral, entre outros) já foram treinados para chamadas de função, também chamadas de tool use. Uma ferramenta no MCP segue este formato:
jsonCopiarEditar{
"type": "function",
"function": {
"name": "get_weather",
"description": "Obtém a temperatura atual de uma localização.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Cidade e país, ex: São Paulo, Brasil"
}
}
}
}
}
A IA, ao identificar uma necessidade, chama a função, envia os parâmetros e recebe a resposta — tudo automaticamente, sem intervenção manual.
A estrutura do cliente MCP
O McpClient
, principal classe da implementação, conecta-se a servidores MCP e carrega as ferramentas disponíveis:
tsCopiarEditarexport class McpClient {
protected client: InferenceClient;
protected provider: string;
protected model: string;
private clients: Map<ToolName, Client> = new Map();
public readonly availableTools: ChatCompletionInputTool[] = [];
}
A cada conexão, ele utiliza o SDK oficial do MCP (@modelcontextprotocol/sdk/client
) para descobrir e integrar as ferramentas oferecidas.
Essas ferramentas são então passadas diretamente à API do LLM:
tsCopiarEditarconst stream = this.client.chatCompletionStream({
provider: this.provider,
model: this.model,
messages,
tools: this.availableTools,
tool_choice: "auto",
});
O Agente: uma implementação de 50 linhas
Uma vez com o cliente MCP e as ferramentas disponíveis, construir um agente é simples. A classe Agent
apenas estende o McpClient
e executa um loop enquanto a tarefa não for encerrada.
Esse loop:
- Envia mensagens ao LLM
- Escuta chamadas de ferramentas
- Executa as funções (via MCP)
- Alimenta novamente o modelo com os resultados
- Finaliza quando a IA declara que a tarefa foi concluída
Também foram implementadas duas ferramentas auxiliares para controle de fluxo:
task_complete
: indica que a tarefa foi concluídaask_question
: permite que a IA solicite mais informações ao usuário
Próximos passos e possibilidades
Com o MCP, surgem possibilidades interessantes:
- Testar modelos otimizados para chamadas de função, como:
mistralai/Mistral-Small-3.1-24B-Instruct-2503
Qwen/Qwen2.5-72B-Instruct
- Conectar com provedores variados, como:
- Nebius, Replicate, Together, Fireworks, Fal, etc.
- Rodar localmente com LLMs como llama.cpp ou LM Studio
- Estender com ferramentas próprias, seja em servidores locais ou futuros servidores MCP na nuvem
Tudo é open source e extensível — o código está disponível no GitHub:
👉 huggingface.js – pacote mcp-client
Conclusão
O Model Context Protocol (MCP) surge como uma peça-chave na evolução da IA agente, permitindo que modelos de linguagem operem com ferramentas reais de forma modular, segura e acessível.
Combinado com os Tiny Agents, o protocolo abre as portas para soluções locais, autônomas e personalizadas — seja para startups, desenvolvedores, empresas ou entusiastas da IA.
É o início de uma nova era da IA prática. E agora, ao alcance de qualquer notebook.