MCP — interface programática

Além do REST, o GetMyBot oferece uma interface MCP (Model Context Protocol) — voltada para agentes e assistentes de IA que invocam ferramentas em vez de chamar endpoints manualmente. O REST continua sendo a interface principal; o MCP é uma alternativa conveniente para cenários agênticos. Os nomes de ferramentas, recursos e prompts abaixo correspondem exatamente ao que o servidor publica.

Endereço e autorização

O MCP está disponível no endpoint /mcp (transporte Streamable HTTP, método POST). A autorização usa o mesmo token pessoal que o REST: cabeçalho Authorization: Bearer mbp_…. Não é necessário criar tokens separados — um único PAT funciona tanto para REST quanto para MCP. Cada ferramenta exige o mesmo scope que o endpoint REST correspondente; um token com scope * tem acesso completo. Se o scope for insuficiente, a chamada é rejeitada (fail-closed), assim como no REST.

Conexão com Claude Code / Cursor

Adicione o GetMyBot como servidor MCP remoto. Exemplo de configuração (mcpServers) — substitua seu domínio e token:

{
  "mcpServers": {
    "mybot": {
      "url": "https://seu-domínio/mcp",
      "headers": {
        "Authorization": "Bearer mbp_SEU_TOKEN"
      }
    }
  }
}

Claude Code: coloque este bloco no .mcp.json do projeto ou adicione o servidor com o comando claude mcp add. Cursor: adicione o mesmo bloco nas configurações MCP (Settings → MCP → Add server). Após a conexão, o cliente receberá automaticamente a lista de ferramentas, recursos e prompts.

Ferramentas por domínio

O servidor publica 100 ferramentas — cobertura completa do REST acessível via PAT. Abaixo: ferramenta e scope exigido. Nomes no formato verbo_substantivo (snake_case).

Bots (bots)

  • list_botsbots:read
  • get_botbots:read
  • validate_bot_tokenbots:write
  • connect_botbots:write
  • update_botbots:write
  • delete_botbots:write
  • sync_botbots:write
  • change_bot_tokenbots:write
  • transfer_botbots:write
  • get_bot_settingssettings:read
  • update_bot_settingssettings:write

Canais e templates de WhatsApp (bots)

O suporte multicanal (Telegram + WhatsApp + VK) também está disponível via MCP. Canais e templates são controlados pelos scopes compartilhados bots:read / bots:write — não há um scope de canal separado.

  • list_channelsbots:read — lista os canais de um bot (plataforma tg/wa/vk, external_id, nome, enabled, callback_url).
  • connect_channelbots:write — conecta um canal WhatsApp ou VK (platform + credenciais).
  • delete_channelbots:write — desconecta um canal.
  • list_wa_templatesbots:read — o catálogo de templates de WhatsApp do canal (nome, idioma, status, categoria, corpo).
  • sync_wa_templatesbots:write — ressincroniza o catálogo de templates com a Meta.
  • create_wa_templatebots:write — cria um template de WhatsApp e o envia à Meta para revisão.
  • update_wa_templatebots:write — edita um template (nos status APPROVED/REJECTED/PAUSED).
  • delete_wa_templatebots:write — exclui um template.

Os canais do Telegram são conectados via connect_bot, não via connect_channel — este último trata apenas de wa e vk. Categorias de template: MARKETING / UTILITY / AUTHENTICATION. O create_wa_template envia o rascunho imediatamente à Meta para revisão; o status muda de forma assíncrona — releia-o via list_wa_templates (atualizando o catálogo com sync_wa_templates, se necessário).

O envio de mídia de cabeçalho de um template (imagem/vídeo/documento) via MCP ainda não é suportado — use a interface web ou o REST POST /api/bots/{botID}/channels/{channelID}/templates/media.

Reações (reactions)

  • list_reactionsreactions:read
  • get_reactionreactions:read
  • create_reactionreactions:write
  • update_reactionreactions:write
  • delete_reactionreactions:write
  • import_reactionsreactions:write
  • test_formulareactions:write
  • reorder_reactionreactions:write
  • get_reaction_linksreactions:read
  • list_reaction_foldersreactions:read
  • create_reaction_folderreactions:write
  • update_reaction_folderreactions:write
  • delete_reaction_folderreactions:write
  • add_reaction_to_folderreactions:write
  • remove_reaction_from_folderreactions:write
  • add_reactions_to_folderreactions:write

A importação via import_reactions cria reações, mas ignora mídia: no contexto MCP não há verificação premium nem receptor Telegram para arquivos. Se o bundle SamBot contiver imagens, vídeos ou documentos, use a importação REST completa (POST /api/bots/{botID}/reactions/import), que também transfere a mídia.

Transmissões (broadcasts)

  • start_broadcastbroadcasts:write (opc. paid, opc. segmento por etiquetas)
  • get_broadcastbroadcasts:write
  • pause_broadcastbroadcasts:write
  • resume_broadcastbroadcasts:write
  • cancel_broadcastbroadcasts:write

Etiquetas (labels)

  • list_labelslabels:read
  • create_labellabels:write
  • delete_labellabels:write
  • set_label_favoritelabels:write

Coleções e registros (collections)

  • list_collectionscollections:read
  • create_collectioncollections:write
  • update_collectioncollections:write
  • delete_collectioncollections:write
  • list_recordscollections:read
  • create_recordcollections:write
  • update_recordcollections:write
  • delete_recordcollections:write

Cenários (flows)

  • list_flowsflows:read
  • get_flowflows:read
  • create_flowflows:write
  • update_flowflows:write
  • delete_flowflows:write

Integrações, conexões e credenciais (integrations)

  • list_integrationsintegrations:read
  • get_integration_sheetsintegrations:read
  • get_integration_statusintegrations:read
  • create_integrationintegrations:write
  • update_integrationintegrations:write
  • delete_integrationintegrations:write
  • rotate_integration_tokenintegrations:write
  • list_connectionsintegrations:read
  • create_connectionintegrations:write
  • test_connectionintegrations:write
  • update_connectionintegrations:write
  • delete_connectionintegrations:write
  • list_credentialsintegrations:read
  • create_credentialintegrations:write
  • update_credentialintegrations:write
  • delete_credentialintegrations:write

Mídia (media)

  • upload_mediamedia:write
  • get_mediamedia:write

Templates (templates)

  • list_templatestemplates:read
  • delete_templatetemplates:write
  • create_template_from_bottemplates:write
  • apply_templatetemplates:write

Assinantes, chats e diálogos — leitura (subscribers)

  • list_subscriberssubscribers:read (paginação offset/limit, filtros por etiquetas)
  • list_chatssubscribers:read
  • list_dialogssubscribers:read
  • read_dialogsubscribers:read
  • send_dialog_messagesubscribers:write
  • send_dialog_reactionsubscribers:write
  • transcribe_dialog_messagesubscribers:write

Estatísticas e análises (stats)

  • get_statsstats:read
  • get_stats_summarystats:read
  • get_stats_recentstats:read
  • get_stats_logstats:read
  • get_reaction_healthstats:read
  • get_analyticsstats:read
  • get_analytics_chatsstats:read
  • get_funnelstats:read

Faturamento — leitura (billing)

  • get_balancebilling:read
  • list_tariffsbilling:read
  • get_transactionsbilling:read

Envio de mensagens

  • send_messagebroadcasts:write — envia uma mensagem em nome do bot; o consumo de saldo é contabilizado automaticamente pelo dono do token.

Recursos

Além das ferramentas, o servidor oferece recursos — você pode lê-los para não precisar adivinhar a estrutura:

  • mybot://openapi.yaml — especificação OpenAPI completa (a mesma disponível em /openapi.yaml).
  • mybot://reference — referência compacta: lista de ferramentas com seus scopes e convenções (endereço base, paginação, formato de erros, limites).
  • mybot://schemas/reaction, mybot://schemas/trigger, mybot://schemas/action, mybot://schemas/flow, mybot://schemas/collection — esquemas JSON das configurações. Muito úteis para gerar reações (gatilho, condições, chats, ações), cenários e coleções de forma correta.
  • mybot://bots — lista dinâmica dos seus bots (contexto rápido sem chamar uma ferramenta).

Prompts

Cenários prontos (slash-comandos no cliente MCP):

  • setup_autoresponder — montar um bot autoresponder (argumentos: bot, tema/conjunto de perguntas).
  • segment_broadcast — transmissão para um segmento de etiquetas (argumentos: bot, etiquetas, reação/texto).
  • diagnose_reaction — descobrir por que uma reação não está disparando (lê a reação, o reaction-health e a ordem).
  • import_from_sambot — realizar a importação de um bundle SamBot e verificar o resultado.
  • weekly_report — resumo de estatísticas e análises do bot em um período.

Quando usar MCP e quando usar REST

  • Se você está construindo uma integração, sincronização, script ou painel próprio, use o REST.
  • Se você está conectando o GetMyBot a um assistente ou agente de IA compatível com MCP, use o /mcp.

Ambas as interfaces funcionam com o mesmo token e obedecem às mesmas permissões do dono. Se não encontrar uma ferramenta para determinada tarefa, o endpoint REST correspondente está sempre disponível na referência interativa.

Próximos passos