Gmail MCP Summarizer
Enables AI models to fetch and summarize Gmail messages, send emails with attachments, and convert text content into PDFs. It streamlines email-based workflows like automated reporting and task management through the Model Context Protocol.
README
📧 Gmail MCP Summarizer
Model Context Protocol (MCP) kullanarak Gmail ile etkileşime geçen akıllı mail asistanı.
🌟 Özellikler
- ✅ Mail Okuma: Belirli gönderenden gelen mailleri otomatik çekme
- ✅ Mail Gönderme: Ek dosyalı mail gönderme
- ✅ PDF Oluşturma: Metin içeriğini PDF'e dönüştürme (Türkçe karakter desteği)
- ✅ Akıllı Özet: Claude AI ile mail özetleme
- ✅ Otomatik Yanıt: PDF ile otomatik ödev/rapor gönderme
🎯 Kullanım Senaryosu
- Hocadan gelen ödev maillerini otomatik oku
- Claude ile ödev gereksinimlerini özetle
- Ödev hazırlandıktan sonra PDF'e çevir
- Otomatik olarak hocaya geri gönder
🛠️ Kurulum
Gereksinimler
- Python 3.8+
- Gmail hesabı
- Claude Desktop uygulaması
- Google Cloud Console erişimi
1. Repoyu Klonla
git clone https://github.com/hasanoz07/mcp-gmail-summarizer.git
cd mcp-gmail-summarizer
2. Virtual Environment Oluştur
python3 -m venv venv
source venv/bin/activate # Mac/Linux
# veya
venv\Scripts\activate # Windows
3. Paketleri Yükle
pip install -r requirements.txt
4. Google Cloud Console Ayarları
- Google Cloud Console git
- Yeni proje oluştur
- Gmail API'yi etkinleştir
- OAuth 2.0 Credentials oluştur (Desktop App)
credentials.jsondosyasını indir ve proje klasörüne koy
5. İlk Kimlik Doğrulama
python test_gmail.py
Tarayıcı açılacak, Gmail hesabına izin ver.
6. Claude Desktop Konfigürasyonu
Mac:
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
Şunu ekle (yolları kendinize göre düzenleyin):
{
"mcpServers": {
"gmail-summarizer": {
"command": "/PATH/mcp-gmail-summarizer/venv/bin/python3",
"args": [
"/PATH/mcp-gmail-summarizer/gmail_mcp_server.py"
]
}
}
}
7. Claude Desktop'ı Başlat
- Claude Desktop'ı aç
- Sol altta 🔨 simgesine tıkla
gmail-summarizeraktif olmalı
📖 Kullanım
Mail Okuma
makale@example.com adresinden son 5 maili getir ve özetle
PDF Oluştur ve Gönder
Şu metni PDF'e çevir ve hoca@example.com adresine gönder:
Ödev 1 - Python Temelleri
Bu ödevde Python'un temel konuları işlenmiştir.
Email konusu: "Ödev 1 Tamamlandı"
Ek Dosyalı Mail Gönder
hoca@example.com adresine /path/to/file.pdf dosyasını gönder
Konu: "Proje Raporu"
İçerik: "Raporumu ekte bulabilirsiniz."
🏗️ Proje Yapısı
mcp-gmail-summarizer/
├── gmail_mcp_server.py # MCP sunucu
├── gmail_fetcher.py # Gmail API işlemleri
├── pdf_generator.py # PDF oluşturucu
├── test_gmail.py # Gmail bağlantı testi
├── requirements.txt # Python bağımlılıkları
├── credentials.json # Google OAuth (gitignore'da)
├── token.pickle # Kimlik token (gitignore'da)
├── generated_pdfs/ # Oluşturulan PDF'ler
└── README.md # Bu dosya
🔧 MCP Araçları
1. get_emails_from_sender
Belirli bir gönderenden mailleri çeker.
Parametreler:
sender_email: Gönderen mail adresimax_results: Maksimum mail sayısı (varsayılan: 10)
2. send_email_with_attachment
Mail gönderir (opsiyonel ek ile).
Parametreler:
to_email: Alıcı adresisubject: Mail konusubody: Mail içeriğiattachment_path: Ek dosya yolu (opsiyonel)
3. create_and_send_pdf
Metin → PDF → Mail gönder.
Parametreler:
content: PDF içeriğito_email: Alıcı adresisubject: Mail konusupdf_title: PDF başlığıemail_body: Mail içeriği
🔐 Güvenlik
credentials.jsonvetoken.pickledosyaları asla Git'e eklenmez- OAuth2 kullanarak güvenli kimlik doğrulama
- Sadece gerekli izinler istenir (gmail.readonly + gmail.send)
🐛 Sorun Giderme
"No module named 'reportlab'" hatası
pip install reportlab markdown2 Pillow
"Server disconnected" hatası
- Claude Desktop loglarını kontrol et:
tail -f ~/Library/Logs/Claude/mcp-server-gmail-summarizer.log
- MCP sunucusunu manuel test et:
python3 gmail_mcp_server.py
Türkçe karakterler görünmüyor
pdf_generator.py doğru font kullanıyor mu kontrol et.
📝 Lisans
MIT License
👤 Yazar
Hasan Öz
- GitHub: [@hasanoz07]
- Email: hasanoz2002@gmail.com
🙏 Katkıda Bulunma
Pull request'ler memnuniyetle karşılanır!
- Fork'la
- Feature branch oluştur (
git checkout -b feature/amazing-feature) - Commit'le (
git commit -m 'Add amazing feature') - Push'la (
git push origin feature/amazing-feature) - Pull Request aç
📚 Referanslar
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器