Skip to main content
Glama

Servidor IMAP MCP

Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a los asistentes de IA revisar el correo electrónico, procesar mensajes y conocer las preferencias del usuario a través de la interacción.

Descripción general

Este proyecto implementa un servidor MCP que interactúa con servidores de correo electrónico IMAP para proporcionar las siguientes capacidades:

  • Navegación y búsqueda de correo electrónico

  • Organización del correo electrónico (mover, etiquetar, marcar)

  • Redacción y respuestas de correos electrónicos

  • Procesamiento interactivo de correo electrónico y aprendizaje de las preferencias del usuario

  • Resumen y categorización automatizados de correos electrónicos

  • Compatibilidad con múltiples proveedores IMAP

El servidor IMAP MCP está diseñado para funcionar con Claude o cualquier otro asistente compatible con MCP, lo que les permite actuar como asistentes de correo electrónico inteligentes que aprenden sus preferencias a lo largo del tiempo.

Related MCP server: Gmail MCP Server

Características

  • Autenticación de correo electrónico : acceso seguro a servidores IMAP con varios métodos de autenticación

  • Exploración de correo electrónico : lista de carpetas y mensajes con opciones de filtrado

  • Contenido del correo electrónico : lea el contenido del mensaje, incluido texto, HTML y archivos adjuntos

  • Acciones de correo electrónico : Mover, eliminar, marcar como leídos/no leídos, marcar mensajes

  • Redacción de correos electrónicos : redacte y guarde respuestas a mensajes con el formato adecuado

    • Soporte para respuestas en texto plano y HTML

    • Funcionalidad de respuesta a todos con soporte CC

    • Hilos adecuados con encabezados En respuesta a y Referencias

    • Guardar borradores en las carpetas apropiadas

  • Búsqueda : Funciones de búsqueda básicas en todas las carpetas

  • Patrones de interacción : Patrones estructurados para procesar correos electrónicos y aprender preferencias (planificado)

  • Capa de aprendizaje : registrar y analizar las decisiones de los usuarios para predecir acciones futuras (planificadas)

Estructura actual del proyecto

El proyecto actualmente está organizado de la siguiente manera:

.
├── examples/              # Example configurations
│   └── config.yaml.example
├── imap_mcp/              # Source code
│   ├── __init__.py
│   ├── config.py          # Configuration handling
│   ├── imap_client.py     # IMAP client implementation
│   ├── models.py          # Data models
│   ├── resources.py       # MCP resources implementation
│   ├── server.py          # Main server implementation
│   └── tools.py           # MCP tools implementation
├── tests/                 # Test suite
│   ├── __init__.py
│   └── test_models.py
├── INSTALLATION.md        # Detailed installation guide
├── pyproject.toml         # Project configuration
└── README.md              # This file

Empezando

Prerrequisitos

  • Python 3.8 o superior

  • Una cuenta de correo electrónico compatible con IMAP (se recomienda Gmail)

  • uv para la gestión de paquetes y la ejecución de scripts de Python

Instalación

  1. Instale uv si aún no lo ha hecho:

    curl -LsSf https://astral.sh/uv/install.sh | sh
  2. Clonar e instalar el paquete:

    git clone https://github.com/non-dirty/imap-mcp.git
    cd imap-mcp
    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    uv pip install -e ".[dev]"

Configuración de Gmail

  1. Crear un archivo de configuración:

    cp config.sample.yaml config.yaml
  2. Configurar las credenciales OAuth2 de Gmail:

    • Ir a la consola de Google Cloud

    • Crea un nuevo proyecto o selecciona uno existente

    • Habilitar la API de Gmail

    • Crear credenciales OAuth2 (tipo de aplicación de escritorio)

    • Descargar la configuración del cliente

  3. Actualice config.yaml con su configuración de Gmail:

    imap:
      host: imap.gmail.com
      port: 993
      username: your-email@gmail.com
      use_ssl: true
      oauth2:
        client_id: YOUR_CLIENT_ID
        client_secret: YOUR_CLIENT_SECRET
        refresh_token: YOUR_REFRESH_TOKEN

Uso

Revisar el correo electrónico

Para listar correos electrónicos en su bandeja de entrada:

uv run list_inbox.py --config config.yaml --folder INBOX --limit 10

Opciones disponibles:

  • --folder : especifica qué carpeta comprobar (predeterminado: BANDEJA DE ENTRADA)

  • --limit : Número máximo de correos electrónicos a mostrar (predeterminado: 10)

  • --verbose : Habilitar la salida de registro detallada

Iniciar el servidor MCP

Para iniciar el servidor IMAP MCP:

uv run imap_mcp.server --config config.yaml

Para el modo de desarrollo con depuración:

uv run imap_mcp.server --dev

Administración de tokens OAuth2

Para actualizar su token OAuth2:

uv run imap_mcp.auth_setup refresh-token --config config.yaml

Para generar un nuevo token OAuth2:

uv run imap_mcp.auth_setup generate-token --config config.yaml

Desarrollo

Configuración del entorno de desarrollo

# Set up virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install development dependencies
pip install -e ".[dev]"

Ejecución de pruebas

pytest

Consideraciones de seguridad

Este servidor MCP requiere acceso a su cuenta de correo electrónico, que contiene información personal confidencial. Tenga en cuenta las siguientes consideraciones de seguridad:

  • Almacene las credenciales de correo electrónico de forma segura mediante variables de entorno o almacenamiento de credenciales seguro

  • Considere usar contraseñas específicas de la aplicación en lugar de la contraseña de su cuenta principal

  • Limite el acceso a la carpeta únicamente a lo que sea necesario para su caso de uso

  • Revise los permisos otorgados al servidor en la configuración de su proveedor de correo electrónico

Hoja de ruta del proyecto

  • [x] Inicialización del proyecto y configuración del repositorio

  • [x] Integración básica de IMAP

  • [x] Implementación de recursos de correo electrónico

  • [x] Implementación de la herramienta de correo electrónico

  • [x] Funcionalidad de respuesta y borrador de correo electrónico

  • [ ] Implementación del aprendizaje de preferencias del usuario

  • [ ] Capacidades de búsqueda avanzada

  • [ ] Soporte para múltiples cuentas

  • [ ] Integración con los principales proveedores de correo electrónico

Contribuyendo

¡Agradecemos sus contribuciones! Consulte las normas en CONTRIBUTING.md .

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Expresiones de gratitud

A
license - permissive license
-
quality - not tested
F
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/non-dirty/imap-mcp'

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