Gmail MCP Server
Permite a los agentes de IA buscar hilos de Gmail, aprender tu estilo de escritura y redactar correos electrónicos.
Documentación
Gmail MCP Server
Un servidor MCP que permite a los agentes de IA buscar hilos de Gmail, comprender tu estilo de escritura de correos y crear borradores de correos.
1. Obtener autenticación de Google
Paso 1: Crear un proyecto de Google Cloud
- Ve a Google Cloud Console
- Haz clic en el menú desplegable "Seleccionar un proyecto" en la parte superior
- Haz clic en "Nuevo proyecto"
- Ingresa un nombre para el proyecto (por ejemplo, "Gmail MCP Server")
- Haz clic en "Crear"
Paso 2: Habilitar la API de Gmail
- En tu nuevo proyecto, ve a "APIs y servicios" → "Biblioteca"
- Busca "Gmail API"
- Haz clic en "Gmail API" y luego en "Habilitar"
Paso 3: Crear credenciales OAuth2
- Ve a "APIs y servicios" → "Credenciales"
- Haz clic en "Crear credenciales" → "ID de cliente OAuth"
- Si se te solicita, configura la pantalla de consentimiento de OAuth:
- Elige el tipo de usuario "Externo"
- Completa los campos obligatorios (Nombre de la aplicación, correo de soporte al usuario, correo del desarrollador)
- Agrega tu correo a la sección "Usuarios de prueba"
- Guarda y continúa por todos los pasos
- De vuelta en Credenciales, haz clic en "Crear credenciales" → "ID de cliente OAuth"
- Elige "Aplicación de escritorio" como tipo de aplicación
- Ingresa un nombre (por ejemplo, "Gmail MCP Client")
- Haz clic en "Crear"
- Importante: Copia el ID de cliente y el Secreto de cliente del diálogo de confirmación (los necesitarás para la configuración)
Paso 4: Otorgar alcances OAuth
Cuando ejecutes el servidor por primera vez, abrirá tu navegador para la autorización. El servidor solicita solo estos permisos mínimos:
Lo que solicitamos:
-
✅ Acceso de solo lectura a Gmail (
gmail.readonly)- Buscar y leer tus mensajes de correo
- Descargar archivos adjuntos de correos
- Ver metadatos de correos (asuntos, remitentes, fechas)
-
✅ Acceso de redacción de Gmail (
gmail.compose)- Crear borradores de correos
- Actualizar borradores existentes
- Eliminar borradores
- Enviar correos (permiso otorgado pero no utilizado por este servidor)
Lo que este servidor realmente implementa:
- ✅ Buscar y leer correos - Capacidades completas de búsqueda
- ✅ Extraer texto de adjuntos - Extracción segura de texto de PDF/DOCX/TXT
- ✅ Crear/actualizar borradores - Gestión inteligente de borradores con conocimiento del hilo
- ❌ Enviar correos - El servidor no implementa el envío (aunque el permiso está otorgado)
- ❌ Eliminar correos - El servidor no implementa la eliminación
- ❌ Modificar etiquetas - El servidor no implementa la gestión de etiquetas
2. Agregar a clientes MCP
Primero compila el servidor: go build .
Querrás agregar esto al archivo de configuración de tu agente:
{
"mcpServers": {
"gmail": {
"command": "C:/path/to/your/auto-gmail.exe",
"env": {
"GMAIL_CLIENT_ID": "your_client_id_here.apps.googleusercontent.com",
"GMAIL_CLIENT_SECRET": "your_client_secret_here",
"OPENAI_API_KEY": "your_openai_api_key_here"
}
}
}
}
⚡ Modo HTTP persistente (Recomendado para evitar ventanas emergentes de OAuth)
Problema: En modo stdio, Cursor inicia un proceso de servidor nuevo cada vez (y para cada pestaña), lo que provoca spam de ventanas emergentes de OAuth.
Solución: Ejecuta el servidor como un daemon HTTP persistente que se autentica una vez y permanece en ejecución.
Inicio rápido:
# Build the server
go build -o gmail-mcp-server
# Start persistent server (OAuth only once!)
./gmail-mcp-server --http
# Or with custom port
./gmail-mcp-server --http 3000
Qué sucede:
- ✅ La ventana emergente de OAuth aparece UNA VEZ cuando el servidor inicia
- ✅ El servidor se ejecuta de forma persistente en http://localhost:8080
- ✅ No más ventanas emergentes de OAuth - el servidor permanece autenticado
- ✅ Múltiples pestañas/ventanas de Cursor pueden conectarse al mismo servidor
Configuración de Cursor (Aún usa stdio por ahora):
{
"mcpServers": {
"gmail": {
"command": "C:/path/to/your/gmail-mcp-server",
"env": {
"GMAIL_CLIENT_ID": "your_client_id_here.apps.googleusercontent.com",
"GMAIL_CLIENT_SECRET": "your_client_secret_here",
"OPENAI_API_KEY": "your_openai_api_key_here"
}
}
}
}
La diferencia: Tú inicias el servidor manualmente una vez en lugar de dejar que Cursor lo inicie de nuevo cada vez.
Estado del servidor:
- Visita http://localhost:8080 para ver el estado del servidor
- Verificación de salud: http://localhost:8080/health
- Ver herramientas disponibles y ejemplos de configuración
Agregar a Cursor
- Presiona
Ctrl+Shift+P(Windows/Linux) oCmd+Shift+P(Mac) - Haz clic en la pestaña MCP
- Haz clic en '+ Agregar nuevo servidor MCP global'
- Edita el archivo de configuración
Agregar a Claude Desktop
- Ve a Archivo > Configuración > Desarrollador > Editar configuración
- Edita el archivo de configuración
Alternativa de configuración manual:
Puedes editar estos archivos de configuración directamente si sabes dónde encontrarlos:
- Cursor:
C:\Users\[User]\.cursor\mcp.json - Claude Desktop:
%APPDATA%\Claude\claude_desktop_config.json(Windows)
3. Herramientas y recursos MCP
Herramientas:
search_threads- Busca en Gmail con consultas como "from:email@example.com" o "subject:meeting" (incluye información de borradores)create_draft- Crea borradores de correos o actualiza borradores existentes (la IA solicitará primero la guía de estilo)extract_attachment_by_filename- Extrae texto de forma segura de archivos adjuntos PDF, DOCX y TXT usando el nombre del archivoget_personal_email_style_guide- Obtén tu guía de estilo de escritura de correos (esta es una herramienta temporal, creada porque la mayoría de los agentes aún no admiten la obtención de recursos; una vez que los agentes implementen mejor los recursos MCP, esta herramienta se puede eliminar)
Recursos:
file://personal-email-style-guide- Tu estilo personal de escritura de correos (generado automáticamente o manual)
Prompts:
/generate-email-tone- Analiza tus correos enviados para crear un estilo de escritura personalizado/server-status- Muestra ubicaciones de archivos y estado del servidor
4. Guía de estilo personal de correos
El servidor creará un archivo de guía de estilo basado en los últimos 25 correos que hayas enviado, para que los borradores de correos recién creados suenen como tú. Honestamente, hasta ahora los correos escritos por LLM aún no suenan muy auténticos.
Generación manual:
- Ejecuta el prompt
/generate-email-toneen tu cliente MCP en cualquier momento para regenerar - El archivo se guarda en tu directorio de datos de aplicación (consulta Ubicaciones de almacenamiento de archivos arriba)
Integración con IA:
- La IA siempre llama a la herramienta
get_personal_email_style_guideantes de escribir correos - Garantiza un estilo personal consistente en todas las comunicaciones
- El recurso también está disponible en
file://personal-email-style-guide
5. Forma alternativa de configurar variables de entorno
Si deseas ejecutar este servidor MCP fuera de un agente, puedes crear un archivo .env basado en el archivo .env.example y proporcionar las variables de entorno de esa manera, o exportarlas a tu entorno antes de ejecutar:
export GMAIL_CLIENT_ID=your_client_id_here.apps.googleusercontent.com
export GMAIL_CLIENT_SECRET=your_client_secret_here
export OPENAI_API_KEY=your_openai_api_key_here
6. Ubicaciones de almacenamiento de archivos
El servidor almacena archivos de autenticación y configuración en directorios de aplicación estándar:
Ubicaciones de archivos:
- Windows:
C:\Users\[YourUsername]\AppData\Roaming\auto-gmail\ - Mac:
~/.auto-gmail/ - Linux:
~/.auto-gmail/
Archivos importantes:
token.json- Token de autenticación OAuth (generado automáticamente)personal-email-style-guide.md- Tu guía de estilo de escritura de correos (generada automáticamente o manual)
Comandos rápidos:
- Usa
/server-statusen tu cliente MCP para ver las rutas exactas de los archivos - Elimina
token.jsonpara forzar la reautenticación con permisos actualizados
7. Tareas pendientes
- Mejorar el flujo de inicio de sesión OAuth - ✅ ¡RESUELTO! Usa el modo HTTP persistente (
./gmail-mcp-server --http) para evitar ventanas emergentes de OAuth. El servidor se autentica una vez y permanece en ejecución. - Transporte MCP HTTP completo - Esperando que mark3labs/mcp-go exponga APIs completas de transporte HTTP
- Mejor autenticidad de correos - Los correos escritos por LLM aún no suenan perfectamente auténticos a pesar de las guías de estilo