gmail-send
Send emails through Gmail's SMTP server using App Password authentication, with Markdown to HTML conversion and professional email styling.
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., "@gmail-sendsend an email to friend@example.com with subject 'Catch up' and body 'Letβs meet soon.'"
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.
Gmail Send Skill - MCP Server
π AI-Powered Email Sending Skill with Model Context Protocol (MCP) support
Send emails via Gmail using App Password authentication with Markdown content support, specifically designed for AI agents and MCP-compatible applications.
β¨ Features
π§ Core Email Functionality
Gmail SMTP Integration - Send emails through Gmail's secure SMTP server (Port 587, TLS)
App Password Authentication - Secure authentication using Gmail App Passwords
Rich Error Reporting - Detailed success/failure feedback with error types
Input Validation - Comprehensive email and parameter validation
π Enhanced Markdown Support (v1.1.0+)
Advanced Markdown Conversion - Full markdown library support with extensions (BSD license)
Professional Email Styling - Email-safe CSS with responsive design
Graceful Fallback System - Basic Markdown converter when external library unavailable
Commercial License Compliance - BSD-licensed dependencies for commercial use
Email Client Compatibility - Optimized HTML for major email clients
π€ AI Integration
MCP Compatible - Full Model Context Protocol support for AI agents
OpenAI Function Calling - Compatible with OpenAI Function Calling standard
Skill Framework - Standalone and integrated execution modes
Related MCP server: Gmail MCP Pro
π Quick Start
1. Installation
# Clone the repository
git clone <repository-url>
cd mcp-server-gmail-send
# Run automated installation
chmod +x install.sh
./install.sh2. Gmail Setup
Enable 2-Factor Authentication in your Gmail account
Generate App Password:
Go to Google Account β Security β 2-Step Verification β App Passwords
Select "Mail" and generate password
Save the 16-character password (e.g.,
abcd efgh ijkl mnop)
3. Claude Desktop Integration
# Copy configuration to Claude Desktop
cp claude_desktop_config.json ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Restart Claude Desktop4. Test the Setup
# Test the MCP server
python3 mcp_server.py --test
# Run comprehensive tests
python3 test_gmail_skill.pyπ§ Usage Example
Enhanced Markdown to HTML Conversion (v1.1.0+)
The skill now supports advanced Markdown conversion with professional email styling:
Supported Markdown Features
Headers (H1-H6) with proper hierarchy
Text Formatting - Bold, italic, strikethrough
Lists - Ordered and unordered with nesting
Links - Automatic link formatting
Code Blocks - Syntax highlighting and inline code
Blockquotes - Professional quote styling
Tables - Responsive table design (with markdown library)
Email Styling Features
π± Responsive Design - Adapts to desktop and mobile email clients
π¨ Professional CSS - Clean, modern email appearance
π§ Email Client Compatibility - Works with Gmail, Outlook, Apple Mail, etc.
π§ Graceful Fallback - Basic conversion when advanced features unavailable
Markdown Content Example
# Project Status Report
## Executive Summary
The project is **on track** with key milestones achieved:
### Completed Tasks β
1. User authentication system
2. Database schema design
3. API endpoints implementation
### In Progress π§
- Front-end development
- Integration testing
- Performance optimization
> **Note**: All deliverables are meeting quality standards.
For technical details, see: [Project Documentation](https://example.com/docs)
```python
def get_project_status():
return "Active"
This Markdown will be converted to professional HTML email format automatically.
### Basic Email Sending
```python
from gmail_send_skill import GmailSendSkill
from skill_compat import ExecutionContext
# Initialize
skill = GmailSendSkill()
ctx = ExecutionContext()
# Send email
result = skill.execute(ctx,
username="your.email@gmail.com",
app_password="abcd efgh ijkl mnop",
content="# Hello World!\n\nThis is a **test** email with *markdown*.",
to_email="recipient@example.com",
subject="Test Email from Skill"
)
print(f"Success: {result['success']}")Via AI Agent (Claude Desktop)
Simply ask Claude:
Can you send an email using the gmail_send function? I need to send:
- From: my.email@gmail.com
- To: colleague@company.com
- Subject: Project Update
- Content: A markdown report about our progress
I'll provide my app password when prompted.π Function Schema
OpenAI Function Calling Format
{
"name": "gmail_send",
"description": "Send email via Gmail using App Password authentication with Markdown support",
"parameters": {
"type": "object",
"properties": {
"username": {
"type": "string",
"description": "Gmail address for authentication"
},
"app_password": {
"type": "string",
"description": "16-character Gmail App Password"
},
"content": {
"type": "string",
"description": "Email content in Markdown format"
},
"to_email": {
"type": "string",
"description": "Recipient email address"
},
"subject": {
"type": "string",
"description": "Email subject line",
"default": "Email from Gmail Send Skill"
},
"from_name": {
"type": "string",
"description": "Display name for sender",
"default": null
}
},
"required": ["username", "app_password", "content", "to_email"]
}
}π Project Structure
mcp-server-gmail-send/
βββ π gmail_send_skill.py # Main skill implementation
βββ π§ skill_compat.py # Framework compatibility layer
βββ π₯οΈ mcp_server.py # MCP server with stdio transport
βββ π version.py # Version management
βββ π§ͺ test_gmail_skill.py # Comprehensive test suite
βββ βοΈ mcp_config.json # MCP client configuration
βββ π claude_desktop_config.json # Claude Desktop integration
βββ π¦ requirements.txt # Python dependencies
βββ π οΈ install.sh # Automated installation script
βββ π GMAIL_SEND_USAGE.md # Detailed usage guide
βββ π MCP_DEPLOYMENT.md # MCP deployment instructions
βββ π README.md # This fileπ§ Configuration
MCP Server Configuration
Update paths in mcp_config.json:
{
"mcpServers": {
"gmail-send": {
"command": "python",
"args": ["/absolute/path/to/mcp_server.py"],
"env": {
"PYTHONPATH": "/absolute/path/to/project"
}
}
}
}Claude Desktop Configuration
Update claude_desktop_config.json with your installation path and copy to:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
π§ͺ Testing
Automated Testing
# Run all tests
python3 test_gmail_skill.py
# Test specific components
python3 test_gmail_skill.py --test TestGmailSendSkill
# Verbose output
python3 test_gmail_skill.py --verboseManual Testing
# Test skill directly
python3 gmail_send_skill.py
# Test MCP server
python3 mcp_server.py --test
# Check version and info
python3 version.py --infoβοΈ Technical Details
Dependencies and Licensing
Core Dependencies (Built-in Python)
smtplib- SMTP email sendingemail.mime- Email compositionssl- TLS encryptionjson- Configuration handlingre- Regular expressions for fallback conversion
Optional Enhancement (Commercial-Friendly)
markdown library (BSD 3-Clause License)
β Commercial use allowed
β Distribution allowed
β Modification allowed
π§ Graceful fallback when unavailable
System Requirements
Python 3.7+ (tested up to 3.12)
Internet connection for Gmail SMTP
Gmail account with 2FA enabled
Architecture
Gmail Send Skill Architecture
βββ gmail_send_skill.py # Core skill implementation
βββ skill_compat.py # Framework compatibility layer
βββ mcp_server.py # MCP Protocol server
βββ version.py # Version management
HTML Conversion Pipeline:
Markdown Content β Advanced/Basic Converter β CSS Styling β Email HTMLConversion System Details
Advanced Mode (with markdown library)
Full CommonMark specification support
Extensions: tables, strikethrough, task lists
Professional syntax highlighting
Advanced table rendering
Fallback Mode (built-in)
Regex-based Markdown parsing
Core element support (headers, lists, formatting)
Email-safe HTML generation
Professional CSS styling maintained
π Documentation
π Usage Guide - Comprehensive usage instructions and examples
π MCP Deployment - Complete MCP integration guide
π§ Installation Script - Automated setup and configuration
π§ͺ Test Suite - Comprehensive testing framework
π Security
Best Practices
β Use App Passwords - Never use regular Gmail passwords
β Enable 2FA - Required for App Password generation
β Secure Storage - Never commit credentials to version control
β Input Validation - All parameters are validated before use
β Error Handling - Sensitive information is not exposed in errors
Supported Authentication
Gmail App Passwords (recommended)
G Suite/Workspace accounts with App Passwords
2-Factor Authentication required
π Response Format
Success Response
{
"success": true,
"function_name": "gmail_send",
"result": {
"message": "Email sent successfully to recipient@example.com",
"timestamp": "2026-02-14T10:30:00",
"from": "sender@gmail.com",
"to": "recipient@example.com",
"subject": "Email Subject"
}
}Error Response
{
"success": false,
"function_name": "gmail_send",
"error": {
"message": "Authentication failed. Please check your credentials.",
"type": "authentication_error",
"details": "SMTP Authentication Error: (535, 'Incorrect password')"
}
}π Version Information
Current Version: 1.0.0 (2026-02-14)
# Check version
python3 version.py --version
# Full version info
python3 version.py --info
# View changelog
python3 version.py --changelogπ οΈ Requirements
System Requirements
Python 3.7+ (required)
Internet connection for SMTP access
Gmail account with 2FA enabled
Dependencies
Built-in Python libraries:
smtplib,email,json,loggingOptional:
markdown>=3.4.0(for rich formatting)
Compatibility
β MCP Protocol 2024-11-05
β OpenAI Function Calling compatible
β Claude Desktop integration
β Cross-platform (macOS, Linux, Windows)
π Troubleshooting
Common Issues
Authentication Errors
# Verify App Password format (16 characters)
# Check 2FA is enabled
# Generate new App PasswordModule Import Errors
# Check Python path
export PYTHONPATH=/path/to/mcp-server-gmail-send
# Verify file permissions
chmod 644 gmail_send_skill.pyMCP Connection Issues
# Test MCP server
python3 mcp_server.py --test
# Check Claude Desktop logs
tail -f ~/Library/Logs/Claude/claude-desktop.logSupport Resources
π Usage Guide - Detailed troubleshooting
π§ Deployment Guide - MCP-specific issues
π§ͺ Test Suite -
python3 test_gmail_skill.pyπ Logs - Check
gmail_send_mcp.log
π€ Contributing
Fork the repository
Create feature branch:
git checkout -b feature/amazing-featureCommit changes:
git commit -m 'Add amazing feature'Push to branch:
git push origin feature/amazing-featureOpen Pull Request
Development Setup
# Clone for development
git clone <repository-url>
cd mcp-server-gmail-send
# Install development dependencies
pip3 install -r requirements.txt
pip3 install pytest pytest-asyncio # For testing
# Run tests
python3 test_gmail_skill.py
# Check code style
python3 -m flake8 gmail_send_skill.pyοΏ½ Version History
v1.1.0 (2024-12-19) - Enhanced Markdown Support
β¨ Advanced Markdown Conversion - Full markdown library support with extensions
π¨ Professional Email Styling - Responsive CSS for email clients
π§ Graceful Fallback System - Basic converter when external library unavailable
βοΈ Commercial License Compliance - BSD-licensed dependencies
π§ Email Client Optimization - Improved compatibility across platforms
π§ͺ Enhanced Testing - Comprehensive conversion and styling tests
v1.0.0 (2024-12-19) - Initial Release
π§ Gmail SMTP Integration - Secure email sending via Gmail
π App Password Authentication - Secure credential handling
π€ MCP Protocol Support - Full Model Context Protocol implementation
π Basic Markdown Support - Simple markdown to HTML conversion
β Comprehensive Testing - 18 unit tests with edge case coverage
π οΈ Local Development Tools - Configuration templates and testing utilities
οΏ½π License
This project is licensed under the terms specified in the LICENSE file.
Third-Party License Compliance
markdown library (Optional) - BSD 3-Clause License - Commercial use allowed
Python Standard Library - Python Software Foundation License
π Acknowledgments
Model Context Protocol - For the standardized AI agent integration
OpenAI Function Calling - For the function schema standard
Gmail SMTP - For reliable email delivery infrastructure
Python Community - For the excellent libraries and tools
Markdown Community - For the BSD-licensed markdown processing library
Built for AI-Powered Applications π€ | MCP Compatible π | Production Ready π
Gmail Send Skill v1.1.0 - Enhanced Markdown conversion with professional email styling Send mail through gmail.
This server cannot be installed
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/baddif/mcp-server-gmail-send'
If you have feedback or need assistance with the MCP directory API, please join our Discord server