mcp-email-server  by ai-zerolab

Email server for IMAP and SMTP operations

Created 1 year ago
252 stars

Top 99.6% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

The ai-zerolab/mcp-email-server project offers a solution for integrating IMAP and SMTP email functionalities into applications via the MCP Server protocol. It targets developers and power users needing to programmatically access or send emails, providing a bridge between standard email protocols and a machine-readable interface. The primary benefit is simplified email integration, abstracting away the complexities of direct IMAP/SMTP client implementation.

How It Works

This project functions as a server that exposes IMAP and SMTP capabilities through an MCP Server interface. It allows applications to connect to email accounts using standard credentials and protocols, translating these interactions into the MCP format. Configuration can be managed through a command-line UI or environment variables, offering flexibility for different deployment scenarios, including CI/CD pipelines. The server supports both full read/write operations (IMAP and SMTP) and a read-only IMAP mode if SMTP configuration is omitted.

Quick Start & Requirements

  • Installation: Recommended via uv (e.g., uvx mcp-email-server@latest ui). Alternatively, pip install mcp-email-server.
  • Configuration: Via mcp-email-server ui or environment variables (e.g., MCP_EMAIL_SERVER_EMAIL_ADDRESS, MCP_EMAIL_SERVER_PASSWORD, MCP_EMAIL_SERVER_IMAP_HOST).
  • Prerequisites: Python environment managed by uv is recommended.
  • Documentation: https://ai-zerolab.github.io/mcp-email-server/

Highlighted Details

  • Supports read-only IMAP mode by omitting SMTP host configuration.
  • Optional attachment downloads, configurable via environment variable (MCP_EMAIL_SERVER_ENABLE_ATTACHMENT_DOWNLOAD) or TOML.
  • Automatic saving of sent emails to the IMAP Sent folder, with support for custom folder names.
  • Configurable HTTP transport security, including DNS rebinding protection and allowed hosts/origins.
  • Handles self-signed certificates and STARTTLS for local mail bridges (e.g., ProtonMail Bridge).

Maintenance & Community

No specific details regarding maintainers, community channels (like Discord/Slack), sponsorships, or roadmap were found in the provided README content.

Licensing & Compatibility

The provided README content does not explicitly state the software's license. This absence may pose a compatibility concern for commercial use or integration into closed-source projects.

Limitations & Caveats

SMTP functionality is disabled when MCP_EMAIL_SERVER_SMTP_HOST is omitted, resulting in a read-only mode. DNS rebinding protection is enabled by default and may require explicit configuration (MCP_ALLOWED_HOSTS, MCP_ALLOWED_ORIGINS) for certain network setups like Docker or reverse proxies. Disabling security features like DNS rebinding protection or SSL verification is recommended only for isolated local development environments.

Health Check
Last Commit

4 days ago

Responsiveness

Inactive

Pull Requests (30d)
14
Issues (30d)
1
Star History
18 stars in the last 30 days

Explore Similar Projects

Starred by Andrej Karpathy Andrej Karpathy(Founder of Eureka Labs; Formerly at Tesla, OpenAI; Author of CS 231n) and Shizhe Diao Shizhe Diao(Author of LMFlow; Research Scientist at NVIDIA).

inbox_cleaner by isafulf

0%
461
Python script for Gmail inbox management
Created 2 years ago
Updated 2 years ago
Feedback? Help us improve.