Skip to main content
Glama
SDK-E

mailbox-mcp

by SDK-E

mailbox

CI npm license

Un sumidero de correo para desarrollo local: ejecuta un servidor SMTP y una API HTTP para toda tu máquina y apunta cada proyecto a él. Los correos nunca salen de tu dispositivo; en su lugar, aterrizan en una bandeja de entrada inspeccionable con una interfaz web, una CLI y un servidor MCP para agentes de IA.

Una instancia compartida elimina las colisiones de puertos por proyecto: iníciala una vez y conecta muchos.

Install

pnpm add -D @sdk-e/mailbox   # or npm i -D / yarn add -D

O ejecuta ad hoc:

npx @sdk-e/mailbox

Quick start

mailbox            # SMTP on :11025, inbox UI on http://localhost:11090

Envía correo a smtp://127.0.0.1:11025 desde cualquier aplicación (nodemailer, modo dev de Resend, etc.), y luego:

open http://localhost:11090   # or: mailbox-cli open

Bins

Bin

Purpose

mailbox

Ejecuta el sumidero (SMTP + HTTP + interfaz de bandeja de entrada)

mailbox-cli

list, read <id>, wait [match] [--timeout s], clear, health, open

mailbox-mcp

Servidor MCP (list_emails, read_email, clear_emails, wait_for_email)

CLI examples

mailbox-cli list
mailbox-cli read 3
mailbox-cli wait "verification code" --timeout 10   # blocks until a new matching message arrives
mailbox-cli clear

wait solo coincide con mensajes que llegan después de que se inicia: inícialo antes de activar el envío.

Library use

import { startMailbox } from "@sdk-e/mailbox";

const mailbox = await startMailbox({ smtpPort: 0, httpPort: 0 }); // 0 = ephemeral
console.log(mailbox.smtpPort, mailbox.url);
await mailbox.close();

Ideal para pruebas de integración que necesitan una bandeja de entrada aislada y desechable.

HTTP API (stable wire protocol)

Route

Method

Response

/api/health

GET

{ ok, smtpPort, httpUrl, messageCount }

/api/email

GET

array de { id, receivedAt, from, to, subject, text, html }

/api/email/:id

GET

mensaje anterior más fuente raw; 404 {"error": …} si falta

/api/email/all

DELETE

{ ok: true, messageCount: 0 }

/

GET

interfaz de bandeja de entrada

Configuration

Variables de entorno (se cargan si existen .env.local y luego .env en el directorio de trabajo):

Variable

Default

Purpose

MAIL_SMTP_PORT

11025

Puerto de escucha SMTP

MAIL_HTTP_PORT

11090

Puerto de API/UI HTTP

MAIL_HTTP_URL

derivado del puerto

URL base utilizada por CLI/MCP para llegar al sumidero

MAILBOX_HOST

127.0.0.1

Interfaz de enlace (loopback por defecto)

Apunta el mailer de tu aplicación a smtp://127.0.0.1:$MAIL_SMTP_PORT localmente; en producción sigue usando tu proveedor real. El servidor se niega a iniciarse cuando NODE_ENV=production.

Why high ports?

1025/1080 (los clásicos valores por defecto estilo MailHog) chocan con frecuencia. mailbox usa por defecto 11025/11090 para que varios proyectos SDK-E puedan compartir una única instancia sin pisarse entre sí ni a otras herramientas locales.

Development

Requiere Node >= 20 y pnpm >= 11.

pnpm install
pnpm verify     # format, lint, typecheck, test, build

Consulta CONTRIBUTING.md.

License

MIT

-
license - not tested
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Give an AI agent its own email address: send, reply, read, and wait for mail.

  • Email for AI agents — send, receive as a webhook, manage domains, templates, routing.

  • Hosted email MCP for AI agents with inboxes, send/receive, memory, recovery, and credits.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SDK-E/mailbox'

If you have feedback or need assistance with the MCP directory API, please join our Discord server