A simple MCP server that lets your AI agent send emails and attach files through SMTP.
This MCP (Model Context Protocol) server lets your AI assistant send emails for you.
Your AI assistant can:
send_email
- Simple Email SendingSend emails quickly using your environment configuration:
send_custom_email
- Advanced Email FeaturesSend emails with full control:
test_smtp_connection_tool
- Check SetupTest your email settings before sending important emails.
# Install uv (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Restart your terminal or run:
source ~/.bashrc
cd email-mcp-server
uv sync
# Test your email setup
uv run python test_email.py
# Run the server directly (for testing)
uv run main.py
Add this to your Claude Desktop configuration or Cursor file:
{
"mcpServers": {
"mcp-server": {
"command": "uv",
"args": [
"--directory",
"path/to/the/app/email-mcp-server",
"run",
"main.py"
],
"env": {
"SMTP_HOST": "",
"SMTP_PORT": "",
"SMTP_SECURE": "",
"SMTP_USER": "",
"SMTP_FROM": "",
"SMTP_PASS": ""
}
}
}
}
Important: Change the directory path to match your actual installation location.
Send a basic email:
"Send an email to [email protected] saying the meeting is tomorrow at 2 PM"
Send with HTML formatting:
"Send an HTML email to [email protected] with subject 'Weekly Update' and create a nice formatted message about this week's progress"
Test your setup:
"Test the email connection to make sure it's working"
Send to multiple people with attachments:
"Send a custom email to the team about the project update. Send to [email protected], CC [email protected], and attach the project report"
"env": {
"SMTP_HOST": "smtp.gmail.com",
"SMTP_PORT": "587",
"SMTP_SECURE": "false",
"SMTP_USER": "[email protected]",
"SMTP_FROM": "[email protected]",
"SMTP_PASS": "your-app-password"
}
Gmail Setup Steps:
"env": {
"SMTP_HOST": "smtp-mail.outlook.com",
"SMTP_PORT": "587",
"SMTP_SECURE": "false",
"SMTP_USER": "[email protected]",
"SMTP_FROM": "[email protected]",
"SMTP_PASS": "your-password"
}
Replace the SMTP settings with your provider's details. Most providers use:
Variable | Description | Example |
---|---|---|
SMTP_HOST |
Your email server | smtp.gmail.com |
SMTP_PORT |
Server port | 587 |
SMTP_SECURE |
Use SSL (true/false) | false |
SMTP_USER |
Your username | [email protected] |
SMTP_FROM |
Sender address | [email protected] |
SMTP_PASS |
Your password | your-password |
uv
is installed and in your PATHuv sync
# Test configuration and connection
uv run python test_email.py
# Send a real test email to yourself
uv run python test_email.py --send-real
MIT License - Feel free to use and modify as needed.