email-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@email-mcp-serversend an email to john@example.com with subject 'Hello' and body 'Just saying hi'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Email MCP Server
An MCP (Model Context Protocol) server that lets your AI assistant send emails via SMTP.
Features
send_simple_email— Send a quick email (text or HTML); accepts optionalsmtp_configsend_custom_email— Full control: CC/BCC, attachments; accepts optionalsmtp_configtest_smtp_connection— Verify your SMTP settings before sending; accepts optionalsmtp_config
Related MCP server: MCP Email Server with SendGrid
Quick Start
# Install uv if you don't have it
curl -LsSf https://astral.sh/uv/install.sh | sh
cd email-mcp-server
uv sync --extra devConfigure SMTP (see next section), then run:
# stdio transport (for MCP clients)
uv run python -m email_mcp_server.server
# Streamable HTTP transport (port 8000)
uv run python -m email_mcp_server.server --httpRun tests:
uv run pytestSMTP Configuration
You can configure SMTP credentials in two ways — use one or both.
Option A: Environment variables
Copy the example and fill in your credentials:
cp env.example .env# Required
SMTP_HOST=smtp.gmail.com
SMTP_USER=your-email@gmail.com
SMTP_PASS=your-app-password
SMTP_FROM=your-email@gmail.com
# Optional (defaults shown)
# SMTP_PORT=587
# SMTP_SECURE=falseAlternatively, pass them via the client's env block (see Client Configuration below).
Option B: Per-call payload
Pass smtp_config directly in any tool call — environment variables are ignored for that call:
{
"smtp_config": {
"host": "smtp.gmail.com",
"port": 587,
"secure": false,
"username": "your-email@gmail.com",
"password": "your-app-password",
"from_email": "your-email@gmail.com"
}
}Field | Type | Description |
| string | SMTP server hostname |
| integer | SMTP server port (usually |
| boolean | Use SSL/TLS ( |
| string | Auth username |
| string | Auth password |
| string | Sender email address |
Client Configuration
Claude Code
# stdio
claude mcp add email-server -- uv --directory /absolute/path/to/email-mcp-server run python -m email_mcp_server.server
# streamable HTTP (start the server first with --http)
claude mcp add --transport http email-server http://localhost:8000/mcpJSON-based clients (Claude Desktop, Cursor, VS Code, Windsurf, Zed)
Use the generic example below and adjust the top-level key and config file path for your client:
{
"<top-level-key>": {
"email-server": {
"command": "uv",
"args": ["--directory", "/absolute/path/to/email-mcp-server", "run", "python", "-m", "email_mcp_server.server"],
"env": {
"SMTP_HOST": "smtp.gmail.com",
"SMTP_PORT": "587",
"SMTP_SECURE": "false",
"SMTP_USER": "your-email@gmail.com",
"SMTP_FROM": "your-email@gmail.com",
"SMTP_PASS": "your-app-password"
}
}
}
}Client | Config file path | Top-level key | Notes |
Claude Desktop |
|
| Windows: |
Cursor |
|
| Or |
VS Code |
|
| Add |
Windsurf |
|
| |
Zed |
|
|
Streamable HTTP (any client)
Start the server with uv run python -m email_mcp_server.server --http, then:
Client | Config |
Claude Code |
|
Claude Desktop |
|
Cursor |
|
VS Code |
|
Windsurf |
|
Zed |
|
Provider Settings
Provider | Host | Notes |
Gmail |
| Requires app password with 2FA enabled |
Outlook |
| Regular password or app password |
Yahoo |
| Requires app password with 2FA enabled |
iCloud |
| Requires app password with 2FA enabled |
All providers use port 587 with SMTP_SECURE=false (STARTTLS).
License
MIT License
Maintenance
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/egyptianego17/email-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server