Integração · MCP
Seu robô já manda as mensagens. Eu digo o que escrever nelas.
Se você tem prospecção automatizada — n8n, Make, um agente próprio, um bot de WhatsApp — ela pode me perguntar antes de enviar: como abordar este lead, como virar esta objeção, como fazer este follow-up. São vinte minutos de configuração e um cabeçalho de autorização.
O que muda na prática
Sem a B.IA
“Olá! Tudo bem? Espero que sim 😊 Me chamo João e trabalho com soluções de marketing digital. Vi que a sua empresa tem muito potencial e gostaria de apresentar nossos serviços. Podemos conversar?”
Reconheceu? É o que todo robô escreve, e por isso é o que todo mundo ignora.
Com a B.IA
“Oi, Marina. Vi seu post de ontem sobre a agenda vazia nas terças e quintas — é bem específico isso, e normalmente tem solução sem precisar de mais anúncio. Posso te mandar duas ideias por aqui?”
Mesmo robô, mesma lista. A diferença é a frase, e a frase é a venda.
Pegar a chave
Entre em Configurações → Ligar a B.IA no seu robô e crie uma chave. Dê a ela o nome do lugar onde vai morar — “n8n da prospecção” — porque daqui a três meses você vai querer revogar uma delas e vai precisar saber qual.
Ela aparece uma vez só. Depois disso existe apenas o hash no nosso banco: nem nós conseguimos mostrá-la de volta. Copie antes de fechar o painel.
O teste de trinta segundos
Antes de montar workflow nenhum, confirme que a chave funciona. Cole isto no terminal trocando a chave:
curl -X POST https://biadevendas.com.br/api/mcp \
-H "Authorization: Bearer bia_live_SUA_CHAVE" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "tratar_objecao",
"arguments": {
"cliente_disse": "achei bem salgado, o cara que fazia cobrava metade",
"contexto": "Proposta de gestão de tráfego, R$ 3.500/mês"
}
}
}'Voltou um JSON com structuredContent.message dentro? Pronto, o resto é encanamento. Voltou 401? A chave está errada ou foi revogada. Voltou 402? A conta está no gratuito, ou a cota do mês acabou.
Quer só ver quais ferramentas existem, sem gastar nada? tools/list responde sem chave — é de propósito, para você inspecionar o servidor antes de configurar qualquer coisa.
Ligar na sua ferramenta
O n8n fala MCP nativo. Você não precisa montar o JSON na mão: o nó descobre as ferramentas e o seu agente escolhe qual usar.
- No seu workflow, adicione o nó MCP Client Tool e ligue na entrada Tool do seu AI Agent.
- Server Transport: HTTP Streamable. (A opção SSE é a antiga e está marcada como obsoleta no próprio n8n.)
- MCP Endpoint URL: o endereço completo, com
/api/mcpno fim. - Authentication: Bearer Auth. Crie a credencial e cole a chave sem escrever “Bearer” na frente — esse pedaço o n8n põe sozinho.
- Salve e abra a lista de ferramentas do nó. Se aparecerem as quatro, está ligado.
https://biadevendas.com.br/api/mcpNo Tools Agent o modelo escolhe a ferramenta pela descrição dela. Deixe no prompt do agente uma linha dizendo quando consultar a B.IA — “antes de escrever qualquer mensagem para um lead, chame a ferramenta de abordagem” — ou ele vai inventar a mensagem sozinho e só usar a B.IA quando travar.
Referência
As quatro ferramentas
Quanto mais específico o contexto, menos genérica a resposta. “Cliente achou caro” devolve conselho de livro; “proposta de R$ 3.500/mês, ele compara com um freelancer, já fizemos uma call” devolve a pergunta certa para aquele cliente.
abordagemAntes do primeiro contato.leadobrigatório- Quem é a pessoa. Cargo, negócio, cidade — o que você tiver.
canalopcional- WhatsApp, Instagram, e-mail, LinkedIn. Muda o tamanho e o tom.
sabe_sobreopcional- O gancho. Um post recente, uma vaga aberta, uma loja nova.
lead_idopcional- O id dele no seu sistema. Liga a memória — veja abaixo.
tratar_objecaoO cliente travou em alguma coisa.cliente_disseobrigatório- O que ele escreveu, nas palavras dele. Copie, não resuma.
contextoopcional- Qual proposta, qual valor, o que já rolou antes.
lead_idopcional- O id dele no seu sistema.
follow_upEle parou de responder.historicoobrigatório- O que já aconteceu nessa conversa, em uma ou duas linhas.
dias_sem_respostaopcional- Número. Três dias e vinte dias pedem mensagens diferentes.
lead_idopcional- O id dele no seu sistema.
esquecer_leadO negócio fechou, ou morreu.lead_idobrigatório- Apaga a memória desse lead. Não gasta mensagem.
O que volta
Sempre o mesmo formato, nas quatro ferramentas. O campo que você manda para o cliente é message; os outros são para o seu agente decidir o que fazer depois.
{
"message": "o que enviar, palavra por palavra",
"interpretation": "o que a frase dele provavelmente esconde",
"strategy": "por que esta mensagem e não outra",
"nextStep": "o que fazer com a resposta dele",
"warnings": ["o que não dizer", "..."]
}Leia os warnings antes de deixar o seu agente improvisar em cima do texto. Eles são a parte que evita a besteira cara — o desconto oferecido antes da hora, o “mas o nosso é melhor” que transforma uma conversa em discussão.
A parte que ninguém faz
Mande o lead_id. É o que separa um follow-up de um incômodo.
Sem ele, cada chamada é um estranho: no quarto follow-up o seu robô recebe o mesmo ângulo da primeira mensagem — porque, do nosso lado, era a primeira. Quem percebe é o lead, e o que ele faz é bloquear.
Passe o id que você já tem — o do CRM, o telefone, um uuid. Ele é opaco para nós; quem decide o que é “o mesmo lead” é você, e isso está certo: só você sabe se dois telefones são a mesma pessoa.
2ª mensagem
Puxa pelo gancho que ainda não foi usado, e lembra que a primeira abordagem falou de agenda.
4ª mensagem
Muda de porta e oferece a saída honesta — “me fala só um ‘agora não’ que eu paro de te chamar” — porque três tentativas sem resposta já disseram algo.
Guardamos resumo, não arquivo: um recorte da situação e a mensagem sugerida, as doze últimas. Quando o negócio fecha ou morre, chame esquecer_lead — não gasta mensagem e apaga tudo daquele lead.
Cota, limite e preço
- Cada chamada bem-sucedida vale uma mensagem da sua cota, a mesma do chat. Chamada que falha não desconta.
esquecer_leadetools/listnão gastam nada — não chamam o modelo.- A cota renova na data da sua assinatura, não no dia 1º. Assinou dia 15, renova dia 15.
- É dos planos pagos. Um robô faz centenas de chamadas por dia; no gratuito ele gastaria as mensagens em segundos — e aí o guia não serviria para nada.
- Até cinco chaves vivas por conta. Revogar libera vaga, e o que estiver usando a chave revogada para de funcionar na hora.
Quando dá errado
-32001A chave não veio, ou não existe mais.
Confira o cabeçalho e se a chave não foi revogada.
-32002A conta está no plano gratuito.
A conexão por API é dos planos pagos.
-32003A cota de mensagens acabou.
Renova na data da sua assinatura, ou troca de plano.
-32004Muitas chamadas em pouco tempo.
Respeite o cabeçalho Retry-After; um robô em loop bate aqui.
-32005A conta está suspensa.
Entre em contato — a chave volta a funcionar com a conta.
-32602Faltou um campo obrigatório.
A mensagem do erro diz qual.
isErrorA ferramenta rodou e o modelo falhou.
Tente de novo na próxima; não derruba a conversa.
A última linha é de propósito. Erro de JSON-RPC quer dizer “a chamada não aconteceu”; isError quer dizer “a ferramenta rodou e deu ruim”. Seu agente pode tentar de novo na segunda sem derrubar a conversa inteira.
Para quem já conhece MCP
- Falamos a revisão 2026-07-28 e também as anteriores (2025-11-25, 2025-06-18, 2025-03-26).
- Sem sessão. A partir da 2026-07-28 o MCP é stateless: não há handshake,
Mcp-Session-Idnem stream de GET. Na prática é umPOSTcom JSON-RPC 2.0. Oinitializecontinua respondido, para cliente antigo conectar. - Chave no cabeçalho, não OAuth. A especificação recomenda OAuth 2.1 e permite, com todas as letras, que cliente e servidor combinem a própria estratégia. Nenhum n8n faz fluxo de consentimento com PKCE; uma chave é o que essas ferramentas sabem usar.
Antes de ligar no robô, vale sentir como eu respondo.
No simulador eu faço o cliente difícil, você responde, e no fim eu mostro onde escorregou. É a mesma cabeça que vai atender as chamadas do seu agente — de graça, sem cartão.