MCP_PUSH_CREDENTIALS_ENABLED=true. Essa opção libera somente a configuração de FCM, APNs e Web Push para chaves com push_providers.write e a função de gerenciamento de provedores; mensagens e administração podem continuar desabilitadas. Consulte account_get.credential.features.push_credentials e project_get.capabilities.push.apps.configure_provider_credentials. Sem essa opção, a configuração acompanha o sinalizador de mensagens existente; um false explícito a desabilita.
A fase 2 usa a flag independente MCP_MESSAGING_ENABLED. A descoberta de ferramentas e project_get mostram o acesso disponível. Chaves existentes não recebem novas permissões automaticamente. O proprietário seleciona escopos em Conta → Chaves pessoais; vínculos de equipe, projetos autorizados e papéis atuais continuam sendo verificados. Cobrança, planos, pagamentos, créditos, faturas e gestão de assinaturas ficam excluídos.
Comece com account_get, teams_list, projects_list({team_id}) e project_get({project_id}). Informe project_id em toda chamada de projeto. No SDK, use projectId; na API, X-Sendrealm-Project-Id. Nas novas operações, use o UUID id do app push, separado do ID público usado pelo SDK do dispositivo.
Revisar e confirmar
- Crie ou edite rascunhos de templates e campanhas de email, push ou ambos os canais. Leia o conteúdo detalhado antes de editar. Campos omitidos são preservados;
messagessubstitui a lista de idiomas. - Confira conteúdo renderizável, domínio verificado, provedores, targeting e destinatários alcançáveis. Audiência vazia nunca significa todos.
all_contactsprecisa ser explícito e preserva restrições de assinatura e supressão. - Use
<operação>_preparee revise o input salvo, os destinatários e as consequências. A preparação expira em dez minutos e vincula usuário, chave, versão das permissões, projeto e versões dos recursos. - Confirme com
project_id,prepared_action_ide umaidempotency_keyestável. Inputs diferentes exigem nova revisão. As ferramentas existentes de ciclo de vida de templates/automações também mantêm o argumentoiddo recurso. - Nas novas operações, acompanhe o recibo com
project_operations_get, respeitandopoll_after_ms.completedconfirma a operação solicitada; uma campanha pode ter entrado em revisão sem ainda ter sido entregue.
campaigns_send e equivalentes solicitam o primeiro envio permitido pela revisão, atualmente com pelo menos cinco minutos de antecedência. Cancelamento só está disponível antes do processamento; mensagens já enviadas não podem ser recuperadas. Apenas rascunhos podem ser arquivados. Para sincronizar targeting entre os canais, use cross_channel_campaigns_update; divergências bloqueiam o envio.
Retries com a mesma preparação e chave de idempotência retornam o recibo original. Workers revalidam acesso, conteúdo e versões; revogação, mudança de papel, perda de vínculo ou alteração de permissões podem interromper trabalho enfileirado. O status outcome_unknown exige inspeção do recurso e histórico e reconciliação com suporte: não crie outra preparação para repetir um efeito incerto.
Permissões e segurança
- Templates:
templates.write,templates.publish,templates.delete; testes reais de email usamtemplates.test.sende testes push usampush.test.send. - Campanhas:
campaigns.draft.writepara rascunhos;campaigns.deliverpara preparar/confirmar envio, agendamento e cancelamento;campaigns.deletepara arquivar. - Automações:
automations.publishpara publicar/pausar/retomar eautomations.deletepara excluir. Recuperação de execuções usaautomation_runs.manage, preparação e motivo de auditoria. - Domínios:
domains.writepara criação, verificação, configuração, transferência e DNS;domains.deletepara exclusão. - Push:
push_apps.delete,push_channels.write,push_channels.deleteepush_providers.writesão permissões separadas. - Diagnósticos:
diagnostics.readpara mensagens, Live Activities de produção, entregas de automação, feed de eventos, eventos do dispositivo e analytics. Descoberta usaresources.read; status do Cloudflare também exige capacidade atual de gerenciar domínios.
automation_effects: "trigger" exige também automations.trigger e capacidade atual de gerenciar automações. Política e identidade acompanham filas e eventos derivados, inclusive replay. Testes sandbox continuam sem envio; os testes existentes de um dispositivo e de Live Activity mantêm seu fluxo e test_id próprio. Novos testes de templates exigem preparação.
Configure FCM, APNs e Web Push diretamente com push_providers_configure_fcm, push_providers_configure_apns e push_providers_configure_web, usando push_providers.write. Os campos de credenciais são somente de escrita, passam pela validação do dashboard e não entram em preparações, recibos ou respostas. Confira push_providers_list depois. O handoff de configuração continua opcional; a autorização OAuth do Cloudflare usa domains_cloudflare_authorize e acompanhamento com project_handoffs_get. Códigos OAuth permanecem no navegador. OAuth para autenticação MCP continua adiado.
Assets usam o armazenamento existente: obtenha upload_url/file_key, envie bytes por PUT e finalize com o mesmo recurso e chave. Upsert de canal segue substituição do dashboard: valores opcionais omitidos podem ser limpos; importância high, vibração true, visibilidade public e is_default: false são os padrões. Leia o canal antes de preparar a alteração.
O SDK oferece métodos tipados em client.projectOperations, paginação com metadados e ausência de retry automático para mutações. Preserve filtros e cursores; use respostas detalhadas para conteúdo e traces. Os fluxos funcionam como ferramentas MCP comuns em Streamable HTTP e stdio, sem exigir MCP Tasks. Veja referência completa e exemplo SDK.