Skip to main content
Glama
davsdevelop

DAVS Gmail MCP Server

by davsdevelop

📧 Gmail AI Assistant с Model Context Protocol (MCP)

Этот проект реализует интеллектуального ассистента, способного напрямую взаимодействовать с учётной записью Gmail с помощью Model Context Protocol (MCP).

Он демонстрирует безопасную интеграцию локальной LLM (Ollama) с внешними API (Google Workspace), позволяя модели читать, резюмировать и отправлять письма, а также потреблять статические ресурсы (PDF) с помощью динамических шаблонов — всё в рамках стандартизированной клиент-серверной архитектуры.

🏗️ Архитектура системы

  • MCP-сервер (gmail_mcp_server.py): Предоставляет клиенту инструменты (Tools), статические и динамические ресурсы (Resources / Resource Templates) и предопределённые промпты. Обрабатывает аутентификацию OAuth2 с Google Cloud.

  • MCP-клиент (client.py): Подключается к MCP-серверу, обнаруживает доступные возможности и динамически форматирует их, чтобы языковая модель (Llama 3.1) могла использовать их как Function Calling.

  • Графический интерфейс (app.py): Интерактивное приложение на Streamlit, которое управляет историей диалога, отображает динамические компоненты UI в зависимости от ответа сервера и упрощает использование быстрых промптов.

  • Безопасность: Строгое управление учётными данными. Аутентификация выполняется локально, а токены сессии хранятся в среде выполнения, без внешнего доступа.

Related MCP server: Gmail Streamable MCP Server

✨ Возможности агента

  • Инструменты (Tools): list_emails (поиск и фильтрация) и send_email (составление и отправка).

  • Ресурсы (Resources): Доступ к профилю Gmail пользователя.

  • Шаблоны (Resource Templates): Чтение и внедрение контекста из локальных PDF-руководств (например, docs://setup-manual/{version}) непосредственно в контекст LLM.

  • Промпты: Готовые сценарии для ежедневных сводок и составления профессиональных писем.

🚀 Установка и настройка

Предварительные требования

  • Python 3.10+

  • Установленный Ollama с моделью llama3.1.

  • Учётная запись Google Cloud Platform (GCP).

1. Настройка учётных данных Google (обязательно)

По соображениям безопасности этот репозиторий не содержит учётных данных доступа. Вам необходимо создать свои:

  1. Перейдите в Google Cloud Console.

  2. Создайте новый проект и включите Gmail API.

  3. Настройте экран согласия OAuth (добавьте свой адрес электронной почты как тестового пользователя).

  4. Создайте учётные данные типа OAuth client ID (Desktop application).

  5. Скачайте JSON-файл, переименуйте его в credentials.json и поместите в корень этого проекта.

2. Запуск окружения

# Clonar repositorio
git clone [https://github.com/tu-usuario/gmail-mcp-server.git](https://github.com/tu-usuario/gmail-mcp-server.git)
cd gmail-mcp-server

# Crear entorno virtual e instalar dependencias
python -m venv venv
source venv/bin/activate  # En Windows: venv\Scripts\activate
pip install -r requirements.txt

# Iniciar la interfaz gráfica
streamlit run app.py

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Gmail access through MCP, allowing LLMs to read, compose, and send emails.
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Streamable HTTP MCP server for Gmail that enables AI agents to search threads, read messages, manage drafts, and organize the inbox via OAuth authentication.
    181 npm
    10
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that provides Gmail access for LLMs, enabling email composition, sending, searching, and label management via the Gmail API.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables users to access and manage their Gmail and Google Drive data via a Streamlit UI or Claude Desktop, supporting email counts, searches, file listings, and storage queries using OAuth authentication.
    -