ClaudeとAirmailを連携する方法 — Macのメールを会話で扱う手順
AirmailのMCPはMac上のAirmailとローカルでつなぐ方式です。拡張機能での導入、Claude Codeへの追加、102個のツールの権限の絞り方、つながらないときの切り分けをまとめます。
AirmailのMCPは、macOS用メールクライアントのAirmailをClaudeから操作するためのコネクタです。メールの検索・作成・整理に加えて、カレンダー、リマインダー、連絡先まで会話で頼めます。通常のクラウド型コネクタと違い、接続先はインターネット上のURLではなく、Macで動いているAirmail本体です。
コネクタのディレクトリには「Anthropic verified」の表示があり、追加時期は2026年8月です。ツールは102個あります。数が多いので、導入の手順と同じくらい、どのツールをどこまで開けるかが運用の分かれ目になります。
動く仕組み — URLではなくMacの中で完結する
Airmail MCPは、Claudeとの間に小さな橋渡しのプログラム(bridge)を置く構成です。経路は次のとおりです。
リクエストが通る経路
- QClaude側のクライアントがstdioで橋渡しプログラムに話しかける?答えが橋渡しは動かない答えがはい
橋渡しはNode.jsのプログラム(airmail-mcp)です。標準入力でJSON-RPCを受け取ります。
- Q橋渡しがHTTPでAirmail本体に転送する?答えがAirmailが起動していないか、MCPが無効答えがはい
転送先は同じMacの
localhost:9876で動くAirmailのMCPサーバーです。ツールの処理はAirmailのSwift製サーバー側で動き、橋渡し自体は転送だけを担います。
結果が標準出力からClaudeへ戻る
橋渡しとAirmailの間はMac内の通信です。ただしClaudeが取得した内容は、選んだAIプロバイダーが処理します。READMEにもその旨の注記があります。
コネクタ一覧の説明文にも同じ注意が載っています。橋渡しはMac上でAirmailにつなぎ、取り出したデータは利用者が選んだAIプロバイダーで処理される、という書き方です。メールの本文をClaudeに読ませる以上、これは社内ルールと照らす価値のある点です。送信先の扱いはClaudeのコネクタで起きやすい権限の失敗にも通じる論点です。
先に確認する動作条件
動作条件は3つだけです。
動かすための条件
OS
macOS 13以上
READMEの動作条件
アプリ
Airmail
環境設定でMCPを有効にしておく
実行環境
Node.js 18以上
npxで橋渡しを起動するため
コネクタのページには、必要なClaudeのプランや、Airmail側の契約プランの記載がありません。有料版でないと使えないかどうかは、ページからは判断できないため、Airmailの環境設定にMCPの項目が出るかで手元で確かめるのが確実です。
導入ルートは3通り — どれを選ぶか
Claude向けの導入は3通りあります。同じAirmailをつなぐ方法でも、向く人が違います。
| 状況 | 選ぶルート | 理由 |
|---|---|---|
| Claude Desktopで普段使う | 選ぶルートMCPB拡張機能 | 理由ダブルクリックで入り、設定ファイルを触らない |
| 設定ファイルを自分で管理したい | 選ぶルートclaude_desktop_config.jsonに手書き | 理由引数や環境変数を明示できる |
| ターミナルのClaude Codeで使う | 選ぶルートclaude mcp add | 理由端末から呼べ、権限ルールを細かく書ける |
Claude Desktopに拡張機能として入れる
入れ方は2通りです。Claude MCP Directoryから入れるか、リリースページから最新の .mcpb ファイルを取得してダブルクリックします。.mcpb の中身はmcpbファイルの解説に書いています。組織で拡張機能の許可リストを使っている場合は、先にClaude Desktop拡張機能の許可リストの設定を確認してください。
設定ファイルに手書きする
Claude Desktopの設定ファイルは ~/Library/Application Support/Claude/claude_desktop_config.json です。次の断片を足します。
{
"mcpServers": {
"airmail": {
"command": "npx",
"args": ["-y", "airmail-mcp"]
}
}
}書式の全体像はClaude DesktopのMCP設定ガイドにまとめています。設定を変えたら、Claude Desktopを再起動します。
Claude Codeに追加する
Claude Codeでは1行で追加できます。
claude mcp remove airmail
claude mcp add --transport stdio airmail -- npx -y airmail-mcpこの2つは && でつないだ1行でも実行できます。先に remove を置くことで、すでに登録済みの airmail を入れ直す手順にもなります。この方式は標準入出力で動くローカルのサーバーです。ローカルとリモートの違いはローカルMCPとリモートMCPの違いで比べています。
初回の認可 — トークンはクライアントごと
初めて接続すると、Airmailに認可のダイアログが出ます。「Allow」を押して許可します。拡張機能の手動設定では、ペアリングの確認が出て、橋渡しごとのトークンが発行されます。
仕組みの要点は4つです。
- グローバルな認証トークンはなく、ペアリングだけでアクセスを許可する
- 許可はクライアントごとに、AirmailのMCP Permissionsタブから取り消せる
- 既定ではトークンは橋渡しのメモリ上だけにあり、プロセスを閉じると消える
AIRMAIL_MCP_REMEMBER_CLIENT_TOKEN=1を設定すると、キーチェーンのサービスcom.airmail.mcp.clientに保存される
毎回ペアリングを求められるのが面倒な場合だけ、キーチェーン保存を選びます。既定のままなら、トークンがディスクやキーチェーンに残りません。
102個のツールを、権限の重さで3段に分ける
ツール一覧は、メールの読み取りから設定の書き換えまで14のグループに分かれます。名前から性質を読み分けると、開ける範囲を決めやすくなります。以下の分類は、ツール名にもとづく筆者の整理で、Airmailの分類ではありません。
ツールを性質で見分ける
読むだけ
list_inbox、search_messages、get_message、semantic_search、list_events、search_contacts_bookなど。まずはここだけで運用を始められます。下書きや整理を作る
compose_email、reply_to_message、save_as_draft、mark_messages、archive_messages、move_messages、snooze_messages、create_event、create_ruleなど。画面で結果を確認してから使う段です。消す・送る・設定を変える
send_email、delete_messages、empty_folder、delete_folder、delete_contact、delete_event、update_account_settings、set_vacation_settings、set_preferencesなど。自動承認にしない段です。
READMEの例にも、送信を止める書き方があります。「Sarahの最新メールを探し、火曜10時を提案する返信を開いて。送信はしないで」という依頼です。返信文を作らせるときは、この「送信しない」を毎回添える運用が基本になります。
Claude Codeで送信・削除だけ止める
Claude Codeでは、MCPのツールを mcp__<サーバー名>__<ツール名> の形で権限ルールに書けます。上の claude mcp add のサーバー名は airmail なので、次のように名指しできます。権限ルールの評価は「deny、ask、allow」の順で、denyが最優先です。
{
"permissions": {
"deny": [
"mcp__airmail__send_email",
"mcp__airmail__empty_folder"
],
"ask": [
"mcp__airmail__delete_messages",
"mcp__airmail__move_messages"
],
"allow": [
"mcp__airmail__list_inbox",
"mcp__airmail__search_messages",
"mcp__airmail__get_message"
]
}
}これは筆者が組んだ設定例で、Airmailが配布しているものではありません。.claude/settings.json に置くと、送信とフォルダの全削除は呼び出し自体が止まり、削除と移動は都度の確認になります。
ツールが足りない・見えない — 機能グループの切り替え
READMEによると、ツールは機能グループにまとめられ、manage_capabilities で実行中に有効・無効を切り替えられます。多すぎるツール定義でコンテキストを圧迫しないための仕組みです。
READMEの表では「mail」だけが常にオンで、残りの13グループは既定でオンと書かれています。ところが同じページに、全グループを有効にする例として次の呼び出しが載っています。
manage_capabilities を enable: ["preferences", "rules", "lists",
"smartfolders", "signatures", "aliases", "accountsettings"] で呼ぶ挙がっているのは、preferences、rules、lists、smartfolders、signatures、aliases、accountsettingsの7グループです。表の「On」と、この例の存在は、そのままでは噛み合いません。ルールや署名のツールが見えないときは、Claudeに manage_capabilities で必要なグループを有効にさせるか、AirmailのMCP環境設定で有効なグループを見直します。
もう1点、コネクタ一覧のツール表示には start_convo が並んでいますが、READMEのツール一覧にはありません。ツール名はバージョンアップで変わることがあるため、使う前にClaude上の実際の一覧で確かめてください。
つながらないときの切り分け
Troubleshootingの内容を、症状から引ける順に並べ直します。
つながらないときの確認順
- QAirmailは起動していて、環境設定でMCPが有効?答えがAirmailを開いてMCPを有効にする答えがはい
橋渡しは既定ではAirmailを自動起動しません。
AIRMAIL_MCP_AUTO_LAUNCH=1を設定すると、ローカルのMCPサーバーに届かないときにAirmailを開きます。 - Qポート9876で待ち受けている?答えがAirmail側でポートを変えていないか確認する答えがはい
ターミナルで確認できます。
lsof -nP -iTCP:9876 -sTCP:LISTENポートを変えた場合は、拡張機能の設定にも同じ値を入れます(環境変数は
AIRMAIL_MCP_PORT)。 - Q認可は通っている?答えがMCP Permissionsタブで古い許可を消す答えがはい
古いクライアントの許可を削除し、Claude Desktopを再起動して、新しいペアリングを承認します。
それでも直らないとき
古い拡張をClaude Desktopから削除し、新しい .mcpb を入れて再起動します。
ログや不具合報告には、メール本文、アドレス、ペアリングトークンを含めないでください。報告の窓口は通常の不具合ならGitHub Issues、セキュリティ上の問題ならSECURITY.mdの手順です。
使い方の例とdeep link
AirmailのMCPは、応答の中に airmailmcp:// 形式のリンクを含めます。リンクを開くと、該当のメールが選択された状態や、返信画面、下書き、添付ファイルがAirmailで開きます。Claudeの回答に出たリンクから、そのままAirmailの画面へ戻れます。
使い方の例は次の2つです。
- 未読の受信箱を要約し、至急の返信が要るものを示す
- 製品ローンチに関するメールをトピックごとにまとめ、Airmailで開くリンクを付ける
メール以外にも、VIPリストと拒否リスト、受信ルール、署名、スマートフォルダ、エイリアス、不在通知の設定まで、ツールの対象に入っています。
他のメールコネクタとどう分けるか
クラウドのメールサービスをつなぐ場合は、別のコネクタです。FastmailならClaudeとFastmailの連携、GmailならClaudeのGmailコネクタを使います。
AirmailのMCPには、アカウント一覧や有効・無効の切り替えのツール(list_accounts、enable_disable_account)があります。サービス別にコネクタを入れ分けず、Mac上の1つの窓口からメールを触りたい人に向く構成です。反対に、Macを閉じている間は、Claudeからはメールに届きません。
コネクタ全般の位置づけはClaudeのコネクタ入門を参照してください。