🦁

【MCP Server】Gmailでメールの送信を自動化しよう

に公開

以前実装したものをご紹介します実装はこちら
https://github.com/ykuchiki/gmail-mcp

簡単な紹介

Gmail MCPは、AIアシスタントがGmailと直接連携できるようにするMCPサーバー実装です。Model Context Protocol(MCP)を活用し、AIアシスタントがメールの送受信、検索、管理を自然言語で行えるようになります。

✨ 主な機能

📧 メール操作

  • メール送信: 宛先件名、本文、CC/BCC、添付ファイル対応
  • 下書き作成: 後で編集・送信可能な下書きの作成
  • メール読み取り: 指定したメールの内容を取得
  • メール検索: 高度な検索クエリでメールを検索
  • メール削除: 不要なメールの削除

🏷️ ラベル管理

  • ラベル作成: 新しいラベルの作成とカスタマイズ
  • ラベル更新: 既存ラベルの設定変更(色、表示設定など)
  • ラベル削除: 不要なラベルの削除
  • ラベル一覧: 全ラベルの確認
  • ラベル検索: 名前によるラベルの検索

🛠️ 技術仕様

  • 言語: Python 3.11+
  • プロトコル: Model Context Protocol (MCP)
  • API: Gmail API
  • 認証: OAuth2.0
  • パッケージ管理: uv

🎯 使用例

  • AIアシスタントとの対話例
ユーザー: 「未読メールを確認して、重要なものにラベルを付けて」
AI: Gmail MCPを使用して未読メールを検索し、重要度に応じてラベルを付与します。

ユーザー: 「来週の会議の資料を添付して、チーム全員にメールを送って」
AI: 指定されたファイルを添付して、チームメンバーにメールを送信します。

ユーザー: 「先週受信したメールで、プロジェクト関連のものを検索して」
AI: プロジェクト関連のメールを検索し、結果を整理して表示します。
  • 添付ファイル対応
    複数のファイルを添付してメール送信や下書き作成が可能:
{
  "to": ["team@example.com"],
  "subject": "月次レポート送付",
  "body": "今月のレポートを添付いたします。",
  "attachments": [
    "/Users/user/Documents/monthly_report.pdf",
    "/Users/user/Images/charts.png",
    "/Users/user/Data/spreadsheet.xlsx"
  ]
}

🔧 セットアップ手順

  1. 前提条件
  • Python 3.11以上
  • Gmailアカウント
  • Google Cloud Platformプロジェクト(Gmail API有効化済み)
  • uvパッケージマネージャー
  1. インストール
    リポジトリのクローン
git clone https://github.com/ykuchiki/gmail-mcp.git
cd gmail-mcp

仮想環境の作成

uv init

依存関係のインストール

uv pip install -r requirements.txt
  1. OAuth認証設定

credentialsディレクトリを作成

Google Cloud Consoleでプロジェクト作成

Gmail APIを有効化

OAuth認証情報を作成

リダイレクトURIにhttp://localhost:8080/を追加

認証情報をcredentials/client_secret_gmail_oauth.jsonとして保存

  1. MCPクライアント設定
{
    "mcpServers": {
        "gmail-mcp": {
            "command": "uv",
            "args": [
                "--directory",
                "/path/to/your/gmail-mcp/src",
                "run",
                "main.py"
            ]
        }
    }
}

💡 活用シーン

📊 ビジネス用途

  • メール管理の自動化: 重要なメールの自動分類とラベル付け
  • レポート配信: 定期的なレポートの自動送信
  • 顧客対応: 問い合わせメールの自動整理と優先度付け

🎓 教育・学習用途

  • 課題提出: 学生の課題提出メールの自動管理
  • 通知配信: 重要な連絡事項の一斉配信
  • 資料共有: 学習資料の自動配布

🏠 個人用途

  • メール整理: 受信メールの自動分類
  • 予定管理: カレンダー連携メールの自動処理
  • 情報収集: 特定トピックのメール自動収集

🤝 貢献方法
このプロジェクトはオープンソースであり、コミュニティの貢献を歓迎しています:
バグレポート: 問題の報告と改善提案
機能追加: 新機能の提案と実装
ドキュメント: より分かりやすいドキュメントの作成
翻訳: 多言語対応の支援

📄 ライセンス
このプロジェクトはMITライセンスの下で提供されており、商用・非商用問わず自由に使用できます。

GitHub: https://github.com/ykuchiki/gmail-mcp

ライセンス: MIT License

対応言語: 日本語、英語、スペイン語

Discussion