IMAP MCP Server

Integrations

  • Uses Python as the runtime environment to implement the IMAP MCP server, providing email browsing, organization, and processing capabilities.

IMAP MCP サーバー

AI アシスタントが電子メールをチェックし、メッセージを処理し、対話を通じてユーザーの好みを学習できるようにするモデル コンテキスト プロトコル (MCP) サーバー。

概要

このプロジェクトは、IMAP 電子メール サーバーとインターフェイスして次の機能を提供する MCP サーバーを実装します。

  • メールの閲覧と検索
  • メールの整理(移動、タグ付け、マーク付け)
  • メールの作成と返信
  • インタラクティブな電子メール処理とユーザー設定の学習
  • 自動メール要約と分類
  • 複数のIMAPプロバイダーのサポート

IMAP MCP サーバーは、Claude やその他の MCP 互換アシスタントと連携するように設計されており、時間の経過とともにユーザーの好みを学習するインテリジェントな電子メール アシスタントとして機能します。

特徴

  • メール認証: さまざまな認証方法による IMAP サーバーへの安全なアクセス
  • メール閲覧: フィルタリングオプションを使用してフォルダとメッセージを一覧表示します
  • メールの内容: テキスト、HTML、添付ファイルを含むメッセージの内容を読む
  • メールアクション: 移動、削除、既読/未読としてマーク、メッセージにフラグを付ける
  • メール作成: 適切な形式でメッセージへの返信を下書きして保存します
    • プレーンテキストとHTMLの返信をサポート
    • CC サポートによる全員返信機能
    • In-Reply-To と References ヘッダーを使用した適切なスレッド化
    • 下書きを適切なフォルダに保存する
  • 検索: フォルダ間の基本的な検索機能
  • インタラクションパターン:電子メールの処理と学習設定のための構造化パターン(計画中)
  • 学習レイヤー: ユーザーの意思決定を記録・分析し、将来の行動を予測する(計画)

現在のプロジェクト構造

プロジェクトは現在、次のように構成されています。

. ├── examples/ # Example configurations │ └── config.yaml.example ├── imap_mcp/ # Source code │ ├── __init__.py │ ├── config.py # Configuration handling │ ├── imap_client.py # IMAP client implementation │ ├── models.py # Data models │ ├── resources.py # MCP resources implementation │ ├── server.py # Main server implementation │ └── tools.py # MCP tools implementation ├── tests/ # Test suite │ ├── __init__.py │ └── test_models.py ├── INSTALLATION.md # Detailed installation guide ├── pyproject.toml # Project configuration └── README.md # This file

はじめる

前提条件

  • Python 3.8以上
  • IMAP 対応のメールアカウント(Gmail を推奨)
  • パッケージ管理とPythonスクリプトの実行のためのuv

インストール

  1. まだインストールしていない場合は、uv をインストールします。
    curl -LsSf https://astral.sh/uv/install.sh | sh
  2. パッケージをクローンしてインストールします。
    git clone https://github.com/non-dirty/imap-mcp.git cd imap-mcp uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate uv pip install -e ".[dev]"

Gmailの設定

  1. 設定ファイルを作成します。
    cp config.sample.yaml config.yaml
  2. Gmail OAuth2 認証情報を設定します。
    • Google Cloud Consoleに移動
    • 新しいプロジェクトを作成するか、既存のプロジェクトを選択してください
    • Gmail APIを有効にする
    • OAuth2 認証情報を作成する (デスクトップ アプリケーション タイプ)
    • クライアント構成をダウンロードする
  3. Gmail の設定でconfig.yaml更新します。
    imap: host: imap.gmail.com port: 993 username: your-email@gmail.com use_ssl: true oauth2: client_id: YOUR_CLIENT_ID client_secret: YOUR_CLIENT_SECRET refresh_token: YOUR_REFRESH_TOKEN

使用法

メールをチェック

受信トレイ内のメールを一覧表示するには:

uv run list_inbox.py --config config.yaml --folder INBOX --limit 10

利用可能なオプション:

  • --folder : チェックするフォルダを指定します(デフォルト: INBOX)
  • --limit : 表示するメールの最大数(デフォルト: 10)
  • --verbose : 詳細なログ出力を有効にする
MCPサーバーの起動

IMAP MCP サーバーを起動するには:

uv run imap_mcp.server --config config.yaml

デバッグ付き開発モードの場合:

uv run imap_mcp.server --dev
OAuth2トークンの管理

OAuth2 トークンを更新するには:

uv run imap_mcp.auth_setup refresh-token --config config.yaml

新しい OAuth2 トークンを生成するには:

uv run imap_mcp.auth_setup generate-token --config config.yaml

発達

開発環境の設定

# Set up virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install development dependencies pip install -e ".[dev]"

テストの実行

pytest

セキュリティに関する考慮事項

このMCPサーバーは、お客様のメールアカウントへのアクセスを必要とします。メールアカウントには、個人情報が含まれています。以下のセキュリティ上の考慮事項にご注意ください。

  • 環境変数または安全な資格情報ストレージを使用して電子メール資格情報を安全に保存します
  • メインアカウントのパスワードの代わりにアプリ固有のパスワードの使用を検討してください
  • フォルダへのアクセスをユースケースに必要なものだけに制限する
  • メールプロバイダーの設定でサーバーに付与された権限を確認します

プロジェクトロードマップ

  • [x] プロジェクトの初期化とリポジトリのセットアップ
  • [x] 基本的なIMAP統合
  • [x] メールリソースの実装
  • [x] メールツールの実装
  • [x] メールの返信と下書き機能
  • [ ] ユーザー嗜好学習の実装
  • [ ] 高度な検索機能
  • [ ] 複数アカウントのサポート
  • [ ] 主要メールプロバイダーとの統合

貢献

貢献を歓迎します!ガイドラインについてはCONTRIBUTING.mdをご覧ください。

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。

謝辞

-
security - not tested
F
license - not found
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

AI アシスタントが IMAP 経由で電子メールにアクセスして管理できるようにし、時間の経過とともにユーザーの好みを学習しながら電子メールの閲覧、検索、読み取り、整理をサポートするモデル コンテキスト プロトコル サーバーです。

  1. Overview
    1. Features
      1. Current Project Structure
        1. Getting Started
          1. Prerequisites
          2. Installation
          3. Gmail Configuration
          4. Usage
        2. Development
          1. Setting Up Development Environment
          2. Running Tests
        3. Security Considerations
          1. Project Roadmap
            1. Contributing
              1. License
                1. Acknowledgments
                  ID: qghctp3vs5