Skip to main content
Glama
davsdevelop

DAVS Gmail MCP Server

by davsdevelop

📧 Model Context Protocol (MCP) を使用した Gmail AI アシスタント

このプロジェクトは、Model Context Protocol (MCP) を使用して Gmail アカウントと直接対話できるインテリジェントアシスタントを実装します。

ローカル LLM(Ollama)と外部 API(Google Workspace)の安全な統合を実証し、モデルがメールの読み取り、要約、送信に加え、動的テンプレートによる静的リソース(PDF)の利用を可能にし、すべて標準化されたクライアント・サーバーアーキテクチャの下で動作します。

🏗️ システムアーキテクチャ

  • MCP サーバー(gmail_mcp_server.py): ツール、静的リソースおよび動的リソース(Resources / Resource Templates)、事前定義されたプロンプトをクライアントに公開します。Google Cloud による OAuth2 認証を処理します。

  • MCP クライアント(client.py): MCP サーバーに接続し、利用可能な機能を検出して、言語モデル(Llama 3.1)が Function Calling として使用できるように動的にフォーマットします。

  • グラフィカルインターフェース(app.py): Streamlit で構築された対話型アプリケーションで、会話履歴を管理し、サーバーの応答に応じて動的 UI コンポーネントをレンダリングし、クイックプロンプトの使用を容易にします。

  • セキュリティ: 認証情報の厳格な管理。認証はローカルで実行され、セッショントークンは実行環境内に保持され、外部に漏洩することはありません。

Related MCP server: Gmail Streamable MCP Server

✨ エージェントの機能

  • ツール: list_emails(検索とフィルタリング)および send_email(作成と送信)。

  • リソース: Gmail ユーザープロフィールへのアクセス。

  • リソーステンプレート: ローカル PDF マニュアル(例: docs://setup-manual/{version})からコンテキストを読み取り、LLM コンテキストに直接注入します。

  • プロンプト: 日次要約やプロフェッショナルなメール作成のための事前構築されたフロー。

🚀 インストールと設定

前提条件

  • Python 3.10+

  • llama3.1 モデルがインストールされた Ollama

  • Google Cloud Platform(GCP)アカウント

1. Google 認証情報の設定(必須)

セキュリティ上の理由により、このリポジトリには認証情報は含まれていません。ご自身で生成する必要があります:

  1. Google Cloud Console にアクセスします。

  2. 新しいプロジェクトを作成し、Gmail API を有効にします。

  3. OAuth 同意画面を設定します(テストユーザーとして自分のメールアドレスを追加します)。

  4. OAuth クライアント ID(デスクトップアプリケーション)タイプの認証情報を作成します。

  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.
    -