Gmail MCP Server

by Samarth2001
MIT License
  • Apple
  • Linux

Integrations

  • Enables complete email management through Gmail, including sending emails with attachments, reading and searching emails, managing labels and organization, handling drafts, and performing batch operations on multiple emails.

  • Integrates with Google Cloud for authentication and API access, allowing the MCP server to securely connect to Gmail services through OAuth 2.0 credentials.

Сервер Gmail MCP

Мощный сервер Model Context Protocol (MCP), позволяющий Claude AI напрямую взаимодействовать с Gmail.

📖 Содержание

📋 Обзор

Gmail MCP Server — это комплексная реализация, которая позволяет помощникам ИИ, таким как Клод, напрямую взаимодействовать с Gmail посредством естественного языка. Он предоставляет богатый набор инструментов для управления электронной почтой, обеспечивая бесшовную интеграцию между разговорным ИИ и вашим почтовым ящиком.

💡 Основные характеристики

  • Полное управление электронной почтой
    • Отправляйте обычные текстовые и HTML-сообщения с вложениями
    • Читайте электронные письма с правильным анализом сложных структур сообщений.
    • Поиск входящих сообщений с помощью мощного синтаксиса запросов Gmail
    • Создавайте и обновляйте черновики писем
    • Управление метками, статусом прочитанного/непрочитанного и корзиной
    • Выполнение пакетных операций над несколькими электронными письмами
  • Расширенная интеграция
    • Современная кодовая база Python с шаблоном async/await
    • Комплексная обработка ошибок и восстановление
    • Подробный отчет о ходе работ
    • Безопасный процесс аутентификации OAuth
    • Несколько транспортных режимов (STDIO и SSE)
    • Поддержка различных сценариев развертывания

🚀 Быстрый старт

Предпосылки

  • Python 3.8 или выше
  • Проект Google Cloud с включенным API Gmail
  • Учетные данные OAuth 2.0 для API Gmail

Установка

  1. Клонировать репозиторий
    git clone https://github.com/yourusername/gmail-mcp-server.git cd gmail-mcp-server
  2. Настройте виртуальную среду
    python -m venv venv # On Windows venv\Scripts\activate # On macOS/Linux source venv/bin/activate
  3. Установить зависимости
    pip install -r requirements.txt
  4. Настройте учетные данные Google Cloud и OAuthПосетите Google Cloud Console , чтобы:
    • Создать новый проект
    • Включить API Gmail
    • Настройте экран согласия OAuth
    • Создание учетных данных OAuth Client ID (настольное приложение)
    • Загрузите учетные данные как credentials.json в корне проекта

Первый запуск и аутентификация

Запустите сервер один раз для аутентификации:

python gmail_server.py

Это откроет окно браузера, предлагающее вам пройти аутентификацию с помощью вашего аккаунта Google. После аутентификации будет создан файл token.json , который будет сохранен для будущего использования.

Настроить рабочий стол Клода

  1. Отредактируйте файл конфигурации Claude Desktop:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. Добавьте сервер Gmail MCP в конфигурацию:
    { "mcpServers": { "gmail": { "command": "python", "args": [ "/absolute/path/to/gmail-mcp-server/gmail_server.py" ] } } }
  3. Сохраните файл и перезапустите Claude Desktop.

Примечание: замените "/absolute/path/to/gmail-mcp-server/gmail_server.py" фактическим абсолютным путем к файлу gmail_server.py в клонированном репозитории.

🧰 Доступные инструменты

Сервер Gmail MCP предоставляет Клоду следующие инструменты:

Отправка электронной почты

  • send_email — отправка простых писем с текстовым/HTML-контентом
  • send_email_with_attachment — отправлять электронные письма с прикрепленными файлами
  • send_email_with_multiple_attachments — отправлять электронные письма с несколькими вложениями

Чтение электронной почты

  • read_email - Прочитать содержимое определенного электронного письма по идентификатору
  • get_unread_emails — Получить список непрочитанных писем
  • get_important_emails — Получайте письма, отмеченные как важные
  • get_emails_with_attachments — Получить электронные письма с вложениями
  • get_recent_emails — Получить письма за последние X дней

Поиск и организация электронной почты

  • search_emails — Поиск писем с использованием синтаксиса запросов Gmail
  • get_email_labels — список всех ярлыков/папок Gmail
  • create_email_label — Создать новый ярлык
  • delete_email_label — Удалить существующую метку
  • label_email — применить метку к электронному письму
  • remove_email_label — Удалить метку из электронного письма

Управление статусом электронной почты

  • mark_as_read — Отметить письмо как прочитанное
  • mark_as_unread — Отметить письмо как непрочитанное
  • delete_email — Переместить письмо в корзину

Управление проектом

  • create_email_draft — создать новый черновик электронного письма
  • update_email_draft — обновить существующий черновик
  • list_email_drafts — Список доступных черновиков
  • send_draft — Отправить существующий черновик

Пакетные операции

  • batch_apply_label — применить метку к нескольким письмам
  • batch_delete_emails — Переместить несколько писем в корзину

Информация об учетной записи

  • get_email_profile — Получить информацию профиля Gmail
  • summarize_recent_emails — создать сводку последних писем

💬 Примеры использования

Вот несколько примеров подсказок для Клода:

Send an email to john@example.com with the subject "Project Update" and let them know we're still on track for the deadline next week.
Search my inbox for any emails from Bank of America in the last month and summarize them for me.
Find all unread emails from my boss and create a summary of any action items mentioned in them.
Draft an email to the team about the upcoming meeting on Thursday at 2pm. Remind everyone to prepare their weekly updates.

🔧 Расширенная конфигурация

Переменные среды

Сервер поддерживает несколько переменных среды для настройки:

ПеременнаяОписание
GMAIL_TOKEN_PATHПользовательский путь для хранения токена OAuth
GMAIL_CREDENTIALS_PATHПользовательский путь к учетным данным OAuth
GOOGLE_CLIENT_IDИдентификатор клиента OAuth (альтернатива файлу учетных данных)
GOOGLE_CLIENT_SECRETСекрет клиента OAuth (альтернатива файлу учетных данных)
MCP_PORTПорт для транспорта SSE (по умолчанию: 3000)
DEBUGВключить режим отладки ( true или false )

Режим сервера SSE

Сервер может работать в режиме SSE (Server-Sent Events) для интеграции на основе HTTP:

python gmail_server.py --sse [port]

Это запустит сервер на указанном порту (по умолчанию: 3000), сделав его доступным по протоколу HTTP.

📚 Документация

🔒 Вопросы безопасности

  • Сервер использует OAuth 2.0 для безопасной аутентификации API Gmail.
  • Все действия выполняются локально на вашем компьютере — электронные письма никогда не проходят через сторонние серверы.
  • Токены аутентификации хранятся локально и могут быть отозваны в любое время.
  • Доступ к локальному файлу требуется только для чтения вложений.
  • Клод всегда запрашивает подтверждение перед отправкой или удалением писем.

🤝 Вклад

Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.

  1. Форк репозитория
  2. Создайте ветку функций ( git checkout -b feature/amazing-feature )
  3. Зафиксируйте свои изменения ( git commit -m 'Add some amazing feature' )
  4. Отправить в ветку ( git push origin feature/amazing-feature )
  5. Открыть запрос на извлечение

📝 Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE .

🙏 Благодарности

  • Google для API Gmail
  • Антропный для Клода и модельного контекстного протокола
  • Участники клиентских библиотек Python Gmail API

Related MCP Servers

  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that enables AI assistants to interact with Gmail services, supporting email operations, draft management, and calendar functionality through Google API integration.
    Last updated -
    TypeScript
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server that provides a seamless email management interface through Claude, allowing users to search, read, and send emails directly through natural language conversations.
    Last updated -
    40
    Python
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    A Model Context Protocol server that enables AI assistants like Claude to interact with Gmail through natural language, providing comprehensive email management capabilities including sending, reading, organizing, searching, and managing drafts and labels.
    Last updated -
    Python
    GPL 3.0
    • Apple
  • -
    security
    F
    license
    -
    quality
    A Model Context Protocol server that enables AI assistants to access and manage email through IMAP, supporting browsing, searching, reading, and organizing emails while learning user preferences over time.
    Last updated -
    2
    Python
    • Linux
    • Apple

View all related MCP servers

ID: sc123prv7q