ログイン方法、メールのホストと通信の暗号化、そして実際に半日を費やす原因になりがちな失敗をまとめました。プロバイダーを選ぶと、手順ごとの設定方法を確認できます。
| プロバイダー | ログイン | IMAP (受信) | SMTP (送信) | よくある不具合 |
|---|---|---|---|---|
| Gmail (IMAP) | アプリ専用パスワード | imap.gmail.com993 · TLS | smtp.gmail.com465 · TLS | Googleアカウントでは、2 段階認証プロセスを有効にするまでアプリ パスワードの項目が表示されません。また、Workspaceの管理者がドメインでアプリ パスワードを無効にすると、全員の画面から再び消えます。Googleはパスワードを4つのブロックで表示しますが、スペースは表示上のもので、ログイン情報を送る前に取り除かれます。 |
| Gmail (API) | Google OAuth | プロバイダーAPI、IMAPなし | プロバイダーAPI、IMAPなし | トランスポート層では問題は起きません。この行はIMAPではなくgmail.googleapis.comと通信します。問題になるのは同意です。このアプリはGoogleの確認を受けていないため、ログイン画面には警告が表示され、それを進める必要があります。また、Googleは未確認のアプリに対し、全期間を通じて最大100アカウントまでしか同意を認めておらず、このカウンターはリセットできません。この上限があるため、上のアプリ パスワードが標準の接続方法になっています。接続後の制約は意味上のものです。フォルダーの代わりにラベル、ネイティブのコピーなし、完全なexpungeなしです。 |
| Fastmail | アプリ専用パスワード | imap.fastmail.com993 · TLS | smtp.fastmail.com465 · TLS | 通常のアカウントパスワードはそのまま拒否されます。Fastmailは16文字のアプリ パスワードを発行します。代わりにログイン用のパスワードを入力してしまうことが、接続失敗の最も多い原因です。 |
| iCloud Mail | アプリ専用パスワード | imap.mail.me.com993 · TLS | smtp.mail.me.com587 · STARTTLS | Appleがアプリ用パスワードを生成するには、先に2ファクタ認証を有効にする必要があります。Appleはこのパスワードをハイフンで区切った4つのブロックで表示しますが、ハイフンは表示上のもので、ログイン情報を送る前に取り除かれます。 |
| Yahoo Mail | アプリ専用パスワード | imap.mail.yahoo.com993 · TLS | smtp.mail.yahoo.com465 · TLS | Yahooが受け付ける同時接続は最大5つです。拒否時のメッセージ「Incorrect username or password」は、あえて両方を挙げており、どちらが間違っていたかは教えてくれません。 |
| Zoho Mail | アプリ専用パスワード | imap.zoho.com993 · TLS | smtp.zoho.com465 · TLS | IMAPアクセスは初期状態でオフになっており、まず有効にする必要があります。またZohoは地域別に6つのデータセンターを運用しており、有料の独自ドメインのメールボックスはimap/smtpではなくimappro/smtpproにあります。そのため、正しいホストは地域とアカウントの種類の両方で決まります。 |
| Yandex Mail | アプリ専用パスワード | imap.yandex.com993 · TLS | smtp.yandex.com465 · TLS | YandexはRFC 4959のSASL-IRを実装していないため、インラインのログイン形式は認証情報のエラーではなくコマンドの構文エラーとして返ってきます。「IMAP」と「App passwords and OAuth tokens」の両方を有効にする必要があり、Yandex 360の独自ドメインのアカウントでは、アドレスとは異なるログイン名でログインする場合があります。 |
| Microsoft 365 / Outlook | Microsoft OAuth | プロバイダーAPI、IMAPなし | プロバイダーAPI、IMAPなし | 個人用のMicrosoftアカウント (outlook.com、hotmail.com、live.com、msn.com) は直接接続できます。職場または学校のアカウントは事情が異なります。Microsoftの既定の同意ポリシーでは、従業員が自分でメールの権限を承認できません。そのためダッシュボードでは、IT管理者に送れる共有用の承認リンクを用意しています。管理者が組織全体に対して一度アプリを承認すれば (MCPEmailsのアカウントは不要)、その後は全員が通常どおり接続できます。Exchange Onlineのメールボックスを持たないMicrosoftアカウントは拒否され、代わりにIMAPでアドレスを接続するよう案内が表示されます。新しく作成したばかりのoutlook.comアカウントから短時間にまとめて送信すると、Microsoftが独自の不正利用対策の一環として一時的に送信をブロックすることがあります。 |
| 汎用IMAP | メールボックスのパスワード | ご利用のホストの設定993 / 143 · TLS / STARTTLS | ご利用のホストの設定465 / 587 · TLS / STARTTLS | ポートとセキュリティモードの不一致です。ポートを993のままSTARTTLSを選ぶと、TLS専用のリスナーに平文のソケットを開くことになり、接続はタイムアウトするだけです。現在は、失敗したトランスポートはもう一方の標準的な組み合わせで自動的に再試行されます。 |
Gmail (IMAP) とGmail (API): Googleのメールボックスは、アプリ パスワードを使ってimap.gmail.com経由で接続します。Googleでログインして接続したメールボックスは、IMAPではなくGmail APIを使い、そのまま動作します。接続経路によってその後エージェントができることが変わるため、下の機能表にはそれぞれの列があります。アプリ パスワードはGmail (IMAP)、GoogleでのログインはGmail (API)です。
トランスポートの自動検出: セッションを確立できなかった接続は、もう一方の標準トランスポート (IMAPは993/TLSと143/STARTTLS、SMTPは465/TLS、587/STARTTLS、25) で再試行されます。拒否されたパスワードは再試行しません。再送するとプロバイダー側のロックアウトのカウントに加算されるためです。
ログインの方式: ほとんどのサーバーはAUTH PLAINを1回のやり取りで受け付けます。GSSAPI、NTLM、LOGINだけを提示するサーバー (よくあるのはMicrosoft Exchange) は504 5.7.4で応答し、クライアントは自動でAUTH LOGINに切り替えます。
その他のホスト: IONOS、Hostinger、OVH、OVH Hosted Exchange、DreamHost、Titan Email、Namecheap Private Email、Migadu、InMotion Hosting、OpenSRS、GMX、mail.comは、入力したアドレスやメールホストから認識され、ホスト、ポート、通信の暗号化が自動で入力されます。
生データ: すべてのプロバイダーについて調べたホスト、ポート、ログイン方式、サイズ上限は、オープンデータセットとして公開しており、JSONとCSVを無料でダウンロードできます。
MCPクライアントがプロバイダーごとに実行できる操作:読み取り、検索、送信、返信、転送、移動、フラグ、フォルダー、下書き、予約送信、添付ファイル。
Gmail (IMAP)、Fastmail、iCloud、Yahoo、Zoho、Yandex、汎用IMAPは、いずれも同じIMAP/SMTPトランスポートで接続し (Gmail、Fastmail、iCloudはアプリ専用パスワードを使用)、IMAPの検索構文を含めて同じ機能を備えています。分かりやすくするために列を分けて表示しています。Gmail (API)はGmailの列で唯一IMAPではありません。同じメールボックスに、Googleでのログインを経てGmail APIでアクセスします。OutlookもIMAPではありません。Microsoftでログインして接続し、Microsoft Graphで動作します。
exactは正規化された操作が同じ意味を保つこと、differentはプロバイダーが文書化された別の意味で処理すること、unavailableはMCPEmailsがリクエストを黙って弱めたりしないことを意味します。プロファイルはコネクタの動作を記述するもので、メールを検査したり保存したりはしません。| 機能 | Gmail (IMAP) | Gmail (API) | Outlook | Fastmail | iCloud | Yahoo | Zoho | Yandex | 汎用IMAP |
|---|---|---|---|---|---|---|---|---|---|
| 基本 | |||||||||
| 元のメッセージをダウンロード (.eml) | |||||||||
| メールの読み取り | |||||||||
| 検索 | |||||||||
| メールの送信 | |||||||||
| 返信 | |||||||||
| 転送 | |||||||||
| フラグと状態 | |||||||||
| 既読/未読 + スターのフラグ | |||||||||
| フォルダーとラベル | |||||||||
| フォルダー | |||||||||
| ラベル / タグ | |||||||||
| 移動 | |||||||||
| コピー | |||||||||
| 削除 | |||||||||
| 削除 / ゴミ箱 | |||||||||
| 完全削除 (expunge) | |||||||||
| 下書き | |||||||||
| 下書き (作成 / 編集 / 送信) | |||||||||
| 連絡先 | |||||||||
| 連絡先の検索 (ライブスキャン) | |||||||||
| 予約送信 | |||||||||
| 予約送信 | |||||||||
| 署名 | |||||||||
| 署名 (送信時に自動で追加) | |||||||||
| 検索 | |||||||||
| 検索構文 | IMAP | Gmail | KQL | IMAP | IMAP | IMAP | IMAP | IMAP | IMAP |
Gmailのフォルダーとラベル: Gmailは階層型のフォルダーではなく、フラットなラベルの仕組みを使います。「移動」はラベルの追加/削除として実装されています。Gmail REST APIではネイティブのコピーは使えません。これらのGmailの行はGmail APIコネクタについてのものです。アプリ パスワードを使ってIMAPで接続したGmailメールボックスは、コピーを含めてIMAPの列に従います。
Outlook (Microsoft Graph): 検索にはKQLを使います。テキスト条件 (from、to、cc、subject、body、text、query) は、unread、has_attachment、flagged、日付のフィルターと組み合わせられません。両方を送った場合、それらのフィルターは適用されず、どれが外されたかが結果に示されます。一致するすべてに作用するツールでは、代わりにその組み合わせが拒否されます。Outlookにはラベルではなくフォルダーがあるため、ラベル用のツールはGmail専用です。自動化のlabelアクションはOutlookの分類項目を適用します。添付ファイル:送信時はメッセージあたり最大10 MB、添付ファイルのダウンロードや元のメッセージの転送では最大25 MBです。
完全削除: Gmail APIでは、削除したメッセージはゴミ箱に移動し、完全なexpungeは提供されていません。Microsoft Graphでは可能で、Outlookの受信トレイでpermanent: trueを指定するとpermanentDeleteを使い、削除済みアイテムを経由しません。すべてのIMAP受信トレイ (アプリ パスワードのGmail、Fastmail、iCloud、Yahoo、Zoho、Yandex、汎用) は、ゴミ箱への移動と完全なexpungeの両方に対応しています。
連絡先の検索 (ライブスキャン): すべてのプロバイダーがcontact_searchに対応しています。一致するメールの最近の範囲をヘッダーのみでその場でスキャンし、一致するやり取りの相手を見つけます。連絡先テーブルはありません。呼び出しの間に何も保存されず、件数はスキャンした範囲で一致したメッセージだけを反映します。
予約送信: サーバー側のscheduled_sendsキューにより、すべてのプロバイダーで利用できます。scheduleツールのcreate、list、cancelアクションを使います。配信には各プロバイダーの既存の送信経路を使うため、プロバイダー独自の予約送信APIは必要ありません。
署名: 受信トレイごとの署名が、すべての送信、返信、転送、下書き、予約メッセージにサーバー側で追加されます。これはすべてのプロバイダーで動作します。署名はリッチなHTMLの書式 (太字、斜体、見出し、リスト、色、配置、リンク) とホスト済みのロゴ/画像に対応しています。ダッシュボードのリッチエディターか、signature MCPツール (signature_htmlを受け付けます) で設定します。画像はホスト済みのhttps URLで参照され、どのプロバイダーでも表示されます。ただし一部のクライアント (例:Gmail) では、受信者が「画像を表示」をクリックするまで非表示になることがあります。これはホスト済み画像を使う署名では一般的な動作です。返信と転送に署名を表示するかどうかはsignature_reply_modeで制御します。呼び出しごとに省くには、email_composeまたはdraftでinclude_signature: falseを渡します。ダッシュボードの同じ受信トレイパネルには送信者名のフィールドもあり、受信トレイが送るすべてのメールでアドレスの横に表示される名前を設定できます。
転送: どのプロバイダーでも、転送は元のメッセージをバイト単位でそのまま中継します。HTML、インライン画像、添付ファイル、MIME構造が、送信されたときのまま、あなたのメモと通常の転送ヘッダーの下に届きます。元のメッセージは最大25 MBまでです。as_attachmentを使うと元のメッセージ全体を.emlパートとして送り、include_attachments: falseでは添付ファイルを含めません。