
Gmail MCP Agent
Enables automated Gmail lead nurturing campaigns with intelligent follow-ups, response tracking, and 24/7 operation. Supports CSV-based contact management, template personalization, and real-time monitoring for enterprise-scale email outreach.
README
🤖 Gmail MCP Agent - 24/7 Lead Nurturing System
A comprehensive, enterprise-grade lead nurturing system that automates Gmail outreach campaigns with intelligent follow-ups, response tracking, and 24/7 operation via MCP (Model Context Protocol) server.
🚀 Features
✅ Automated Lead Nurturing
- 24/7 Operation - Runs continuously with Docker containerization
- Intelligent Follow-ups - Automatic sequences at 3 days and 7 days
- Response Tracking - Monitors Gmail for replies and categorizes them
- Lead Scoring - Tracks engagement and interest levels
- Smart Responses - Automatically responds to interested leads
📊 MCP Server Architecture
- Remote Control - Control system via MCP protocol
- Real-time Monitoring - Live status and performance tracking
- Docker Deployment - Production-ready containerization
- Health Checks - Automatic recovery and error handling
- Scalable Design - Ready for enterprise use
🎯 Email Campaign Management
- CSV-based Lead Lists - Easy contact management
- Template System - Jinja2-powered email personalization
- Rate Limiting - Respects Gmail API quotas
- Resume Capability - Continue from where you left off
- Comprehensive Logging - Complete audit trail
📁 Project Structure
├── send_from_csv.py # Main Gmail sender script
├── lead_nurturer.py # Automated nurturing system
├── mcp_server.py # 24/7 MCP server
├── mcp_client.py # Control interface
├── lead_dashboard.py # Monitoring dashboard
├── run_nurturing.py # Automation runner
├── contacts.csv # Lead database (96 dental practices)
├── body.txt # Email template
├── credentials.json # Gmail API credentials
├── nurturing_config.json # System configuration
├── requirements.txt # Python dependencies
├── Dockerfile # Container configuration
├── docker-compose.yml # Deployment setup
├── deploy.sh # One-click deployment
└── DEPLOYMENT_GUIDE.md # Complete setup guide
🛠️ Quick Start
1. Clone and Setup
git clone https://github.com/brandononchain/GMAIL-MCP-Agent.git
cd GMAIL-MCP-Agent
pip install -r requirements.txt
2. Configure Gmail API
- Get OAuth2 credentials from Google Cloud Console
- Save as
credentials.json
- Update sender email in
nurturing_config.json
3. Deploy 24/7 System
# Docker deployment (recommended)
./deploy.sh
# Or manual deployment
docker-compose up -d
4. Start Nurturing
# Using MCP client
python mcp_client.py start 4
# Or direct execution
python run_nurturing.py
🎮 Control Commands
MCP Client Interface
# Start nurturing system (every 4 hours)
python mcp_client.py start 4
# Check system status
python mcp_client.py status
# Get lead report
python mcp_client.py report
# Send test email
python mcp_client.py test your-email@example.com
# View recent logs
python mcp_client.py logs 100
# Stop the system
python mcp_client.py stop
Direct Scripts
# Run single nurturing cycle
python lead_nurturer.py
# View lead dashboard
python lead_dashboard.py
# Send emails from CSV
python send_from_csv.py contacts.csv --body_file body.txt
📊 Current Campaign
Dental Practice Outreach
- Target: 96 dental practices in Chicago
- Message: AI lead follow-up system for dental practices
- Follow-up Schedule: 3 days and 7 days after initial contact
- Expected Results: 20-30% response rate, 10-15% conversion
Email Template
Hi {{first_name}},
Did you know many dental practices lose 20–30% of new patient inquiries because follow-ups slip through the cracks?
We've built an AI agent that automatically follows up with every lead via SMS/email and books them straight into your calendar.
Clients typically see 5–9 extra appointments in the first 30 days.
Have time for 10-min demo call this week?
Thank you,
Brandon
Quantra Labs
🔧 Configuration
Environment Variables
# Gmail API Configuration
CREDENTIALS_FILE=credentials.json
TOKEN_FILE=token.json
# Nurturing Settings
PER_MINUTE=12
RESUME=false
LOG_FILE=send_log.csv
# MCP Server Settings
MCP_SERVER_PORT=8000
LOG_LEVEL=INFO
Nurturing Configuration
{
"sender_email": "your-email@domain.com",
"follow_up_schedule": {
"followup_1_days": 3,
"followup_2_days": 7
},
"automation": {
"check_responses_interval_hours": 4,
"auto_respond_to_interest": true
}
}
📈 Performance Metrics
Expected Results
- Response Rate: 20-30% from initial outreach
- Follow-up Response: 40-60% from follow-ups
- Conversion Rate: 10-15% to interested leads
- Automation Coverage: 80% of responses handled automatically
- Uptime: 99.9% with Docker restart policies
Monitoring
- Real-time lead scoring and status tracking
- Response rate analytics and conversion metrics
- System health monitoring and error reporting
- Complete audit trail of all interactions
🚀 Deployment Options
Docker (Recommended)
# One-click deployment
./deploy.sh
# Manual deployment
docker-compose up -d
Local Development
# Install dependencies
pip install -r requirements.txt
# Run nurturing system
python run_nurturing.py
Production Server
# Systemd service
sudo cp lead-nurturing.service /etc/systemd/system/
sudo systemctl enable lead-nurturing
sudo systemctl start lead-nurturing
🔒 Security & Privacy
- Local Data Storage - All data remains on your server
- OAuth2 Authentication - Secure Gmail API access
- No External Services - No data sent to third parties
- Encrypted Credentials - Secure credential management
- Audit Logging - Complete activity tracking
📞 Support & Documentation
- Deployment Guide:
DEPLOYMENT_GUIDE.md
- Nurturing Guide:
NURTURING_README.md
- Debug Report:
DEBUG_REPORT.md
- Docker Setup:
docker-compose.yml
🎯 Use Cases
Sales Outreach
- B2B lead generation and nurturing
- Automated follow-up sequences
- Response tracking and lead scoring
Marketing Campaigns
- Email marketing automation
- A/B testing and optimization
- Performance analytics
Customer Success
- Onboarding email sequences
- Renewal and upsell campaigns
- Customer feedback collection
📊 System Architecture
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ MCP Client │◄──►│ MCP Server │◄──►│ Lead Nurturer │
│ (Control) │ │ (24/7 Service) │ │ (Automation) │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌──────────────────┐
│ Gmail API │
│ (Email System) │
└──────────────────┘
🏆 Enterprise Features
- 24/7 Operation - Continuous automation
- Scalable Architecture - Handle thousands of leads
- Professional Monitoring - Real-time dashboards
- Error Recovery - Automatic failure handling
- Audit Compliance - Complete activity logging
- Docker Deployment - Production-ready containerization
Ready to automate your lead nurturing? 🚀
This system is production-ready and can handle enterprise-scale email campaigns with full automation, monitoring, and 24/7 operation.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📧 Contact
- Author: Brandon
- Company: Quantra Labs
- Repository: GMAIL-MCP-Agent
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.