MailFixture
Caixas de entrada de e-mail e SMS apenas para recebimento, para testes automatizados, com ferramentas de aguardar-OTP e aguardar-link que permitem que agentes completem fluxos de verificação.
Documentação
Teste de e-mail via MCP: Início rápido — mailfixture
mailfixture docs
Pesquisar docs…⌘K
NAVEGAÇÃO DA DOCUMENTAÇÃO
PRIMEIROS PASSOS
Início rápido: Playwright Início rápido: Cypress Início rápido: pytest Início rápido: SMS Início rápido: agentes MCP
Teste automatizado de e-mail Teste paralelo de e-mail SMTP falso vs. caixa de entrada de teste Depurando um e-mail ausente Teste de e-mail com Playwright Teste de e-mail com Cypress Teste de e-mail com pytest Teste de e-mail com Selenium Teste de fluxo de cadastro Testando fluxos de OTP Testando verificação de e-mail Testando links mágicos Testando redefinição de senha Testando alertas de login Testando fluxos de OTP por SMS Testando verificação por telefone Teste de e-mail transacional Testando SPF/DKIM/DMARC Testando pontuação de spam Testando anexos Teste de e-mail HTML “E-mail descartável detectado” Teste de webhooks Webhooks de eventos de e-mail Agentes de IA e e-mail OTP com Playwright + MCP
CONCEITOS
Caixas de entrada e TTLs Mensagens Extração Domínios personalizados Anexos Webhooks Hooks de captura
REFERÊNCIA DA API
Visão geral e autenticação /inboxes /messages /phone-numbers · /sms /hooks /domains /keys /webhooks
Primeiros passos / quickstart-mcp
Início rápido: agentes MCP
O mailfixture fornece um servidor MCP remoto em https://mailfixture.com/mcp. Aponte um agente para ele — Claude Code, ou qualquer cliente que fale Streamable HTTP — e ele poderá criar caixas de entrada reais, disparar os fluxos de e-mail do seu aplicativo e ler o OTP de volta por conta própria. Nada para instalar, nenhum código de integração para escrever.
1 · Obtenha uma chave
Crie uma chave em Dashboard → API keys. O agente autentica com uma chave mfx_ normal — mesmas permissões da API REST, revogável a qualquer momento. Dê aos agentes sua própria chave (rotule-a como mcp-agent) para que você possa revogá-la sem quebrar suas suítes de teste.
.env / segredo do CIcopiar
MAILFIXTURE_API_KEY=mfx_••••••••••••••••••••
2 · Conecte um cliente
O Claude Code pode armazenar uma definição de servidor no escopo do projeto enquanto mantém a chave no ambiente:
terminalcopiar
$ claude mcp add --transport http mailfixture --scope project https://mailfixture.com/mcp
--header 'Authorization: Bearer ${MAILFIXTURE_API_KEY}'
As aspas simples são intencionais: a configuração do projeto mantém um espaço reservado de ambiente em vez de expandir e gravar o segredo em .mcp.json. Outros clientes usam o mesmo formato Streamable HTTP, mas a sintaxe de variáveis de ambiente e a chave de nível superior variam; este exemplo genérico usa a mesma convenção de espaço reservado:
configuração mcp (genérica)copiar
{ "mcpServers": { "mailfixture": { "type": "http", "url": "https://mailfixture.com/mcp", "headers": { "Authorization": "Bearer ${MAILFIXTURE_API_KEY}" } } } }
Descoberta para clientes que verificam antes de conectar: o cartão do servidor (esquema v1 Server Card — URL de transporte, cabeçalho Bearer necessário, versões de protocolo suportadas) é servido em /.well-known/mcp/server-card.json, /.well-known/mcp-server-card e /mcp/server-card; o api-catalog o vincula, e /llms.txt indica quando recorrer ao servidor. Uma chamada não autenticada responde com 401 e um desafio WWW-Authenticate: Bearer, e toda resposta autenticada carrega os mesmos cabeçalhos RateLimit da API REST.
3 · Deixe o agente testar seu fluxo de e-mail
Essa é toda a configuração. Peça ao agente para exercitar um fluxo de cadastro e ele encadeará as ferramentas por conta própria:
transcrição do agente
Cadastre uma nova conta no staging e verifique se o e-mail de OTP funciona.
create_inbox(ttl_seconds=900) → k2x9v04qtr@mxsink.sh … o agente preenche o formulário de cadastro com esse endereço … wait_for_otp(inbox_id=…, timeout_seconds=45) → { message_id: "…", best: "482913", candidates: […] } … o agente envia o código, confirma que a conta está verificada …
dica wait_for_otp, wait_for_link e wait_for_message fazem long-poll no servidor (até 60s por chamada) — o agente nunca escreve um loop de dormir-e-repetir. E-mails concorrentes? Eles usam o mesmo filtro match da API REST: subject:, from:, to:.
A superfície de ferramentas
41 ferramentas — paridade total com a /v1 REST API, captura de e-mail, SMS e webhooks, além dos auxiliares de espera. As de maior tráfego:
create_inbox
Um endereço novo para o fluxo em teste; TTL opcional limpa após execuções que falharam.
wait_for_otp
Bloqueia até que uma mensagem com um código de verificação extraído chegue; retorna {message_id, best, candidates}.
wait_for_link
O mesmo, para links — filtre por classe: verify, reset, unsubscribe.
follow_link
Clique no lado do servidor de um link extraído (o link de verificação por padrão): fazemos GET, seguimos redirecionamentos e retornamos status + URL final — sem necessidade de navegador.
wait_for_message
Bloqueia até que uma mensagem correspondente chegue; retorna detalhes completos com corpos e extração.
list_messages / get_message
Listagem baseada em cursor e detalhes completos — cabeçalhos, corpos, metadados de anexos.
create_phone_number / wait_for_sms_otp
O mesmo loop para textos (planos pagos, números dos EUA): provisione, use list_phone_numbers até o status ficar ativo, depois bloqueie pelo código. Veja o início rápido de SMS.
…e o restante
Limpeza/exclusão de caixa de entrada, listagem e liberação de SMS, anexos (base64 ≤1 MiB), domínios personalizados com verificação de DNS, chaves de API, webhooks.
Escopo e segurança
O servidor MCP é a API — a chave é a única credencial, e tudo o que o agente faz é atribuível a ela. Três coisas para saber: o conjunto de ferramentas inclui administração de conta (chaves, domínios, webhooks), então trate a chave como o segredo que ela é; os corpos das mensagens fluem para o contexto do agente, então não aponte tráfego de produção para caixas de entrada que um agente lê; e os erros retornam estruturados (status/title/detail, mesmo vocabulário da API REST) para que os agentes possam reagir em vez de adivinhar.
Próximos passos
Mãos do agente agora, suíte Playwright congelada para CI.
O mesmo fluxo a partir de uma suíte de testes.
Por que a caixa de entrada pertence à caixa de ferramentas do agente.
Esta página foi útil? sim não Guia: OTP com Playwright + MCP →
NESTA PÁGINA
1 · Obtenha uma chave 2 · Conecte um cliente 3 · Deixe o agente testar A superfície de ferramentas Escopo e segurança
editar esta página ↗
relatar um problema ↗