Skip to main content
Glama
SistemaIntegra

I-Bot MCP

Official

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
IBOT_DEVICENoFixa um aparelho padrão nas leituras (vazio = todos)
IBOT_DOMAINNoDomínio do painelibotzap.com.br
IBOT_SERVERNoNúmero do servidor do painel16
IBOT_API_KEYYesChave da API (necessária para as tools de status)
IBOT_PHONE_IDYesPhone ID do número 1 (necessário para as tools de status)
IBOT_ACCOUNT_IDYesID da conta (necessário para as tools de status)
IBOT_PHONE_ID_2NoPhone ID do número 2 (recomendado)
IBOT_SESSION_PATHNoCaminho alternativo do arquivo de sessão

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ibot_get_message_statusC

Consulta o status de entrega de uma mensagem enviada pelo I-Bot.

ibot_get_chat_statusA

Verifica o status do registro de um chat no I-Bot. Retorna: pending, fetched, done ou error. Quando done, inclui link do chat.

ibot_get_chat_linkA

Busca um contato existente no I-Bot pelo número de telefone. Usa a API interna do painel (sem navegador, <1s) e cai no Playwright se ela falhar. Tenta múltiplos formatos de número e cobre chats ativos e arquivados. Aceita filtro por aparelho (padrão: IBOT_DEVICE, ou todos) — o mesmo número pode existir em outro aparelho com conversa diferente. Retorna chat_id e link direto. NÃO envia mensagem. Requer a sessão do painel (rode ibot-mcp login primeiro).

ibot_batch_get_chat_linksA

Busca múltiplos contatos no I-Bot de uma vez. Usa a API interna do painel (sem navegador, ~1s por contato) e cai no Playwright se ela falhar. Aceita filtro por aparelho (padrão: IBOT_DEVICE, ou todos). Retorna lista com chat_id e link para cada contato encontrado.

ibot_read_messagesA

Lê o histórico de mensagens de um chat no I-Bot, incluindo as ANOTAÇÕES internas na mesma linha do tempo. Usa a API interna do painel (sem navegador, ~250ms) e cai no Playwright se ela falhar. O histórico completo é acessível: aumente o limit e a resposta avisa quando ainda há mensagem mais antiga. Requer session.json (execute login.js primeiro).

ibot_download_mediaA

Baixa mídia (áudio/imagem/vídeo/documento) das mensagens do I-Bot para o disco local. Passe as URLs do campo arquivo.url que ibot_read_messages retorna. Não requer sessão nem login: o S3 do painel exige apenas o header Referer (medido 29/08/2026). Se a URL registrada falhar, tenta as pastas alternativas do bucket (received/sent/attached/unattached). Retorna caminho e tamanho de cada arquivo salvo.

ibot_list_chatsA

Lista e filtra chats do painel I-Bot. Usa a API interna do painel (sem navegador, ~1s; 250 chats em 1,8s) e cai no Playwright se ela falhar. Filtra por APARELHO (padrão: IBOT_DEVICE; vazio = todos), status, não lidas, arquivados, favoritos, tag, nome e número. Retorna nome, status, tags, aparelho, última mensagem, timestamp e não lidas. O retorno SEMPRE diz qual corte ocorreu (fim real da lista / teto do painel / limite pedido) — nunca corta em silêncio. TETO: a API interna PAGINA (medido 17/08/2026: 250 chats distintos numa consulta), mas o Playwright de fallback trava em 100 POR CONSULTA sem paginação (medido 14/08/2026: nenhum limit/offset traz o chat 101) — se o retorno avisar teto do painel, varrer além exige FATIAR por filtro e cruzar wa_chat_id. FORÇA DOS EIXOS, medida em produção: device é o mais forte (cada aparelho é uma janela própria; único jeito de isolar o inbound de UM número) > department (que é TAG, uma janela por tag) > status × order_by, que satura rápido — cruzar 6 status × 8 ordenações bate o teto em quase toda fatia e deixa um MIOLO inalcançável. Três armadilhas medidas: (1) whatsapp_number dá FALSO NEGATIVO — o chat existe, wa_chat_id igual ao buscado, e a busca volta vazia; a causa é o filtro de arquivados ser EXCLUSIVO (numa conta madura quase todo o histórico está arquivado), e leads já foram dados como 'sem chat' tendo chat ABERTO. Pela API interna isso está resolvido (busca por número que não acha nada refaz o pass entre arquivados e avisa), mas no fallback Playwright a armadilha continua: nunca conclua 'não tem chat' sem repetir com archived=true; (2) a ordenação padrão é por última mensagem, que AFUNDA o chat sem resposta (a última mensagem é a do cliente, antiga) — para caçar conversa parada sem dono use '-created', e para achar quem nem isso alcança use 'updated' (ascendente), que foi o que revelou leads invisíveis a 4 ciclos de varredura; (3) o nome do contato aqui é o do WhatsApp, não o do CRM ('.', '', nome de empresa) — buscar pelo nome que está no CRM dá falso negativo. SEMPRE rode um controle positivo (um chat de estado já conhecido) na mesma virada: sem ele não há como distinguir 'não existe' de 'a fatia não alcança'.

ibot_read_custom_fieldsA

Lê os campos personalizados de um chat no I-Bot (Empresa, Email, CRM, etc). Usa a API interna do painel — não abre navegador. Latência: <1s. Requer session.json (execute login.js primeiro).

ibot_read_tagsA

Lê as tags aplicadas a um chat no I-Bot. Usa a API interna do painel — não abre navegador. Latência: <1s. Requer session.json.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 9 tools

Disambiguation4/5

Each tool maps to a distinct target: message status, chat status, chat lookup, batch lookup, message history, media download, chat listing, custom fields, and tags. The only mild overlap is ibot_get_chat_status vs ibot_get_chat_link (both keyed on a chat) and get_chat_link vs its batch sibling, but the descriptions clearly separate them (status of a registration vs resolving a phone number to a chat_id/link).

Naming Consistency5/5

All nine tools use the same ibot_ prefix plus a consistent snake_case verb_noun pattern (get_chat_status, read_messages, list_chats, download_media). The verb choice is semantically appropriate in each case (get/read/list/batch) rather than arbitrary, with no style mixing.

Tool Count5/5

Nine tools is well within the ideal 3-15 range and each one covers a distinct capability of the panel (chats, messages, media, tags, fields, status, lookup, bulk lookup). Nothing appears redundant or padded.

Completeness3/5

The read surface is thorough: chats, message history (including internal notes), media, tags, custom fields, delivery and registration status, plus a batch variant for lookups. However the set is entirely read-only — there is no send-message, tag/custom-field write, archive, or mark-as-read operation, which is a notable gap for a WhatsApp bot panel (ibot_get_chat_link explicitly notes it does not send messages, implying no send tool exists).

Maintenance

ActivityMaintained
ResponsivenessNo issues