mcpField
G
gigamail

gigamail

ローカル
gigamail.aiコミュニケーション171 日前に更新

gigamail について

gigamailは、AIエージェント向けのメール・カレンダー用MCPサーバーです。Microsoft GraphとIMAPの複数アカウントに対応し、データをローカルに保管します。送信や削除は人間の別経路での承認と監査ログで管理します。

主な機能

  1. 01Microsoft GraphとIMAPの複数アカウント
  2. 02ローカルメール保管とハイブリッド検索
  3. 03送信者メモリーと連絡先メモ
  4. 04カレンダーを考慮した下書き提案
  5. 05機密フィールドのマスキング
  6. 06危険な操作の人間による承認と記録

活用シーン

  1. 01複数アカウントのメール履歴を検索
  2. 02連絡先情報やファイルを使った返信の下書き
  3. 03カレンダーの空き時間に基づく会議候補の提案
  4. 04送信や削除前の人間による確認

MCP 対応

stdio経由で、メール、カレンダー、検索、ファイルのツールをMCPクライアントに提供します。送信や削除などの危険な操作は承認待ちリクエストとなり、コンソールまたはコマンドラインで人間が承認した後に実行されます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"adecubed-gigamail": {
"command": "uvx",
"args": [
"gigamail"
],
"env": {
"GIGAMAIL_ROOT": "<GIGAMAIL_ROOT>"
}
}
}
}
起動コマンドuvx gigamail
設定が必要な環境変数
GIGAMAIL_ROOTData directory (Windows: %APPDATA%\ADE, POSIX: ~/.ade). Optional; declare it if your MCP client filters the subprocess environment.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypigigamail0.3.4

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

GigaMail — AI エージェントのためのメール

English · Italiano · 中文

Download Download gigamail.ai PyPI PyPI Downloads License AGPL-3.0 GitHub stars Python MCP server Claude Code Codex OpenClaw Hermes

Claude、Codex、OpenClaw、Hermes、またはあらゆる MCP クライアントなどのエージェントに、メールへの安全で制御されたアクセスを提供するMCP サーバー — 複数アカウント(Microsoft Graph + IMAP)、カレンダー、 ローカル検索インデックス、送信者メモリ、エージェントを考慮した権限モデルを備えています。

LLM は内蔵されていません。インテリジェンスを担うのはエージェントです。MCP サーバーは stdio のみで通信し、ネットワークポートは開きません。(オプションの人間向けコンソールでは、127.0.0.1 にバインドされたローカル HTTP API が追加されます。)

データはお使いのマシン上に保持されます:GigaMail はメールのインデックス、認証情報、メモリ、設定をお使いのマシン上に保持し、当社はサービスを運用せず、データも受け取りません。エージェントが読み取るメールの内容は、当然ながら、そのエージェントとモデルプロバイダーが独自のデータポリシーに基づいて取り扱います。エージェントは慎重に選んでください。マスカーを使えば、エージェントが見る前に機密フィールド(納税者番号、VAT 番号、IBAN、メールアドレス、電話番号)を隠せます。検証は AI を使わず、決定論的に行われます。

GigaMail

## 理由
  • ハイブリッド検索:プロバイダー検索(Graph/IMAP)とローカルの SQLite インデックスを組み合わせ、高速でオフラインでも使いやすい
  • 独自のアーカイブ:すべてのアカウントのすべてのメールを、添付ファイルも含めてローカルに保存します。サーバーから削除された後も検索できます。PC 上の Outlook の履歴は一度だけインポートします(gigamail archive)
  • 送信者の記憶:送信者ごとの文体、話題、履歴を記録し、返信が自然なものになります
  • 連絡先メモ:各人との間に何があったか、たとえば会議の様子や相手の目的を名前の横に記録し、その人宛てのすべての下書きで参照します
  • オブザーバー:過去の下書きをユーザーがどのように編集したかからパターンを学習します
  • カレンダーを考慮した下書き:カレンダーの空き時間内かつ勤務時間内の時間だけを提案する下書きを作成します
  • アカウントをまとめて表示(コンソール):アカウントのタイルを別のタイルにドラッグすると、両方のメールボックスを1つのリストとして表示できます。メールにはそれぞれのアカウント情報が保持されるため、返信は正しいアドレスから送信されます。「Split」で元に戻せます。エージェントには引き続きアカウントが個別に表示されます
  • ナレッジファイル:価格表、利用規約、製品資料をアカウントに添付すると、エージェントがそれらを読んでメールに返信します。エージェントがすべてを知っている必要はありません。アカウントがそれぞれ独自のナレッジを保持します
  • エージェントを考慮した権限管理:読み取りは自由に行えます。送信/削除には別経路での承認が必要です。エージェントには実行できないリクエスト ID が渡され、人間がコンソールまたは CLI から承認した後にのみ、人間が確認したとおりの引数で実行されます。すべての書き込み操作は追記専用のアクションログに記録されます
  • 認証情報がエージェントのチャネルに渡ることはありません:ログインとアカウント管理は CLI のみで行います。メール内のプロンプトインジェクションによってアカウントが追加されたり、シークレットが読み取られたりすることはありません

クイックスタート

GigaMail は、次の 2 つの方法で提供されています。

  • デスクトップアプリ(Windows、macOS) — gigamail.ai または 最新リリースからダウンロードしてください。独自の Python を備えた人間向けコンソールです。インストーラーは 1 つだけで、事前準備や管理者パスワードは不要です。自動で更新されます。

    • Windows 10/11:GigaMail-Setup.exe。コード署名済みです。証明書が新しいため、初回起動時に Windows で「認識されないアプリ」と表示される場合があります。その場合は、詳細情報をクリックしてから、実行をクリックしてください。
    • macOS:Apple Silicon 向けの GigaMail-arm64.dmg と、Intel 向けの GigaMail-x64.dmg を用意しています。どちらも Apple Developer ID で署名され、Apple による公証を受けています。

    SHA-256 ダイジェストは、リリースページの各ファイルの横に記載されています。 自分でビルドする場合:Node 22 以降を用意し、console/prepare-python.ps1 (Windows)または console/prepare-python.sh(macOS)を実行してから、npm run dist または npm run dist:mac を実行してください。

  • pip install gigamail — エージェント向けのコア機能です。MCP サーバー、CLI、ウォッチャー、 コンソール用のローカル HTTP バックエンドが含まれます。グラフィカルアプリはありません。エージェントがインターフェースとなる場合に適した方法です。

以下はすべて pip 版について説明しています。

pip install "gigamail[all]"

gigamail login                # Microsoft device flow
gigamail accounts add-imap    # or IMAP: Aruba, Gmail, Libero, ...
gigamail check                # search, a draft held for your approval, a test mail to yourself

Microsoft ログインについて:同梱の Azure アプリは、まだ発行元の検証を受けていないため、同意画面に「未検証」の通知が表示されます(問題なく動作しますが、一部の企業テナントではブロックされる場合があります)。標準的な代替方法は、独自の Azure アプリを登録し、src/gigamail/core/ms_config.json に client_id を設定することです。IMAP では、これらの設定は不要です。

アカウントに本人確認情報とナレッジを設定してください(これにより、返信があなた本人のものになります)。

gigamail identity set                       # who am I, what I do, tone
gigamail identity add-file C:\docs\pricelist.xlsx
gigamail identity add-file C:\docs\catalog\   # whole folder

Claude Desktop / Claude Code に登録します(mcpServers)。

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

コマンドは従来の名前(ade-mail-agent、ade-mail-agent-server)でも使用できます。また、Python パッケージも旧名 ade_mail_agent で実行できます(python -m ade_mail_agent.server)。既存の設定も引き続き動作します。

Claude Code をお使いですか?このリポジトリは Claude Code プラグインでもあります。gigamail MCP サーバーを登録し、承認ゲートについて Claude に教えるスキルを追加します。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

Codex をお使いですか?このリポジトリは Codex プラグインでもあります。gigamail MCP サーバーを登録し、承認ゲートについて Codex に教えるスキルを追加します。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

GigaMail はスキルとしてOpenAI プラグインディレクトリにも登録されています。そこからインストールしてから、codex mcp add gigamail -- gigamail-server でサーバーを登録してください(サーバーは上記のとおり pip からインストールします)。

OpenClaw または Hermes をお使いですか?INTEGRATIONS.md に、検証済みの設定を記載しています。

人間に代わって AI エージェントがセットアップしていますか? インストールと MCP の登録は行えます。pip install "gigamail[all]" を実行し、クライアントの MCP 設定に gigamail-server を追加してください(INTEGRATIONS.md を参照してください。クライアントが環境変数をフィルタリングする場合は、GIGAMAIL_ROOT を宣言してください)。ここで停止してください。 メールボックスの接続(gigamail login、gigamail accounts add-imap)には認証情報が必要です。人間自身が自分のシェルで行わなければなりません。あなたが行うべきことではなく、GigaMail はあなた経由では実行できないように作られています。実行するコマンドを伝えて、あとは待ってください。

あとはエージェントに、*「価格表を使って、最後の見積もり依頼に返信して」*と頼むだけです。メールを読み、ファイルから数値を取得して返信の下書きを作成し、送信前にあなたに確認を求めます。

ツール

サーバー自体から生成された、型付きツールが30種類あります。

  • 読み取り(18) — アカウント、本人確認、ナレッジファイルとその内部検索、メッセージ、未読項目、 フォルダー、ハイブリッド検索、添付ファイルのテキスト、送信者の履歴、学習済み パターン、カレンダーイベント、空き時間、Drive ファイルと そのテキスト
  • 安全な書き込み(3、監査対象) — 既読にする、メッセージを移動する、フォルダーを作成する
  • 危険な操作(9、人による別経路での承認が必要) — メッセージの送信・返信・削除、 フォルダーの削除、カレンダーイベントの作成・削除、Zoom ミーティングの作成、Drive へのファイルのアップロード、Drive ファイルをごみ箱に移動する

カレンダーには、ユーザーが接続した Microsoft Graph または Google Calendar のいずれかが使用されます。どちらの場合もツールは同じです。Drive では drive.file スコープを使用するため、GigaMail が作成したファイルのみが対象になります。 Google の接続方法:GOOGLE_SETUP.md。

全体像と設計上の判断:MAPPA_MCP.md。

セキュリティモデル

メールの内容は信頼できないデータ(プロンプトインジェクション)として扱われます。 設計上、エージェントが自分の操作を承認することはできません。危険なツールが返すのは無害な request_id のみで、承認には(コンソールまたは gigamail approvals approve から)マシンの前にいる人の OS レベルでの確認が必要です (Windows Hello/Touch ID)。エージェントを含め、シェルを使用できるプロセスは確認画面を開くことはできますが、確認を通過することはできません。どちらも利用できない Linux では、対話型ターミナルで入力するローカル PIN を代わりに使用します(gigamail approvals pin)。こちらは安全性が低く、その旨を SECURITY.md に明記しています。Telegram による承認は任意で、3つの経路の中で最も安全性が低いものです。シークレットがモデルのコンテキストに入ることはないため、注入された指示が利用できるものは何もありません。同じ ID を繰り返し送っても、承認待ちが返されるだけです。エージェントが読み取れるのはユーザーが明示的に登録したファイルのみで、ファイルシステムのほかの部分は読み取れません。すべての書き込み操作は %APPDATA%/ADE/agent_audit.jsonl に記録されます(追記専用です。GigaMail は過去のエントリを書き換えません。ただし、改ざん防止ストレージではなく、そのように主張するものでもありません)。

メールツールをすべて有効にした実際のエージェントに、情報の持ち出し、大量削除、エージェントによる自己承認を命じる悪意あるメールを与え、レッドチームテストを実施しています。

この設計は修正後のものです。v0.1.0 では、一度限りの確認トークンをツールの結果として返していたため、そのトークンがモデルのコンテキストに入り、エージェントが両方の情報を持つ状態になっていました。発見してくださった r/mcp の u/ranbuman さんと u/anderson_the_one さんに感謝します。現在の切り替え操作は、エージェントがアクセスできない場所にあります。

インジェクション対策ハーネス:実際のエージェントに対する3つの悪意あるメールのシナリオ。破壊的な操作はゼロ

このテストスイートの構造面のテストは、プッシュのたびに CI で実行されます (tests/test_injection.py)。実際のエージェントを使うテストは任意で (scripts/injection_e2e.py)、ドライランガードを有効にして実行されるため、承認された操作は監査ログに記録されますが、実際には実行されません。

返信ルール(0.2):半自動・自動返信を安全に制御

GigaMail に、「この送信者(またはこのフォルダー)からのメールには、これらのドキュメントをもとに返信の下書きを作成する」と指定できます。ルールは CLI から作成します(gigamail rules add)。承認時と同じ Windows Hello / Touch ID の確認が必要です。また、ルールを適用するプロセスは gigamail watch です。MCP サーバーは受動的なままで、ルールを操作する MCP ツールはありません。注入された指示によって自動運転が有効になることはありません。

  • semi(デフォルト):下書きは通常の承認リクエストになります。通知が届き、Hello で承認すると送信されます。
  • 通知は、現在お使いの場所に届きます。Windows のトースト通知には ✅ / ❌ ボタンがあります(クリック可能にするには、gigamail desktop-setup を一度実行します。UAC プロンプトが表示されます。ボタンをクリックすると承認画面が開き、Hello が起動します)。また、Telegram にも届きます(gigamail telegram setup で自分のボットを設定します。--approve を指定して Hello で承認することを選択した場合は ✅ で承認、❌ で拒否、✏️ で変更を依頼できます。操作は自分のチャットからのみ受け付けます)。Telegram での承認は便宜的なもので、通常の方法ではありません。Telegram にログインしているデバイスならどれでもボタンを押せるため、Hello より安全性が低くなります(SECURITY.md を参照してください)。
  • auto:リクエストは承認済みの状態で作成され、decided_by automode:<rule_id> が設定されます。ルールの作成時に、厳密な適用範囲、必須の有効期限、1 日あたりの上限、送信者ごとのクールダウンを指定して承認したことになります。通知は引き続き届きます。

下書き作成を行うのは(claude -p 経由の)ご自身のエージェントで、生成するのは返信の本文だけです。宛先、件名、スレッドは受信メールから固定されます。宛先は常に送信者であり、Reply-To ではなく、下書きに記載されたアドレスでもありません。決定論的な安全策が最初に実行されます。DMARC に合格しない場合は自動返信しません。自動生成メール、メーリングリスト、返信不可の送信者、プロバイダーによる迷惑メール判定、実行可能ファイルの添付がある場合は返信しません。新しい送信者からの最初のメッセージは必ずユーザーに確認を求めます。一致するメールが短時間に集中すると、ルールは自動的に一時停止します。詳しくは SECURITY.md を参照してください。

拡張機能:各業種向けの機能はコアの外に

gigamail パッケージは、メールのアカウント、インデックス、検索、二段階送信、カレンダー、ナレッジファイル、監査を扱います。特定の業種でのみ必要な機能はパッケージの外にあり、有効にするまでオフになっています。

  • appointments(組み込み、デフォルトではオフ):最初の返信からフォローアップまで、メールとカレンダーが連携します。
    • 予定のために、送信済みメールと、そのスレッドへの返信をすべて読み取ります。候補として提示した時間はカレンダーに登録されず、クライアントが承諾した時間が登録されます。
    • 追跡中のスレッドでクライアントから返信があると、Telegram とデスクトップ通知で届きます。どちらにも 返信 ボタンがあります。「ok, fine」と入力すると、エージェントが返信を下書きし、ほかの返信と同じように承認待ちになります。クライアントが、カレンダー上で空いている特定の日時を指定した場合は、確認メールの下書きがすぐに作成されます。
    • ビデオ通話が確定すると、Zoom ミーティングを作成し、リンク付きのメールを承認用に作成します。
    • ミーティング後:開始から 1 時間後に、GigaMail がミーティングの状況(参加、欠席、延期)と数行のメモを Telegram またはデスクトップ通知で尋ねます(gigamail debrief を実行すると、未回答のものを確認できます)。回答は連絡先のメモに保存されます。
    • 1 週間後のフォローアップ:クライアントが参加した場合、7 日後に GigaMail がメモをもとに、同じスレッドでフォローアップを下書きし、承認を求めます。ミーティング後にすでに連絡を取っている場合は、通知されません。
  • real_estate(extras/real_estate):不動産ポータルからの問い合わせに返信する仲介業者向けに、下書きの間取りタイプを確認し、部屋番号に応じて添付ファイルを選びます。GigaMail はこの業種から生まれました。
gigamail extensions list
gigamail extensions enable appointments   # asks for Windows Hello / Touch ID
gigamail extensions install real_estate   # into the data folder: survives app updates
gigamail extensions enable real_estate

有効にした拡張機能の読み込みに失敗すると、自動下書きの作成を停止してユーザーに知らせます。黙ってスキップすることはありません。

ライセンス

AGPL-3.0-or-later. 自由に使用、調査、改変、共有できます。改変版を配布する場合、またはネットワークサービスとして運用する場合は、同じライセンスのもとでソースを公開する必要があります。クローズドソースでの利用には、著作権者から商用ライセンスを取得できます。


GigaMail — AI エージェントのためのメール

English · Italiano · 中文

ダウンロード ダウンロード gigamail.ai PyPI PyPI Downloads License AGPL-3.0 GitHub stars Python MCP server Claude Code Codex OpenClaw Hermes

Claude、Codex、OpenClaw、Hermes、その他あらゆる MCP クライアントに、メールへの安全で制御されたアクセスを提供する MCP サーバー — 複数アカウント対応(Microsoft Graph + IMAP)、カレンダー、ローカル検索インデックス、差出人の記憶、エージェント向けに設計された権限モデルを備えています。

内部に LLM はありません。インテリジェンスはエージェントが担います。MCP サーバーは stdio のみで通信し、ネットワークポートは開きません。(任意の人間向けコンソールを有効にすると、127.0.0.1 上にローカル HTTP API が追加されます。)

データはお使いのコンピューター上に:GigaMail はメールのインデックス、認証情報、記憶、設定をお使いのコンピューター上に保存します。当社がサービスを運用したり、データを受け取ったりすることはありません。エージェントが読むメールの内容は、当然ながら、そのエージェントおよびモデルの提供元のポリシーに従って処理されます。エージェントは慎重に選んでください。マスカーを使えば、エージェントが見る前に、機密データ(税コード、VAT 番号、IBAN、メールアドレス、電話番号)を非表示にできます。これらは AI を使わず、決定論的に検証されます。

GigaMail

## 理由
  • ハイブリッド検索:プロバイダー(Graph/IMAP)とローカルのSQLiteインデックスを組み合わせ、高速でオフラインでも使いやすいです
  • 独自のアーカイブ:すべてのアカウントのメールを添付ファイルも含めてローカルに保存し、サーバー上から消えた後も検索できます。PCに保存されたOutlookの履歴は、一度だけインポートできます(gigamail archive)
  • 送信者の記憶:返信に適した文面を作成するための、口調、話題、やり取りの履歴を記録します
  • 連絡先のメモ:各人との間に何があったのか、たとえば打ち合わせの様子や相手が探しているものなどを名前の横に記録し、その人宛ての下書きは毎回その内容を読み込みます
  • Observer:過去の下書きに対するユーザーの修正から学習したパターンです
  • 予定を把握した下書き:勤務時間内の、カレンダーで空いている時間だけを提案します
  • 複数アカウントの一括表示(コンソール):あるアカウントのカードを別のカードにドラッグすると、2つのメールボックスを1つの一覧で表示できます。各メールは元のアカウントに紐づいたままなので、返信は正しいアドレスから送信され、「分離」を選べば元に戻ります。エージェントには引き続き、各アカウントが別々に表示されます
  • ナレッジファイル:価格表、取引条件、製品資料などをアカウントに紐づけると、エージェントがそれらを読み込んでメールに返信します。エージェントがすべてを知っている必要はありません。必要な情報はアカウントと一緒に渡されます
  • エージェントの権限:読み取りは自由に行えます。送信や削除には、帯域外での承認が必要です。エージェントに渡されるのは不活性なIDのみで、人間がコンソールまたはCLIから承認した後に限り、人間が確認した正確な引数で処理が実行されます。書き込み操作はすべて追記専用のログに記録されます
  • エージェント用チャネルから認証情報を分離:ログインとアカウント管理はCLIからのみ行えます。メール内のプロンプトインジェクションによって、アカウントが追加されたり、秘密情報が読み取られたりすることはありません

クイックセットアップ

GigaMail は次の 2 つの方法でインストールできます。

  • デスクトップアプリ、Windows と macOS — gigamail.ai または最新リリースからダウンロードできます。Python を同梱した、人が操作するためのコンソールです。インストーラーは 1 つだけで、前提条件も管理者パスワードも不要です。自動で更新されます。

    • Windows 10/11:GigaMail-Setup.exe。署名済みです。証明書が新しいため、初回起動時に Windows で「認識されないアプリ」と表示される場合があります。その場合は詳細情報をクリックし、次に実行をクリックしてください。
    • macOS:Apple Silicon 用のGigaMail-arm64.dmg、Intel 用のGigaMail-x64.dmg。Apple Developer ID で署名され、Apple による公証を受けています。

    SHA-256 ダイジェストはリリースページのファイルの横にあります。ローカルでビルドするには、Node 22 以降、console/prepare-python.ps1(Windows)またはconsole/prepare-python.sh(macOS)を使用し、その後 npm run dist またはnpm run dist:macを実行してください。

  • pip install gigamail — エージェント機能のコア部分です。MCP サーバー、CLI、ウォッチャー、コンソール用のローカル HTTP バックエンドが含まれます。GUI アプリはありません。インターフェースとしてエージェントを使う場合はこちらが適しています。

以下はすべて pip 版についての説明です。

pip install "gigamail[all]"

gigamail login                # device flow Microsoft
gigamail accounts add-imap    # oppure IMAP: Aruba, Gmail, Libero, ...
gigamail check                # ricerca, bozza in attesa della tua approvazione, mail di prova a te stesso

Microsoft ログインに関する注意:同梱の Azure アプリはまだ発行元の検証を受けていないため、同意画面に「unverified」という警告が表示されます(機能はしますが、一部の企業テナントではブロックされる可能性があります)。標準的な代替方法として、独自の Azure アプリを登録し、src/gigamail/core/ms_config.jsonにclient_idを設定してください。 IMAP では、これらの設定は不要です。

アカウントに独自のアイデンティティとナレッジを設定してください(これが、応答をあなたらしいものにします)。

gigamail identity set                       # chi sono, cosa faccio, tono
gigamail identity add-file C:\docs\listino.xlsx
gigamail identity add-file C:\docs\catalogo\   # intera cartella

Claude Desktop / Claude Code での登録(mcpServers):

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

従来の名前(ade-mail-agent、ade-mail-agent-server)でもコマンドを引き続き使用できます。また、Python パッケージは旧名のade_mail_agentにも対応しているため(python -m ade_mail_agent.server)、既存のインストールも引き続き動作します。

Claude Codeをお使いですか?このリポジトリは Claude Code プラグインでもあります。MCP サーバーgigamailを登録し、承認ゲートを Claude に教えるスキルを追加します。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

Codexをお使いですか?このリポジトリは Codex プラグインでもあります。MCP サーバーgigamailを登録し、承認ゲートを Codex に教えるスキルを追加します。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

OpenClawまたはHermesをお使いですか?検証済みの設定はINTEGRATIONS.mdをご覧ください。

その後、エージェントに「最新の見積もり依頼に、価格表を使って返信して」と頼んでください。エージェントがメールを読み、ファイルから数値を取り出して返信を作成し、送信前に確認を求めます。

ツール

30 個の型付きツールをサーバー自体が生成します。

  • 読み取り(18) — アカウント、アイデンティティ、ナレッジファイルとその内容の検索、メッセージ、未読メッセージ、フォルダー、ハイブリッド検索、添付ファイルのテキスト、送信者履歴、学習したパターン、カレンダーイベント、空き時間枠、Drive ファイルとそのテキスト
  • 安全な書き込み(3、監査あり) — 既読にする、移動する、フォルダーを作成する
  • 危険な操作(9、帯域外での人間の承認が必要) — 送信、返信、メッセージの削除、フォルダーの削除、イベントの作成・削除、Zoom 会議の作成、ファイルの Drive へのアップロード、Drive ファイルのゴミ箱への移動

カレンダーには Microsoft Graph または Google Calendar が使われます。どちらを使うかは、ユーザーが接続したサービスによって決まります。ツールは同じです。Drive ではdrive.fileスコープを使用するため、GigaMail が作成したファイルのみが表示されます。 Google を接続するには、GOOGLE_SETUP.mdをご覧ください。

全体マップと設計上の判断については、MAPPA_MCP.mdをご覧ください。

セキュリティモデル

メールの内容は信頼できないデータ(プロンプトインジェクション)として扱われます。エージェントは設計上、自らのアクションを承認できません。危険なツールが返すのは不活性な request_id のみで、承認するには、コンソールまたは gigamail approvals approve から、オペレーティングシステムレベルの物理的なユーザー認証(Windows Hello / Touch ID)が必要です。エージェントを含むプロセスはこのプロンプトを表示できますが、認証を通過できません。このようなバックエンドがなければ、何も承認されません。秘密情報がモデルのコンテキストに入ることはないため、注入された指示には利用できる情報がありません。ID を再度送信しても、承認待ちと返るだけです。エージェントが読み取れるのは、ユーザーが明示的に登録したファイルだけで、ほかのファイルシステムにはアクセスできません。書き込みアクションはすべて %APPDATA%/ADE/agent_audit.jsonl に記録されます(追記専用:GigaMail は過去の記録を書き換えません。改ざん防止の監査ログではなく、そうであるとも主張していません)。

これを実際にテストしています。データの外部送信、大量削除、エージェント自身による承認を指示する悪意あるメールを、すべてのツールを有効にした実際のエージェントに与えています。

この設計は修正されたものです。v0.1.0 では、ツールの結果として一度限りの確認トークンを返していたため、モデルのコンテキスト内に置かれていました。つまり、エージェントが両方の情報を持っていました。指摘してくれた r/mcp の u/ranbuman と u/anderson_the_one に感謝します。現在、スイッチはエージェントが操作できない場所にあります。

インジェクション対策ハーネス:実際のエージェントに対する悪意あるメールの3つのシナリオ、破壊的なアクションはゼロ

スイートの構造面のテストは、プッシュのたびに CI で実行されます (tests/test_injection.py)。実際のエージェントを使ったテストはオプトイン方式で (scripts/injection_e2e.py)、ドライランモードを使うため、承認されたアクションは監査ログに記録されますが、実行されることはありません。

返信ルール(0.2):半自動と自動返信を、制限付きで

GigaMail に「これらの送信者(またはこのフォルダー)からのメールには、これらのドキュメントをもとに作成した返信を送る」と指示できます。ルールは CLI の gigamail rules add から作成します。承認と同じ Windows Hello / Touch ID のプロンプトが表示され、ルールを適用するプロセスは gigamail watch です。MCP サーバーは引き続き受動的で、MCP ツールがルールに触れることはありません。注入された指示によって自動操縦が開始されることはありません。

  • semi(デフォルト):下書きは通常の承認リクエストになります。通知が届き、Hello で承認すると送信されます。
  • 通知はどこにいても届きます。Windows トースト通知には ✅ / ❌ ボタンがあります(クリック可能にするには、一度 gigamail desktop-setup を実行して UAC プロンプトを許可します。ボタンを押すと承認画面が開き、Hello が起動します)。また、Telegram も利用できます (gigamail telegram setup を実行し、自分のボットを設定します。--approve を選択している場合、Hello を経由して ✅ で承認、❌ で拒否、✏️ で変更を依頼できます。操作を受け付けるのは自分のチャットのみです)。
  • auto:リクエストは最初から承認済みとなり、decided_by automode:<rule_id> が設定されます。この承認は、特定のスコープ、有効期限の必須設定、1日の上限、送信者ごとのクールダウンを指定してルールを作成した際に、あなた自身が行ったものです。通知も引き続き届きます。

返信を作成する役割(claude -p 経由のエージェント)が生成するのは、返信の本文だけです。それ以外は生成しません。宛先、件名、スレッドは、GigaMail が受信メッセージから設定します。宛先は常に送信者であり、Reply-To や下書きに記載されたアドレスは使いません。まず、決定論的な安全策を適用します。DMARC の合格がない場合は自動返信を一切行いません。自動送信メール、メーリングリスト、no-reply の送信者、プロバイダーのスパム判定、実行可能ファイルの添付がある場合も返信しません。新しい送信者からの最初のメッセージには必ずあなたの確認が必要です。一致するメールが急増した場合は、ルールが自動的に一時停止されます。詳細は SECURITY.md を参照してください。

拡張機能:業務固有の機能はコアの外に

gigamail パッケージはメールを扱います。アカウント、インデックス、検索、2 段階の送信、カレンダー、ドキュメント、監査機能を備えています。特定の業務だけで必要な機能は外部に置かれ、有効にするまでは無効です。

  • appointments(同梱、デフォルトでは無効):最初の返信からフォローアップまで、メールとカレンダーを連携します。
    • 送信したメールと、それらのスレッドへの返信をすべて読み、予定を探します。提案された日時はカレンダーには登録されず、顧客が承諾した日時が登録されます。
    • 追跡中のスレッドで顧客から返信があると、Telegram と PC の通知の両方に届き、どちらにも 返信 ボタンが表示されます。「はい、大丈夫です」と入力すると、エージェントが返信を作成します。そのほかの返信と同様に、承認を待ちます。顧客がカレンダーの空いている時間を具体的に指定した場合は、確認メールが自動で作成されます。
    • 確定したビデオ通話には Zoom ミーティングが設定され、リンクを記載したメールが作成されます。承認が必要です。
    • 打ち合わせ後:開始から 1 時間後に、GigaMail がどうだったかを尋ねます。相手が来たか、来なかったか、延期したかを選び、さらに 2 行ほど記入します。Telegram または PC の通知から回答できます(gigamail debrief で未回答のものを一覧表示します)。回答は連絡先のメモに保存されます。
    • 1 週間後のフォローアップ:顧客が来た場合、7 日後に GigaMail があなたのメモをもとに、同じスレッドでフォローアップメールを作成します。承認が必要です。その間にすでにやり取りがあった場合は、何もしません。
  • real_estate(extras/real_estate):ポータルに返信する不動産会社向けに、下書きの物件種別を確認し、ユニットのコードに応じて添付ファイルを選択します。GigaMail はここから始まりました。
gigamail extensions list
gigamail extensions enable appointments   # chiede Windows Hello / Touch ID
gigamail extensions install real_estate   # nella cartella dati: resiste agli aggiornamenti
gigamail extensions enable real_estate

有効にした拡張機能の読み込みに失敗すると、自動下書きの作成が停止し、人に通知されます。黙ってスキップされることはありません。

ライセンス

AGPL-3.0-or-later。 自由に使用、調査、変更、共有できます。変更したバージョンを配布する場合、またはネットワーク上のサービスとして提供する場合は、同じライセンスでソースコードを公開する必要があります。クローズドソースでの利用向けに、著作権者から商用ライセンスを取得できます。


GigaMail — 给你的 AI 代理的邮箱

English · Italiano · 中文

下载 下载 gigamail.ai PyPI PyPI Downloads License AGPL-3.0 GitHub stars Python MCP server Claude Code Codex OpenClaw Hermes

一个 MCP 服务器,让你的代理 —— Claude、Codex、OpenClaw、Hermes 或任何 兼容 MCP 的客户端 —— 安全、受控地访问你的真实邮箱 —— 多账户(Microsoft Graph + IMAP)、日历、本地搜索索引、发件人 记忆,以及面向代理的权限模型。

不内置任何 LLM:智能来自你自己的代理。MCP 服务器只使用 stdio 传输,不开 网络端口。(可选的人工控制台会在 127.0.0.1 上提供一个本地 HTTP API。)

关于你的数据:GigaMail 把邮件索引、凭据、记忆和配置全部保存在你自己 的机器上 —— 我们不运行任何服务,也收不到任何数据。代理读取的邮件内容当 然会经过该代理及其模型提供商,适用他们各自的数据政策。请据此选择你的代理。

GigaMail

为什么

  • 混合搜索:提供商搜索(Graph/IMAP)+ 本地 SQLite 索引,快速且支持离线
  • 自有归档:每个账户的每封邮件(含附件)都保存在本地,即使服务器上已删除 也仍可搜索。电脑上 Outlook 的历史邮件只需导入一次(gigamail archive)
  • 发件人记忆:按发件人记录语气、话题与往来历史,让回复更贴切
  • 联系人备注:与每个人之间发生的事 —— 会面情况如何、对方在找什么 —— 都记在其名字旁边,之后写给此人的每一份草稿都会读取
  • 观察者:从用户对过往草稿的修改中学习偏好
  • 了解日程的草稿:草稿只会提议你日历中空闲、且在办公时间内的时段
  • 合并查看账户(控制台):把一个账户卡片拖到另一个上,即可在同一个列表中 阅读两个邮箱;每封邮件仍属于自己的账户,回复会从正确的地址发出,点击"拆分" 即可恢复。代理看到的仍是各自独立的账户
  • 知识文件:把价目表、条款、产品资料挂到账户上,代理读取它们来回信 —— 你的代理不需要什么都懂:账户自带知识
  • 面向代理的权限:读取自由;发送/删除需要带外给出的人工批准 —— 代理只拿到一个惰性的请求 id,人从控制台或 CLI 批准后才会执行,且执行的 是人当时看到的那份参数。每次写操作都会记入只追加的审计日志
  • 凭据永远不经过代理通道:登录与账户管理只存在于 CLI —— 邮件里的提示 注入无法添加账户或读取任何机密

快速开始

GigaMail 通过两个渠道发布:

  • 桌面应用,Windows 与 macOS — 可从 gigamail.ai 或最新版本下载。面向人的控制台,内置 Python:一个安装包、无需前置依赖、 无需管理员密码,并会自动更新。

    • Windows 10/11:GigaMail-Setup.exe,已代码签名。证书较新, 首次启动时 Windows 可能仍提示"无法识别的应用":点击 更多信息,再点 仍要运行。
    • macOS:Apple Silicon 用 GigaMail-arm64.dmg, Intel 用 GigaMail-x64.dmg,均以 Apple Developer ID 签名并经 Apple 公证。

    SHA-256 摘要见发布页文件旁。自行构建:Node 22+,console/prepare-python.ps1 (Windows)或 console/prepare-python.sh(macOS),然后 npm run dist 或 npm run dist:mac。

  • pip install gigamail — 代理核心:MCP 服务器、CLI、watcher 和 控制台的本地 HTTP 后端。不含图形界面 — 如果你的代理就是界面,选这个渠道。

下文内容均针对 pip 渠道。

pip install "gigamail[all]"

gigamail login                # Microsoft 设备码登录
gigamail accounts add-imap    # 或任意 IMAP 提供商
gigamail check                # 搜索、等待你批准的草稿、给自己发一封测试邮件

为账户设置身份与知识(这是让回复"像你"的关键):

gigamail identity set                       # 我是谁、做什么、语气
gigamail identity add-file C:\docs\pricelist.xlsx

在 Claude Desktop / Claude Code 中注册(mcpServers):

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

命令也保留旧名称(ade-mail-agent、ade-mail-agent-server),Python 包也 响应旧名 ade_mail_agent(python -m ade_mail_agent.server),现有配置 继续可用。

使用 Claude Code?本仓库也是一个 Claude Code 插件:它注册 gigamail MCP 服务器,并附带一个教 Claude 如何面对审批关卡的 skill。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

使用 Codex?本仓库本身就是一个 Codex 插件:它注册 gigamail MCP 服务器,并附带一个教 Codex 如何面对审批关卡的 skill。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

使用 OpenClaw 或 Hermes?经过验证的配置见 INTEGRATIONS.md。

你是替人类做安装的 AI 代理吗? 你可以完成安装与 MCP 注册: pip install "gigamail[all]",然后把 gigamail-server 加入客户端的 MCP 配置。到此为止。 连接邮箱(gigamail login、gigamail accounts add-imap)需要输入凭据,必须由人类在自己的终端里完成 —— 这不是你该做的 事,GigaMail 的设计也让它无法经由你完成。告诉他们要运行什么,然后等待。

之后直接对你的代理说:"用价目表回复最近那封询价邮件" —— 它会读邮件、从你 的文件里取数字、写好草稿,并在发送前征得你的同意。

工具

29 个类型化工具,由服务器本身生成:

  • 读取(17) —— 账户、身份、知识文件、邮件、未读、文件夹、混合搜索、 附件文本、发件人历史、学习到的偏好、日历事件、空闲时段、Drive 文件及其文本
  • 安全写入(3,有审计) —— 标记已读、移动邮件、新建文件夹
  • 危险操作(9,需带外人工批准) —— 发送、回复、删除邮件、删除文件夹、 创建/删除日历事件、创建 Zoom 会议、上传文件到 Drive、将 Drive 文件移入回收站

日历由 Microsoft Graph 或 Google Calendar 提供,取决于用户连接了哪一个; 工具完全相同。Drive 使用 drive.file 权限,只能看到 GigaMail 自己创建的 文件。连接 Google 的方法见 GOOGLE_SETUP.md。

安全模型

邮件内容被视为不可信数据(提示注入)。代理从构造上就无法批准自己的 操作:危险工具只返回一个惰性的 request_id,而批准它 —— 无论从控制台还是 gigamail approvals approve —— 都需要对机器前的人进行操作系统级验证 (Windows Hello / Touch ID)。任何进程(包括持有 shell 的代理)都能 弹出这个验证框,却无法通过它;没有此类验证后端时,一律拒绝(fail-closed)。 没有任何机密进入模型上下文,被注入的指令无物可用。重复提交 id 只会得到 等待批准。代理只能读取用户明确注册的文件,永远碰不到文件系统的其余部分。 每次写操作都记入只追加的审计日志(GigaMail 从不改写历史条目 —— 它不是、 也不自称是防篡改存储)。

我们对此做红队测试:让恶意邮件命令真实代理外泄数据、批量删除、自我批准 —— 在所有邮件工具全开的情况下,零破坏性操作。

回复规则(0.2):带栅栏的半自动与全自动回复

你可以告诉 GigaMail:来自这些发件人(或这个文件夹)的邮件,用这些文档起草 回复。规则只能从 CLI(gigamail rules add)或控制台创建,且要经过与批准 相同的 Windows Hello / Touch ID 验证;gigamail watch 是执行规则的进程。 MCP 服务器保持被动,不存在任何能触碰规则的 MCP 工具:被注入的指令无法 打开自动驾驶。

  • semi(默认):草稿成为一个普通的批准请求 —— 你收到通知,用 Hello 批准后才会发出。
  • 通知会找到你:Windows 桌面通知带 ✅/❌ 按钮(运行一次 gigamail desktop-setup 使其可点击;按钮只是打开批准流程,仍需 Hello), 以及 Telegram(gigamail telegram setup,用你自己的机器人:✅ 批准需 在 Hello 背后显式开启 --approve;❌ 拒绝、✏️ 要求修改 —— 且只接受来自 你那个会话的指令)。
  • auto:请求生来即已批准,decided_by automode:<rule_id> —— 这份批准是 你创建规则时在 Hello 背后给出的,范围精确、必有过期时间、每日上限和按 发件人的冷却时间。通知照常发出。

起草者(你自己的代理,经 claude -p)只产出回复正文:收件人、主题与 会话线程由 GigaMail 从来信中确定 —— 永远回给通过验证的发件人,绝不理会 Reply-To,也绝不使用草稿里写出的地址。确定性栅栏先行:DMARC 未通过 → 永不 auto;自动生成的邮件、邮件列表、no-reply 发件人、提供商的垃圾邮件判定、 可执行附件 → 一律不回复;新发件人的第一封邮件永远经过你;短时间内大量命中 会让规则自动暂停。详见 SECURITY.md。

扩展:行业逻辑留在核心之外

gigamail 包只做邮件:账户、索引、搜索、两阶段发送、日历、知识文件、审计。 只对某一个行业有意义的功能放在核心之外,默认关闭,需要时才开启:

  • appointments(内置,默认关闭):把邮件和日历连接起来,从第一次回复 一直到跟进。
    • 在每封已发送的邮件及其线程中的回复里查找预约。提议的时间不进日历; 客户接受的时间才写入日历。
    • 客户在跟进线程中的回复会发到 Telegram,并同时以电脑桌面通知的形式出现, 两者都带 回复 按钮:写一句"好的,可以",你的代理就会起草回复,并像 其他草稿一样等待你的批准。如果客户提出一个日历中空闲的具体时间,确认邮件 会自动起草。
    • 已确认的视频通话会自动创建 Zoom 会议,并生成附带链接的邮件,等待批准。
    • 会面之后:会面开始一小时后,GigaMail 会在 Telegram 或电脑桌面通知中 询问情况如何 —— 已到场、未到场、改期,外加几句备注(gigamail debrief 列出尚未回答的问题)。回答会写入该联系人的备注。
    • 一周后的跟进:如果客户到场了,七天后 GigaMail 会根据你的备注,在同一 线程中起草跟进邮件,等待你的批准。如果会面之后你们已经通过邮件联系过, 它就不会打扰。
  • real_estate(extras/real_estate):为回复房产门户 询盘的中介检查草稿中的户型,并按房源编号选择附件。GigaMail 就是在这里成长起来的。
gigamail extensions list
gigamail extensions enable appointments   # 需要 Windows Hello / Touch ID
gigamail extensions install real_estate   # 装在数据目录中:应用更新后仍然保留
gigamail extensions enable real_estate

已开启但无法加载的扩展会停止自动草稿并通知人类,绝不会被悄悄跳过。

许可证

AGPL-3.0-or-later. 自由使用、研究、修改与分享。若你分发修改版 —— 或将 其作为网络服务运行 —— 必须以相同许可证提供其源代码。闭源商用许可可向版权 持有人洽询。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。