VaEmail
Infraestructura de correo electrónico para agentes de IA. 13 herramientas para enviar correos transaccionales, validar antes del envío (ejecución de prueba), rastrear el estado de entrega, autenticar dominios de envío (SPF, DKIM, DMARC), diagnosticar la entregabilidad y leer el registro de auditoría. Paquete Node sin dependencias, claves API con alcance y límites, servidores en Alemania.
Documentación
VaEmail — infraestructura de correo electrónico para agentes de IA
Servidor MCP y CLI para VaEmail. Dale a un agente la capacidad de enviar correo electrónico, autenticar un dominio de envío, rastrear la entrega y diagnosticar la entregabilidad — sin que un humano lea un panel de control en el medio.
Infraestructura europea: servidores en Alemania, envío a través de Amazon SES Europa.
Instalación
# Claude Code
claude mcp add vaemail --env VAEMAIL_API_KEY=swm_your_key -- npx -y vaemail mcp
# Any MCP client
npx -y vaemail mcp
O como bloque de configuración:
{
"mcpServers": {
"vaemail": {
"command": "npx",
"args": ["-y", "vaemail", "mcp"],
"env": { "VAEMAIL_API_KEY": "swm_your_key" }
}
}
}
Verifica que todo esté conectado:
npx vaemail init
Herramientas
| Herramienta | Qué hace |
|---|---|
vaemail_capabilities | Lo que soporta el servicio. No se necesita clave API. |
vaemail_send_email | Poner en cola un correo transaccional, devuelve su id. |
vaemail_validate_email | Prueba en seco: ¿saldría este envío y qué lo bloquearía? |
vaemail_get_message | Estado de entrega y cada evento de un mensaje. |
vaemail_list_messages | Mensajes recientes, filtrados por estado, etiqueta o destinatario. |
vaemail_list_domains | Dominios de envío con estado en vivo de SPF, DKIM y DMARC. |
vaemail_create_domain | Declarar un dominio, devolver los registros DNS a publicar. |
vaemail_verify_domain | Releer el DNS e informar qué está autenticado. |
vaemail_dns_requirements | Los registros que aún necesita un dominio declarado. |
vaemail_diagnose_deliverability | Por qué el correo llega mal, con las acciones que lo corrigen. |
vaemail_list_bounces | Direcciones excluidas del envío y por qué. |
vaemail_get_usage | Cuota, límite diario de la clave, lo que queda. |
vaemail_get_audit_log | Lo que ha hecho esta clave, para informarlo con precisión. |
Para qué está diseñado esto
Un agente falla de manera diferente a una persona. Reintenta, no lee un panel de control e informa éxito desde un 200. La API está moldeada en torno a eso:
- Un envío se acepta, no se entrega.
vaemail_send_emaildevuelve 202 y un id. Solovaemail_get_messagedice qué fue de él. Las descripciones de las herramientas lo dicen, para que un agente no anuncie una entrega que no puede conocer. - Los reintentos no duplican. Pasa
idempotency_keyy una llamada repetida reproduce la primera respuesta durante 24 horas en lugar de enviar dos veces. - Los errores dicen qué hacer. Cada fallo lleva un
codeestable, ya searetryable, y la acción correctiva con el endpoint que la realiza. - Las claves están limitadas. Ámbitos, un límite diario de envíos, un límite de destinatarios por correo y una lista de permitidos de dominios de remitente. Un agente no puede gastar más de lo que la clave permite.
- Cada llamada se registra. Qué clave, qué operación, qué parámetros, qué resultado — cuerpos de mensajes excluidos. Autónomo, pero responsable.
- Los pasos humanos se nombran como tales. Publicar registros DNS es uno. Un registro
cuyo valor aún contiene un marcador de posición se marca como
publishable: false, porque publicarlo rompería la autenticación del dominio.
CLI
vaemail init # check config, print the MCP snippet
vaemail capabilities # what the service can do (no key needed)
vaemail send --to a@b.fr --subject Hi --html '<p>Hello</p>'
vaemail status 42 # delivery status of a message
vaemail domains:add exemple.fr # declare a domain, print DNS records
vaemail doctor # why is my email not arriving?
vaemail usage # quota and remaining allowance
vaemail mcp # run the MCP server on stdio
Agrega --json a cualquier comando para salida legible por máquina.
Entorno
| Variable | Significado |
|---|---|
VAEMAIL_API_KEY | Clave API de la cuenta. Creada desde el panel, bajo « Clés API ». |
VAEMAIL_BASE_URL | URL base de la API. Por defecto https://app.vaemail.fr. |
También disponible
- Especificación OpenAPI: https://app.vaemail.fr/openapi.json
- Endpoint de capacidades: https://app.vaemail.fr/api/v1/capabilities
- Documentación para agentes: https://vaemail.fr/agents
Habilidad y ejemplos
- Habilidad del agente (reglas que un agente debe seguir antes de su primera llamada):
npx skills add vaemail/skills, fuente https://github.com/vaemail/skills - Ejemplos para curl, Node, Python, Claude Code, Codex, OpenAI Agents, LangChain, CrewAI y n8n: https://github.com/vaemail/examples
- Entrada de registro:
io.github.vaemail/vaemail(verserver.json)
Dependencias
Ninguna. Node 18+ para el fetch integrado, y nada más — un paquete que un agente
instala por sí mismo no debería arrastrar un árbol de dependencias detrás.
Licencia
MIT