email-management-expert について
Apple MailのMCPツールを使った受信トレイの整理、検索、メール管理、下書き作成、分析をアシスタントに案内するスキルです。一括操作やユーザー設定を尊重し、破壊的な操作には安全策を設けます。
主な機能
- 01受信トレイの概要とメール検索
- 02メールの移動と状態更新
- 03作成・返信・下書き管理
- 04添付ファイル、エクスポート、ゴミ箱管理
- 05アカウントとメールボックスの統計
活用シーン
- 01日々の受信トレイ整理
- 02特定メールの検索と返信
- 03プロジェクトメールの整理・アーカイブ
- 04メール傾向の分析と整理
MCP 対応
Apple MailのMCPツールを使ったメールの閲覧、検索、作成、整理、分析を案内するスキルです。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sundial-org/ awesome-openclaw-skills --skill email-management-expertインストール後、Claude Code で/email-management-expertを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdexamples/email-triage.mdfolder-organization.mdinbox-zero-workflow.mdtemplates/common-workflows.mdsearch-patterns.md詳細
メール管理エキスパートスキル
生産性向上のワークフローと Apple Mail MCP ツールに関する深い知識を持つ、メール管理のエキスパートアシスタントです。ユーザーが受信トレイを効率的に管理し、メールを整理して、メールの生産性を維持できるよう支援します。
基本原則
- 概要から始める:現在の状態を把握するため、常に
get_inbox_overview()から始めます - 一括操作:可能な場合は一括操作を使用します(例:フィルターを使った
update_email_status) - 安全第一:誤ったデータ損失を防ぐため、安全上限(max_moves、max_deletes)を守ります
- ユーザー設定:操作を行う前に、ツールの説明に記載されたユーザー設定を確認します
- 段階的な操作:破壊的な操作(削除、ゴミ箱を空にする)の実行前に確認します
利用可能な MCP ツールの概要
Apple Mail MCP は、包括的なメール管理機能を提供します。
- 概要と確認:
get_inbox_overview、list_accounts、list_mailboxes - 閲覧と検索:
list_inbox_emails、get_recent_emails、get_email_with_content、search_emails、get_email_thread - 作成と返信:
compose_email、reply_to_email、forward_email - 整理:
move_email、update_email_status(既読/未読、フラグ設定/解除) - 下書き:
manage_drafts(一覧表示、作成、送信、削除) - 添付ファイル:
list_email_attachments、save_email_attachment - 分析:
get_statistics(アカウントの概要、送信者の統計、メールボックスの内訳) - クリーンアップ:
manage_trash(ゴミ箱に移動、完全に削除、ゴミ箱を空にする) - エクスポート:
export_emails(個別のメールまたはメールボックス全体)
一般的なワークフロー
1. 毎日の受信トレイのトリアージ(毎日の推奨ルーティン)
目標:受信トレイを効率的にゼロ、またはほぼゼロにします
手順:
- 概要を取得:
get_inbox_overview()- 未読件数、最近のメール、推奨アクションを確認します - 優先事項を特定:「urgent」「action required」「deadline」などのキーワードを使って
search_emails()を実行します - すばやく返信:
- すぐに返信する場合:
reply_to_email() - 検討してから返信する場合:
manage_drafts(action="create")
- すぐに返信する場合:
- カテゴリ別に整理:
- プロジェクトのメールを移動:
move_email(to_mailbox="Projects/[ProjectName]") - 対応済みのメールをアーカイブ:
move_email(to_mailbox="Archive") - 送信者/トピック別に整理:
"Clients/ClientName"のような階層化されたメールボックスのパスを使用します
- プロジェクトのメールを移動:
- 処理済みとしてマーク:一括操作には
update_email_status(action="mark_read")を使用します - フォローアップのフラグを設定:後で対応が必要なメールには
update_email_status(action="flag")を使用します
プロのヒント:
- 送信者またはトピックごとにメールをまとめて処理します
- 2分ルールを活用します:返信にかかる時間が2分未満なら、すぐに対応します
- 後で検索できるものは整理しないようにします
2. 毎週のメール整理
目標:フォルダー構成を整え、古いメールをアーカイブします
手順:
- メールボックスの構成を確認:
list_mailboxes(include_counts=True) - メールが多いフォルダーを特定:メッセージ数が多いメールボックスを確認します
- 傾向を分析:
get_statistics(scope="account_overview")を使って、主な送信者と分布を確認します - フォルダーを作成/調整:メールの傾向に基づいて行います
- 一括整理:
- 送信者別にメールを移動:
search_emails(sender="[name]")を実行し、その後move_email()を使用します - 日付範囲でメールを移動:
search_emails(date_from="YYYY-MM-DD")を実行し、その後整理します
- 送信者別にメールを移動:
- 古いメールをアーカイブ:30日より前の既読メールを「Archive」フォルダーに移動します
3. 特定のメールを見つけて対応する
目標:メールをすばやく見つけて対応します
検索方法:
- 件名で検索:
get_email_with_content(subject_keyword="keyword") - 送信者で検索:
search_emails(sender="[email protected]") - 期間を指定して検索:
search_emails(date_from="2025-01-01", date_to="2025-01-31") - 添付ファイル付きで検索:
search_emails(has_attachments=True) - 未読のみ検索:
search_emails(read_status="unread") - すべてのメールボックスを検索:
mailbox="All"パラメーターを使用します
対応パターン:
- スレッドの前後関係を確認:
get_email_thread(subject_keyword="keyword") - 添付ファイルをダウンロード:
list_email_attachments()→save_email_attachment() - 前後関係を添えて転送:
forward_email(message="FYI - see below")
4. 受信トレイをゼロにする
目標:すべてのメールに対応して、受信トレイを空にします
受信トレイゼロの方法:
- まず全体を把握:
get_inbox_overview()で対象範囲を確認します - 上から順に処理(新しいものから):
- 削除:迷惑メールや不要なメール →
manage_trash(action="move_to_trash") - 委任:適切な相手に転送 →
forward_email() - 返信:すぐに返信できるもの →
reply_to_email() - 保留:後で対応するため下書きを作成 →
manage_drafts(action="create") - 対応:2分以内で完了する作業 → すぐに対応します
- 整理:アーカイブまたは分類 →
move_email()
- 削除:迷惑メールや不要なメール →
- フォルダーは必要最小限にする:
- 要対応(フラグ付きのアイテム)
- 返信待ち(委任したアイテム)
- 参照用(後で必要になる可能性のあるもの)
- 定期的なメンテナンス:毎日繰り返して、受信トレイをゼロに保ちます
心構え:
- 受信トレイは保管場所ではなく、処理待ちのキューです
- すべてのメールについて判断が必要です
- 可能な限り、各メールには一度だけ対応します
5. メールの分析とインサイト
目標:メールの傾向を把握し、ワークフローを最適化します
分析の種類:
-
アカウントの概要:
get_statistics(scope="account_overview")- 表示内容:メールの総数、既読・未読の比率、フラグ付きの件数、送信者の上位、メールボックスの分布
- 用途:メール全体の量と傾向の把握
-
送信者の分析:
get_statistics(scope="sender_stats", sender="name")- 表示内容:特定の送信者からのメール数、未読数、添付ファイル
- 用途:フィルターやフォルダーのルール、配信停止を判断する際に使用します
-
メールボックスの内訳:
get_statistics(scope="mailbox_breakdown", mailbox="FolderName")- 表示内容:メッセージの総数、未読数、既読率
- 用途:整理が必要なフォルダーを特定します
実行可能なインサイト:
- 1人の送信者からのメールが多い → 専用のフォルダーまたはフィルターを作成します
- アーカイブ内の未読が多い → 確認して古いメールを削除します
- フラグ付きのアイテムが増えている → 対応する時間を予定に入れます
6. メールの一括整理
目標:古くて不要なメールを安全に整理します
安全な整理手順:
- 対象を特定:適切なフィルターを指定して
search_emails()を実行します - まず確認:影響を受ける内容を必ず確認します
- ゴミ箱に移動(元に戻せます):
manage_trash(action="move_to_trash") - 確認:ゴミ箱フォルダーを確認します
- 完全に削除(確実な場合):
manage_trash(action="delete_permanent") - ゴミ箱を空にする(最終手段):
manage_trash(action="empty_trash")
安全に関する注意事項:
- 必ず
max_deletesパラメーターを使用します(デフォルト:5) - 完全に削除する前にメールを確認します
- まず重要なメールボックスをエクスポートすることを検討します:
export_emails()
7. 下書きの管理ワークフロー
目標:メールの作成を効率的に管理します
下書きのワークフロー:
-
下書きを作成:考える時間が必要なときに作成します
manage_drafts(action="create", subject="...", to="...", body="...") -
下書きを一覧表示:保留中の下書きを定期的に確認します
manage_drafts(action="list") -
準備ができたら送信:下書きを仕上げて送信します
manage_drafts(action="send", draft_subject="keyword") -
整理:古くなった下書きを削除します
manage_drafts(action="delete", draft_subject="keyword")
ベストプラクティス:
- 慎重な言い回しが必要なメールは下書きを作成します
- 下書きがたまらないよう、毎週確認します
- 下書きを簡単に識別できるよう、内容が分かる件名を付けます
8. スレッド管理
目標:メールの会話を効果的に処理します
スレッドの戦略:
-
スレッド全体を表示:
get_email_thread(subject_keyword="keyword")- 関連するすべてのメッセージを、Re:、Fwd: の接頭辞を取り除いて表示します
- 日付順に並べて、時系列で確認できます
-
文脈を踏まえて返信:スレッドを確認したあと、全体の文脈を理解したうえで返信します
- グループでの会話には
reply_to_all=Trueを使います - 1 対 1 の返信には
reply_to_all=Falseを使います
- グループでの会話には
-
スレッドをアーカイブ:解決したら、スレッド全体を移動します
- 件名を使ってスレッドを検索します
- すべてのメッセージを適切なフォルダーに移動します
ツールの選択ガイドライン
各ツールを使う場面:
| 目的 | 主なツール | 代替手段 |
|---|---|---|
| 概要を確認する | get_inbox_overview | - |
| 特定のメールを見つける | get_email_with_content | search_emails |
| 高度な検索を行う | search_emails | - |
| 会話を確認する | get_email_thread | search_emails(subject_keyword) |
| 最近のメールを確認する | get_recent_emails | list_inbox_emails |
| メールを整理する | move_email | - |
| ステータスを一括更新する | update_email_status | - |
| 返信/作成する | reply_to_email, compose_email | manage_drafts |
| 分析する | get_statistics | - |
| クリーンアップする | manage_trash | - |
| バックアップする | export_emails | - |
ベストプラクティス
メールの生産性
- まとめて処理する:メールは常に確認するのではなく、専用の時間を設けて処理します
- 2 分ルール:2 分未満で終わる作業は、すぐに対応します
- 積極的に配信登録を解除する:統計情報を使って、ニュースレターの受信過多を把握します
- フォルダー階層:フォルダー構成はシンプルに保ちます(深さは最大 2~3 階層)
- 分類ではなく検索を使う:ほとんどのメールでは、複雑なフォルダー分けよりも適切な検索が効果的です
ツールの使用
- 安全上限:max_moves、max_deletes パラメーターを必ず守ります
- 破壊的な操作は確認する:完全に削除する前に、必ず確認します
- フィルターを使う:フィルター(送信者+件名+日付)を組み合わせて、正確に検索します
- 複数メールボックスを検索する:場所が不明な場合は
mailbox="All"を使います - 内容のプレビュー:
include_content=Trueは必要な場合に限って使います(時間はかかりますが便利です)
整理の戦略
- プロジェクト別のフォルダー:曖昧なカテゴリではなく、進行中のプロジェクトごとに整理します
- クライアント別のフォルダー:「Clients/ClientName」のような階層構造にします
- 期間別のアーカイブ:必要に応じて年別のサブフォルダーを設けたアーカイブフォルダーを使います
- 対応用フォルダー:「要対応」、「返信待ち」、「参照用」を用意します
- 定期的な整理:30~90 日以上前のメールをアーカイブするか削除します
プライバシーとセキュリティ
- ユーザー設定を確認する:MCP ツールはユーザー設定を取り込むため、それを尊重します
- 添付ファイルの安全性:ダウンロードする前に添付ファイルをスキャンします
- 機密データ:エクスポート機能は慎重に使います
- アカウントの選択:複数アカウントの構成では、使用するアカウントを必ず確認します
よくある状況と解決策
「受信トレイのメールが多すぎて困っています」
get_inbox_overview()で全体の量を確認しますget_statistics()で傾向を把握します- 毎日のトリアージワークフロー(1 日 15~30 分)を導入します
- 必須でないニュースレターの配信登録を解除します
- 基本的なフォルダー構成を作ります
- 一気にではなく、少しずつ受信トレイをゼロにしていきます
「重要なメールが見つかりません」
- まず
get_email_with_content(subject_keyword)を試します - 見つからない場合は、
search_emails(mailbox="All", subject_keyword="..."))を使います - 送信者で検索してみます:
search_emails(sender="...") - 期間を指定して検索してみます:
search_emails(date_from="...", date_to="...") - ゴミ箱や他のフォルダーに入っていないか確認します
「プロジェクト別にメールを整理したい」
- 現在の構成を確認します:
list_mailboxes() - Mail アプリを使ってプロジェクト用のフォルダーを作成します(MCP ではフォルダーを作成できません)
- プロジェクトに関連するメールを検索します:
search_emails(subject_keyword="ProjectName") - まとめて移動します:
move_email(to_mailbox="Projects/ProjectName", max_moves=10) - チームメンバーを送信者フィルターに指定します
「重要なメールをバックアップしたい」
- 重要なメールを1通だけエクスポートします:
export_emails(scope="single_email", subject_keyword="...") - メールボックス全体をエクスポートします:
export_emails(scope="entire_mailbox", mailbox="Important") - 形式を選択します:txt(読みやすい形式)または html(書式を保持)
- 保存先を指定します(デフォルト:~/Desktop)
「特定の送信者からのメールが多すぎます」
- 統計を確認します:
get_statistics(scope="sender_stats", sender="...") - 不要な場合:検索して一括で削除またはゴミ箱に移動します
- 必要だが多すぎる場合:専用フォルダーを作成し、すべて移動します
- ニュースレターの場合:配信停止を検討します(Mail アプリで操作します)
「メールへの対応が必要です」
- フラグを付けます:
update_email_status(action="flag", subject_keyword="...") - 「要フォローアップ」フォルダーを作成し、フラグを付けたメールを移動します
- フラグ付きメールを毎週確認します
- 対応が完了したらフラグを解除します:
update_email_status(action="unflag", ...)
応答パターン
ユーザーがメールに関するサポートを求めた場合:
- 意図を確認する:目標(整理、検索、返信、整理整頓)について尋ねます
- 状況を把握する:
get_inbox_overview()または関連ツールを使用して状況を確認します - ワークフローを提案する:このスキルから適切なワークフローを提案します
- 確認を得て実行する:破壊的な操作を行う前に確認します
- ヒントを伝える:関連するベストプラクティスを共有します
- 次のステップを提案する:関連する操作やメンテナンスの習慣を提案します
エラー処理
よくある問題と解決策:
- 「アカウントが見つかりません」:
list_accounts()でアカウント名を確認します - 「メールボックスが見つかりません」:
list_mailboxes()を使って利用可能なフォルダーを確認します - 「メールが見つかりません」:検索語を広げるか、
mailbox="All"を試します - 大文字と小文字の区別:メール検索では大文字と小文字は区別されませんが、メールボックス名では区別される場合があります
- 安全上限に達した:意図した操作であれば max_moves/max_deletes を増やすか、複数のバッチに分けて処理します
ユーザーのワークフローとの連携
ツールの説明に挿入されたユーザーの設定を必ず確認し、提案に反映してください:
- デフォルトのアカウント設定
- 希望するメールボックスの構成
- 許容できるメールの量
- 整理の方針(最小限のフォルダーにするか、細かく分類するか)
覚えておくこと
メールの管理方法は人それぞれです。これらのワークフローをユーザーの好みや作業スタイルに合わせて調整してください。完璧な整理よりも、無理なく続けられる習慣を重視します。目標は生産性の向上であり、完璧さではありません。