Dale a tu agente de IA una bandeja de correo con MCP
Para que un agente de IA se registre en un servicio, confirme un correo o pruebe un registro, necesita una bandeja de entrada que pueda leer. saci.cc tiene un servidor MCP en https://saci.cc/api/mcp con herramientas para crear una dirección temporal, esperar un correo y leer el código de verificación. Lo conectas una vez a Claude Code, Cursor o VS Code con una clave de API gratis, y a partir de ahí basta con pedirlo en lenguaje normal.
Qué es MCP
El Model Context Protocol (MCP) es un estándar abierto para conectar apps de IA con herramientas externas. Un servidor publica una lista de herramientas, cada una con su nombre, su descripción y sus parámetros. El cliente, como Claude Code, Cursor o VS Code, le muestra esa lista al modelo, y el modelo decide cuándo llamar a cada una. No escribes código de integración: una vez conectado el servidor, el agente puede usarlo en cualquier conversación.
Consigue una clave
El servidor MCP usa las mismas claves que la API. Entra con GitHub en la página de tu cuenta y crea una clave. La cuenta de GitHub tiene que tener al menos 30 días. La clave empieza con saci_ y solo se muestra una vez, así que cópiala en ese momento. Cada cuenta puede tener hasta 5 claves, así que puedes darle una propia al agente y revocarla después sin tocar tus otros scripts.
Conecta Claude Code
En la terminal, cambiando saci_... por tu clave:
claude mcp add --transport http saci https://saci.cc/api/mcp \ --header "Authorization: Bearer saci_..."
Después ejecuta /mcp dentro de Claude Code para comprobar que saci está conectado.
Conecta Cursor o VS Code
Cursor lee ~/.cursor/mcp.json, o .cursor/mcp.json dentro del proyecto:
{
"mcpServers": {
"saci": {
"url": "https://saci.cc/api/mcp",
"headers": {
"Authorization": "Bearer saci_..."
}
}
}
}VS Code lee .vscode/mcp.json:
{
"servers": {
"saci": {
"type": "http",
"url": "https://saci.cc/api/mcp",
"headers": {
"Authorization": "Bearer saci_..."
}
}
}
}Otros clientes que aceptan configuración en JSON suelen aceptar el formato de Cursor con "type": "http" junto a url. Sea cual sea el cliente, el servidor necesita la clave en el header Authorization. Si el archivo está en un repositorio, no lo subas con la clave dentro.
Las herramientas
create_inbox: crea una dirección. Es aleatoria salvo que pasesname(de 3 a 32 letras, números, puntos, guiones o guiones bajos).wait_for_email: espera a que llegue un correo y devuelve el remitente, el asunto, la fecha y elmessage_id, sin el cuerpo. Puede filtrar confrom_contains,subject_containsyafter, ytimeout_secondsllega hasta 25.get_verification_code: devuelve solo el código, como482913, esperando el correo si todavía no llegó.get_email: lee un correo en texto, o en HTML conformat, con sus enlaces, sus adjuntos y el código de verificación.list_emails: lista los correos de la bandeja, del más nuevo al más viejo.get_attachment: devuelve un adjunto. Los archivos de texto llegan como texto, las imágenes como imagen y lo demás como un enlace de descarga que funciona unos minutos.delete_emailydelete_all_emails: borran un correo o todos los de la bandeja. Están marcadas como destructivas, así que tu cliente puede pedirte confirmación antes de ejecutarlas.
Un ejemplo
Una petición como esta:
Crea un correo temporal, regístrate en https://ejemplo.com con él y dime el código de verificación que llegue.
El agente hace lo siguiente:
- Llama a
create_inboxy recibe una dirección comoa1b2c3d4e5f60718@saci.cc. - Rellena el formulario de registro con esa dirección. Para eso necesita su propia herramienta de navegador, como un servidor MCP de Playwright; saci.cc solo se ocupa de la parte del correo.
- Llama a
get_verification_codecon la dirección. Si no llega ningún código en 25 segundos, la herramienta lo dice y el agente vuelve a llamarla. - Escribe el código en el formulario, o simplemente te dice cuál es.
Cuando el correo trae un enlace de confirmación en vez de un código, el agente llama a wait_for_email y luego a get_email para leer los enlaces.
No todas las tareas necesitan un navegador. Puedes pedirle al agente que compruebe si tu servidor de staging envía el correo de bienvenida y si su enlace apunta al dominio correcto, o que escriba y ejecute un test de punta a punta que use saci.cc. Para tests que corren en el CI sin agente, la guía de Playwright muestra el mismo flujo con el paquete de npm.
Límites
- Cada espera dura 25 segundos como máximo. El agente vuelve a llamar para seguir esperando, y las instrucciones del servidor le dicen que lo haga.
- 120 solicitudes por minuto por cuenta, compartidas con la API y con todas las claves de la cuenta.
- Las bandejas creadas por MCP son privadas para tu cuenta durante 7 días: solo tus claves pueden leerlas, y nadie más puede crear el mismo nombre.
- Los correos se borran más o menos un día después de llegar. No uses estas bandejas para cuentas que quieras conservar ni para nada sensible.
- Las direcciones solo reciben correos. El agente no puede enviar ni responder desde saci.cc.
- Los conectores personalizados de Claude, en la app y en claude.ai, no pueden enviar headers, así que no pasan la clave y no funcionan con saci.cc. Usa Claude Code u otro cliente que acepte headers.
Todas las herramientas y sus parámetros están en la página del MCP. Si algo no funciona, o necesitas un límite más alto, escribe a oi@saci.cc.