BroadNet
O JornalEngenharia
Engenharia

MCP para mensagens: como agentes de IA podem enviar SMS e WhatsApp com segurança

Um servidor MCP transforma uma API de mensagens em ferramentas para um agente de IA. Isso é poderoso e arriscado: um agente com ferramenta de envio pode contactar clientes reais. Veja como o MCP funciona para SMS e WhatsApp, como conectar ao servidor da BroadNet e as proteções necessárias.

BroadNet Engineering
11 min de leitura
Engenharia · Edição 47
11 min de leitura

m servidor MCP para mensagens expõe uma API de mensagens como ferramentas que um agente de IA pode descobrir e chamar por meio do Model Context Protocol, para que um assistente possa enviar uma SMS ou uma mensagem de WhatsApp a pedido. O BroadNet executa um em https://mcp.broadnet.me/mcp, usando o transporte Streamable HTTP e um token Bearer, sobre o mesmo API que atende WhatsApp, SMS, RCS, Telegram, Push, Email, Messenger e Instagram. Este guia explica como isso funciona e, mais importante, como impedir que um agente envie mensagens para as pessoas erradas.

Principais conclusões

  • O MCP é um protocolo aberto, construído sobre o JSON-RPC 2.0, que permite que aplicações de IA descubram e chamem ferramentas externas. Um servidor de MCP de mensagens transforma os endpoints de envio, modelo e relatório em ferramentas.
  • Servidores remotos usam o transporte Streamable HTTP: um endpoint HTTPS, cada mensagem de cliente um POST HTTP. Servidores locais geralmente usam stdio.
  • O servidor MCP BroadNet está em https://mcp.broadnet.me/mcp e recusa qualquer solicitação sem um cabeçalho Authorization: Bearer.
  • Um token é uma credencial de envio. O agente atua com as suas permissões, exatamente como o seu próprio código faria.
  • A especificação MCP diz que DEVERIA sempre haver um humano no ciclo que possa negar chamadas de ferramentas, e que os servidores DEVEM limitar a taxa de invocações de ferramentas. Construa consentimento, horário de silêncio, limites e aprovações em torno de cada ferramenta de envio.

O que é o Model Context Protocol?

A especificação MCP descreve MCP como "um protocolo aberto que permite a integração contínua entre aplicações de LLM e fontes de dados e ferramentas externas". Ele utiliza mensagens JSON-RPC 2.0 entre três funções: hosts (a aplicação de IA), clientes (conectores dentro do host) e servidores (serviços que fornecem ferramentas, recursos e prompts). A partir de 26 de setembro de 2026, a revisão mais recente da especificação está datada de 2026-07-28.

Ferramentas são a parte que importa para mensagens. Um cliente as lista com tools/list, o modelo escolhe uma, e o cliente a invoca com tools/call. A especificação chama as ferramentas de "controladas pelo modelo": o modelo decide quando usá-las. É exatamente por isso que uma ferramenta de envio precisa de salvaguardas das quais o modelo não consiga contornar por meio de conversa.

Como funciona um servidor MCP para SMS e WhatsApp?

O caminho da solicitação possui cinco saltos. O ponto de design é que o servidor MCP não adiciona nenhum novo poder de envio; ele expõe o API que você já possui, sob o mesmo token e sob os mesmos controlos.

  1. Um utilizador faz uma pergunta à IA hospedeira, por exemplo: "envie a atualização de entrega para este cliente em WhatsApp".
  2. O modelo escolhe uma ferramenta da lista que o cliente MCP recuperou, como uma ferramenta de envio WhatsApp, e preenche os seus argumentos.
  3. O cliente MCP envia uma requisição tools/call como um POST HTTP para https://mcp.broadnet.me/mcp com o token Bearer.
  4. O servidor MCP BroadNet valida o token e chama o endpoint API BroadNet correspondente.
  5. O API encaminha a mensagem para WhatsApp ou para a rede móvel e devolve um resultado, que viaja de volta para o modelo como o resultado da ferramenta.

Na gravação da demonstração da equipa de produto, o cliente lista 380 ferramentas BroadNet, entre elas send_message, post_sms_send, post_whatsapp_message_send, get_whatsapp_template_list, post_whatsapp_template_send, post_rcs_message_send e get_report_delivery. A lista exata depende da versão do servidor e da sua conta; consulte a documentação do servidor MCP.

Streamable HTTP ou stdio: qual transporte?

A especificação define dois transportes padrão. Qual você utiliza depende de onde o servidor é executado, e isso decide como você se autentica.

stdioStreamable HTTP
Onde o servidor é executadoComo um subprocesso lançado pelo cliente, na mesma máquinaComo um serviço independente alcançou mais de HTTPS
Como as mensagens viajamJSON-RPC delimitado por nova linha sobre entrada e saída padrãoCada mensagem de cliente é um POST HTTP para um único endpoint MCP; as respostas regressam como JSON ou um fluxo de eventos enviados pelo servidor (server-sent-events)
Como as credenciais funcionamA especificação diz que os servidores stdio deveriam ler as credenciais do ambienteUm cabeçalho Authorization: Bearer em cada requisição; os tokens nunca devem ir na string de consulta (query string)
Uso típicoFerramentas de desenvolvedor locaisServiços alojados partilhados por muitos clientes, como um API de mensagens
BroadNetNão oferecidohttps://mcp.broadnet.me/mcp

Para os servidores HTTP, a revisão de 2025-06-18 da especificação também exige que os servidores validem o cabeçalho Origin e recomenda que eles autentiquem cada conexão. A revisão mais recente (2026-07-28) torna cada solicitação autocontida, carregando a versão do protocolo e as capacidades do cliente nos seus próprios metadados; revisões anteriores abriam uma sessão com um handshake de inicialização, e os clientes detetam qual revisão um servidor utiliza e fazem o fallback.

Como você conecta um agente de IA ao servidor de MCP da BroadNet?

  1. Obtenha um token da sua conta BroadNet. No portal BroadAdmin, em Integrações, depois em MCP Integração, são emitidas chaves temporárias; uma chave permanente é fornecida pelo administrador da sua conta ou pela conta mestre.
  2. Adicione o servidor ao seu cliente MCP. A maioria dos clientes utiliza uma configuração JSON como a mostrada abaixo. Os nomes dos campos variam ligeiramente entre os clientes, portanto, verifique a documentação do seu cliente.
  3. Mantenha o token fora dos ficheiros que você commita. Use o suporte a variáveis de ambiente do seu cliente, como faz a configuração abaixo.
  4. Abra a lista de ferramentas e desligue cada ferramenta que o agente não precisa.
  5. Teste com uma mensagem para um número que você possui antes de permitir que o agente se aproxime dos dados do cliente.
snippet
{
"mcpServers": {
"broadnet": {
"type": "http",
"url": "https://mcp.broadnet.me/mcp",
"headers": {
"Authorization": "Bearer ${BROADNET_TOKEN}"
}
}
}
}

Para testar a conexão sem um cliente, envie a solicitação de inicialização você mesmo:

snippet
curl -X POST https://mcp.broadnet.me/mcp \
-H "Authorization: Bearer $BROADNET_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2025-06-18","capabilities":{},
"clientInfo":{"name":"curl","version":"1.0"}}}'

Sem o cabeçalho, o servidor recusa a chamada no nível do protocolo. Esta é a resposta real do servidor a uma solicitação de inicialização não autenticada, verificada em 26 de setembro de 2026:

snippet
event: message
data: {"jsonrpc":"2.0","id":1,"error":{"code":-32001,
"message":"Authorization bearer token is required. Connect with an
'Authorization: Bearer <BroadNet token>' header."}}

É seguro fornecer uma chave de API de mensagens a um agente de IA?

Apenas com limites ao redor dele. O token é uma credencial de envio: qualquer pessoa, ou qualquer agente, que o possua pode enviar mensagens da sua conta, e cada envio custa dinheiro e alcança uma pessoa real. Agentes também atuam com base em instruções de linguagem natural, e parte desse texto vem de fora: uma mensagem de cliente de entrada ou uma página da web pode conter instruções que o modelo pode tentar seguir. A especificação MCP é direta sobre isso. Ela diz que os hosts devem obter consentimento explícito do utilizador antes de invocar qualquer ferramenta, que DEVERIA (SHOULD) sempre haver um humano no ciclo com a capacidade de negar invocações de ferramentas, e que os clientes devem tratar as anotações de ferramentas como não confiáveis, a menos que venham de um servidor confiável.

Quais guardrails impedem um agente de enviar spam para os clientes?

Coloque os controlos onde o modelo não possa ignorá-los: na configuração do cliente, no seu próprio middleware ou nas configurações da conta, não no prompt.

RiscoControloOnde reside
Enviar mensagens para alguém que não optou pela receçãoVerifique o consentimento e o status de opt-out antes de qualquer ferramenta de envio ser executadaO seu middleware ou CRM
Enviar à noite ou no dia erradoHorário de silêncio por fuso horário do destinatário e regras de mercadoO seu middleware
Usar ferramentas que a tarefa não necessitaHabilite apenas as ferramentas necessárias; desabilite as ferramentas de modelo, integração e contaConfigurações de ferramenta do cliente MCP
Loops descontrolados e envios em massaLimites de envio por agente e limites de taxa; a especificação exige que os servidores limitem a taxa de invocações de ferramentasO seu middleware e o servidor
Mensagens duplicadas após uma tentativa de reenvioMantenha o ID da mensagem devolvida e verifique o seu status antes de reenviarA sua lógica de agente (veja o guia de idempotência)
Marketing enviado sem revisãoAprovação humana para qualquer envio de marketing ou para múltiplos destinatáriosPrompts de confirmação do cliente MCP
Instruções ocultas em mensagens recebidasTrate o texto de entrada como dados; nunca permita que ele acione um envio sem uma solicitação do utilizadorDesign de prompt e regras de aprovação no host de IA
Token expostoChaves temporárias para experimentos, variáveis de ambiente, revogar e reemitir em caso de exposiçãoAdmin da conta BroadNet
Sem pista de auditoriaRegiste cada chamada de ferramenta com entradas e resultadosCliente MCP; a especificação diz que os clientes deveriam registar o uso de ferramentas

O BroadNet API não possui um cabeçalho de idempotência, portanto, uma tentativa de reenvio após um timeout pode enviar duas vezes. O padrão seguro é armazenar o ID da mensagem que o API devolve e verificar o status de entrega antes de reenviar; os nossos guias de idempotência e tentativas de reenvio mostram como.

Quais ações de mensagens devem precisar de aprovação humana?

AçãoPadrão sugeridoPorquê
Ler relatórios de entrega, listar modelosAutomáticoSomente leitura; nada chega ao cliente
Uma mensagem transacional para um cliente conhecido que a solicitouAutomático dentro de um limite de envio, ou confirmação com um cliqueBaixo risco, alto valor, fácil de auditar
Qualquer mensagem de marketingSempre aprovação humanaRisco de consentimento, conteúdo e custo
Qualquer envio para mais de um destinatárioSempre aprovação humanaUm erro se multiplica
Criando ou enviando modelos WhatsAppAprovação humanaOs modelos são revisados por Meta e representam a sua marca
Ferramentas de conta, faturação ou integraçãoDesativadoUm agente não deve alterar a conta na qual ele opera

MCP ou um REST API simples: qual um agente deve usar?

Ambos alcançam a mesma plataforma. A diferença é quem decide qual chamada fazer.

Servidor BroadNet MCPBroadNet REST API
Quem escolhe a chamadaO modelo, da lista de ferramentasO seu código
Endpointhttps://mcp.broadnet.me/mcphttps://api.broadnet.me, por exemplo POST /sms/sendSms
AutenticaçãoAuthorization: Bearer <token>Authorization: Bearer <token>
Biblioteca do clienteQualquer cliente MCP que suporte servidores remotos e um cabeçalho Authorization personalizadoUm SDK oficial, @broadnet/cpaas-sdk (TypeScript/Node.js); gere outros clientes a partir da especificação OpenAPI
Melhor paraAssistentes, copilotos de operações, tarefas ad-hoc em linguagem naturalFluxos de produção com lógica fixa: OTP, alertas, campanhas

Uma divisão sensata: use MCP onde uma pessoa está a direcionar o agente e um prompt de confirmação é aceitável, e use o REST API, com o guia de início rápido e o gerador de curl, para fluxos que devem ser executados da mesma maneira todas as vezes. Nossa referência API documenta os endpoints por trás das ferramentas MCP.

Perguntas frequentes

O que é um servidor MCP para mensagens?

Um servidor que expõe uma API de mensagens, como enviar SMS, enviar mensagem WhatsApp ou obter relatório de entrega, como ferramentas que um agente de IA pode descobrir e chamar por meio da Model Context Protocol.

Qual é a URL do servidor BroadNet MCP?

https://mcp.broadnet.me/mcp. Ele utiliza o transporte MCP Streamable HTTP e requer um cabeçalho Authorization: Bearer com o seu token BroadNet em cada requisição.

Quais clientes de IA podem se conectar a ele?

Qualquer cliente MCP que possa se conectar a um servidor remoto via Streamable HTTP e enviar um cabeçalho Authorization personalizado. A gravação da demonstração BroadNet utiliza Cursor.

O agente pode enviar mensagens reais?

Sim. As ferramentas atuam com as permissões do seu token, exatamente como as suas próprias chamadas API fariam. Trate cada envio como real: habilite apenas as ferramentas que o agente precisa e exija confirmação antes dos envios.

Como funciona a autenticação Bearer com MCP?

Para HTTP, o cliente envia Authorization: Bearer seguido pelo token em cada requisição, mesmo dentro da mesma sessão, e nunca na string de consulta da URL. O servidor da BroadNet rejeita requisições sem ele.

Qual é a diferença entre stdio e Streamable HTTP?

stdio executa o servidor como um subprocesso local e troca JSON-RPC delimitados por nova linha através da entrada e saída padrão. Streamable HTTP executa o servidor como um serviço web onde cada mensagem de cliente é um POST HTTP para um único endpoint.

Como eu impeço um agente de IA de enviar spam para os clientes?

Aplique verificações de consentimento, horário de silêncio e limites de envio fora do modelo, habilite apenas as ferramentas que você precisa, exija aprovação humana para mensagens de marketing e envios para múltiplos destinatários, e registe cada chamada de ferramenta.

Eu deveria usar MCP ou o REST API?

Use MCP quando uma pessoa direciona um agente em linguagem natural. Use o REST API ou o TypeScript SDK para fluxos de produção fixos, como OTP e alertas, onde o seu código, e não um modelo, decide o que enviar.

Fontes

Leitura relacionada: agentes de IA em mensagens de atendimento ao cliente e escolhendo uma plataforma de IA de agentes empresariais.

Isso foi útil?

Como escrevemos e revemos os conteúdos

Escrito por

BroadNet Engineering

A equipa de engenharia opera a rede: conexões SMPP , protocolos SS7 , mecanismos de encaminhamento, a infraestrutura tediosa que torna possível um mês com mil milhões de mensagens. Eles escrevem aqui quando algo vale a pena ser registado.

O jornal, por e-mail

Um ensaio por mês. Nada mais.

Assine e enviaremos o próximo conteúdo — sobre engenharia, regulamentação ou indústria — no mesmo dia em que for publicado. Sem campanhas de e-mail marketing, sem propaganda de produtos, sem partilha com terceiros. Cancele a assinatura com um clique.

Enviamos um e-mail por mês. Cancele quando quiser. Veja nossa política de privacidade.

O que você vai receber
  • Texto longo, não isca para cliques
    De seis a onze minutos de escrita concentrada sobre um único tópico.
  • Escrito por operadores
    Engenheiros, responsáveis pela área regulatória e redação de produtos, tudo feito internamente.
  • Consciente da região
    Uma visão sobre reguladores, operadores e mix de canais com base na região MENA.
  • Uma vez por mês
    Sem campanhas de gotejamento. Um ensaio quando houver apenas um para partilhar.
Pare de ler. Comece a enviar.

A maior parte do que escrevemos aprendemos na prática.

Se você se identificou com este texto, provavelmente deveríamos conversar. Traga o seu caso de uso, os volumes, os mercados — e nós apresentaremos encaminhamento, preços e um cliente de referência para você contactar.

$ curl -X POST https://api.broadnet.me/sms/sendSms