MoeMail

E-mail temporário para agentes de IA

Um servidor MCP, uma CLI e um skill de agente para o MoeMail. Seu agente cria a caixa, aguarda o e-mail de verificação, lê o código e apaga a caixa — pela mesma API que move o moemail.app.

8 ferramentas MCP · roda com npx, nada para hospedar · Claude Desktop, Cursor, Claude Code, Codex

Três formas de entrar

Servidor MCP

npx -y @moemail/mcp. Oito ferramentas que qualquer cliente MCP pode chamar via stdio. Nada para implantar, nada para manter rodando.

@moemail/mcp

CLI

npm i -g @moemail/cli. Nove comandos, todos com saída --json e códigos de saída significativos — feitos para agentes orientados a shell e jobs de CI.

@moemail/cli

Skill de agente

moemail skill install coloca um SKILL.md no Claude Code ou no Codex, para que o agente já conheça o fluxo criar → aguardar → ler → apagar antes de ser solicitado.

SKILL.md

As ferramentas

Os nomes são exatamente os que o servidor registra. wait_for_email é a que faz os agentes funcionarem: bloqueia por até 90 segundos e devolve status: "timeout" em vez de falhar, então o agente simplesmente chama de novo.

create_email
Cria uma caixa; devolve id e address. Duração 1h, 24h, 3d ou permanent.
wait_for_email
Consulta até chegar uma nova mensagem (≤ 90 s por chamada) ou expira sem erro.
list_messages
Lista do que a caixa recebeu, da mais recente para a mais antiga.
read_message
Texto completo e HTML de uma mensagem.
list_emails
Todas as caixas desta chave de API.
send_email
Responde a partir do endereço temporário (exige cota de envio).
delete_message
Remove uma mensagem.
delete_email
Remove a caixa e todo o seu conteúdo.

Como é uma sessão

O ciclo do código de verificação, com as chamadas de ferramenta que o agente realmente faz: quatro chamadas, mais quantas consultas o e-mail levar para chegar.

Você

Cadastre-se no beta do example.com com um endereço descartável e me diga o código.

O agente cria uma caixa e digita o endereço no formulário de cadastro.

create_email { "expiry": "1h" }
{ "id": "k3f…", "address": "x7q2m9@moemail.app", "expiresAt": "…T15:04:05.000Z" }

Depois espera. Cada consulta é uma chamada de API; aqui o e-mail chegou em doze segundos.

wait_for_email { "emailId": "k3f…", "timeoutSec": 90 }
{ "status": "received", "elapsedSec": 12,
  "message": { "messageId": "m81…", "from": "no-reply@example.com",
               "subject": "Your code is 482913", "receivedAt": "…" } }

Ele lê a mensagem e extrai o código do corpo.

read_message { "emailId": "k3f…", "messageId": "m81…" }
{ "id": "m81…", "from": "no-reply@example.com", "subject": "Your code is 482913",
  "content": "Enter 482913 to finish signing up. …", "html": "…", … }

E apaga a caixa, para não deixar nada para trás.

delete_email { "emailId": "k3f…" }
{ "success": true, "deleted": "k3f…" }
Agente

Pronto — o código era 482913. Apaguei a caixa.

Conectar um cliente

Cole sua chave onde estão os pontos. O bloco mcpServers é idêntico para Claude Desktop, Cursor e Windsurf; Claude Code e Codex recebem o mesmo comando no formato deles.

Claude Desktop · claude_desktop_config.json
{
  "mcpServers": {
    "moemail": {
      "command": "npx",
      "args": ["-y", "@moemail/mcp"],
      "env": {
        "MOEMAIL_API_KEY": "mk_••••••••••••"
      }
    }
  }
}
Cursor · .cursor/mcp.json
{
  "mcpServers": {
    "moemail": {
      "command": "npx",
      "args": ["-y", "@moemail/mcp"],
      "env": {
        "MOEMAIL_API_KEY": "mk_••••••••••••"
      }
    }
  }
}
Claude Code · terminal
claude mcp add moemail -e MOEMAIL_API_KEY=mk_•••••••••••• -- npx -y @moemail/mcp
Codex CLI · ~/.codex/config.toml
[mcp_servers.moemail]
command = "npx"
args = ["-y", "@moemail/mcp"]
env = { MOEMAIL_API_KEY = "mk_••••••••••••" }

Hospeda o MoeMail por conta própria? Adicione MOEMAIL_API_URL apontando para a sua instância — os dois pacotes usam moemail.app por padrão.

Ou use direto do shell

Mesma API, sem runtime de agente. Todo comando aceita --json; código de saída 1 é erro de execução e 2 é erro de configuração ou autenticação, então um script distingue "ainda não chegou e-mail" de "chave errada".

@moemail/cli · bash
npm i -g @moemail/cli
moemail config set api-key mk_••••••••••••

# 1. a mailbox that lives for an hour
moemail create --expiry 1h --json
# {"id":"k3f…","address":"x7q2m9@moemail.app","expiresAt":"2026-09-02T15:04:05.000Z"}

# 2. block until the verification mail lands (exit 1 on timeout)
moemail wait --email-id k3f… --timeout 120 --json
# {"messageId":"m81…","from":"no-reply@example.com","subject":"Your code is 482913","receivedAt":"…"}

# 3. read it, then clean up
moemail read --email-id k3f… --message-id m81… --json
moemail delete --email-id k3f…

Ensine o agente uma vez

A CLI traz um arquivo de skill. Depois de instalado, o Claude Code ou o Codex recorre ao moemail sozinho sempre que uma tarefa precisa de uma caixa descartável, em vez de você explicar o fluxo toda vez.

bash
moemail skill install                    # auto-detects Claude Code and Codex
moemail skill install --platform claude  # ~/.claude/skills/moemail/SKILL.md
moemail skill install --platform codex   # ~/.codex/skills/moemail/SKILL.md

Chaves, cota e preço

Os dois pacotes autenticam com uma chave de API do MoeMail. Crie uma no seu perfil — é a mesma chave da API REST e consome a mesma cota mensal.

O acesso à API é um complemento pago: o plano padrão não inclui chamadas gratuitas. Compre um pacote de chamadas de API ou um upgrade para Duke na loja, com MoeCoin. A caixa de entrada web continua gratuita, então você pode ver o que as caixas fazem antes de pagar pela API.

Reserve cota para as consultas: cada consulta do wait_for_email e cada verificação do wait da CLI é uma chamada. Uma ida e volta típica de verificação — criar, aguardar, ler, apagar — são quatro chamadas mais as consultas.

Abrir perfil → chaves de API

Perguntas frequentes

Os pacotes têm licença MIT e a instalação é gratuita. Chamar o MoeMail por eles exige uma chave de API com cota, que é um complemento pago — o plano padrão não inclui chamadas de API. Usar a caixa de entrada web em moemail.app é gratuito.

Com qualquer cliente MCP capaz de iniciar um servidor stdio: Claude Desktop, Cursor, Windsurf, Claude Code e Codex CLI são os mostrados acima. O servidor é iniciado com npx, então Node.js 18 ou mais recente é o único requisito.

Use o servidor MCP quando um agente dentro de um editor ou app de chat deve chamar as ferramentas por conta própria. Use a CLI quando um script de shell, job de CI ou agente de terminal conduz o fluxo; a saída --json e os códigos de saída foram feitos para isso. Os dois falam com a mesma API usando a mesma chave.

Sim. Defina MOEMAIL_API_URL para a sua instância; o padrão é https://moemail.app. A CLI também pode guardá-lo com `moemail config set api-url`.

A ferramenta send_email e o comando `moemail send` enviam a partir de um endereço temporário, desde que a conta tenha cota de envio. Envio é uma cota separada das chamadas de API.

Ainda não. Hoje o servidor roda localmente via stdio com npx, o que todos os principais clientes suportam. Um endpoint Streamable HTTP hospedado está planejado; quando for lançado, será anunciado nesta página, e a configuração local continuará funcionando.

Os dois pacotes ficam no repositório open source do MoeMail no GitHub, em packages/mcp e packages/cli, junto com o próprio serviço.

Dê uma caixa de entrada ao seu agente

Crie uma chave de API, cole um bloco de configuração, e o próximo fluxo de cadastro que seu agente executar vai terminar sozinho.