mcpField
M
Mail.app

Mail.app

ローカル
github.com/p-l-taコミュニケーション116 週間前に更新

Mail.app について

MCPホスト経由でmacOSのMail.appに設定されたメールアカウントを使う人向けのローカルMCPサーバーです。索引検索とMail.appの操作を組み合わせてメールを管理します。

主な機能

  1. 01条件を指定したメール検索
  2. 02メール本文の全文読み取り
  3. 03メールの送信と返信
  4. 04メールのフラグ設定、移動、削除
  5. 05アカウント、メールボックス、配信停止リンクの管理

活用シーン

  1. 01設定済みアカウントを横断したメール検索
  2. 02特定のメールの確認と返信
  3. 03フラグやメールボックスによるメール整理

MCP 対応

stdio経由でMCPホストにMail.appの検索、読み取り、管理ツールを提供します。ローカルで動作し、Mail.appに設定されたアカウントにアクセスします。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"p-l-ta-mail": {
"command": "npx",
"args": [
"-y",
"@p-l-ta/mail-mcp"
]
}
}
}
起動コマンドnpx -y @p-l-ta/mail-mcp

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

パッケージ
npm@p-l-ta/mail-mcp1.3.5

ツール

24

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
fromstringいいえ送信者のアドレスまたは表示名に対する部分文字列一致
limitintegerいいえ
querystringいいえ件名、送信者、本文の要約を対象にフリーテキスト検索します。省略すると、他のフィルターのみで一覧表示します。
sincestringいいえISO 日付 — この日付以降のメッセージのみ
accountstringいいえメールボックスの完全な URL(ホストとパス)に対する部分文字列一致。アカウントを指定するにはアカウントのホスト名(例:'icloud')を、特定のフォルダーを指定するにはメールボックスのパスの一部(例:'INBOX'、'Amtrak')を使用します。
subjectstringいいえ件名に対する部分文字列一致
include_deletedbooleanいいえ

詳細

mail-mcp

macOS の Mail.app に完全にアクセスできる MCP サーバーです。Claude(およびその他の MCP ホスト)から、Mail.app で設定されているすべてのアカウント(iCloud、Exchange、IMAP など)を対象に、検索、閲覧、送信、返信、フラグ設定、移動などを行えます。

前提条件

  • macOS(Mail.app が必要です)
  • Node.js 20+
  • MCP ホスト:Claude Desktop、Amazon Quick、または任意の stdio MCP クライアント

インストール

Claude Desktop — ワンクリックインストール(推奨)
  1. 最新リリースからmail-mcp.mcpbをダウンロードします
  2. .mcpbファイルをダブルクリックすると、Claude Desktop が自動的にインストールします
  3. 必要な macOS 権限を付与します(下記を参照)
手動 / Amazon Quick / その他のホスト
npx @p-l-ta/mail-mcp

または、グローバルにインストールします。

npm install -g @p-l-ta/mail-mcp
mail-mcp

MCP ホストからmail-mcpバイナリを指定します(stdio トランスポート)。設定例:

{
  "mcpServers": {
    "mail-app": {
      "command": "npx",
      "args": ["@p-l-ta/mail-mcp"]
    }
  }
}

必要な macOS 権限

MCP ホスト(Claude Desktop、Amazon Quick など)を実行するアプリケーションに、以下の権限を付与します。

権限設定場所
フルディスクアクセスシステム設定 → プライバシーとセキュリティ → フルディスクアクセス
オートメーション → Mailシステム設定 → プライバシーとセキュリティ → オートメーション

MCP サーバーのプロセスは、起動元のホストアプリケーションから権限を引き継ぎます。

ツール

ツール説明
search_emails豊富なフィルターを使用して、Envelope Index データベースからメッセージを検索します
read_emailRFC message-id を指定して、メッセージの本文全体を読み取ります
list_accounts_and_mailboxes未読数とともに、設定済みのすべてのアカウントとメールボックスを一覧表示します
list_recent指定したメールボックス内の最近のメッセージを一覧表示します
list_senders送信者ごとにグループ化した、メッセージ数と未読数の概要を表示します
send_email設定済みのアカウントのいずれかから新しいメールを送信します
reply_to_emailRFC message-id を指定して、既存のメッセージに返信します
set_message_flagsメッセージの既読状態やフラグ状態を設定します
move_emailメッセージを別のメールボックスに移動します
trash_emailメッセージを「削除済みメッセージ」に移動します
create_mailboxアカウントに新しいメールボックス/フォルダーを作成します
bulk_mark_readメールボックス内のすべてのメッセージ、または指定した送信者からのメッセージを既読にします
get_unsubscribe_linkメッセージのヘッダーと本文から配信停止 URL を抽出します
empty_mailboxメールボックス内のすべてのメッセージ(迷惑メール、ゴミ箱など)を一度に削除します

仕組み

  • 検索と閲覧 — Mail 独自の Envelope Index SQLite データベースを直接検索し、すべてのアカウントから高速で構造化された結果を取得します
  • 操作(送信、返信、フラグ設定、移動、ゴミ箱への移動)— Mail.app に対する AppleScript オートメーションを使用するため、メッセージがローカルファイルとして保存されていないアカウントでも動作します

開発

npm install
npm run dev          # tsx watch — live reload
npm test             # vitest unit tests
npm run build        # compile TypeScript → dist/
npm run mcpb         # build Claude Desktop extension → build/mail-mcp.mcpb

対話形式での MCP テスト:

npm run build
npx @modelcontextprotocol/inspector node dist/server.js

プライバシーポリシー

mail-mcp は、Mac 上で完全に動作するローカル MCP サーバーです。バックエンドもテレメトリーもなく、独自にネットワークリクエストを行うこともありません。

アクセスするもの:

  • Mail.app の Envelope Index データベース(~/Library/Mail/)— 読み取り専用で、検索クエリに使用します
  • AppleScript 経由の Mail.app — メッセージ本文の読み取り、メールの送信、メッセージへのフラグ設定、移動、ゴミ箱への移動に使用します

行わないこと:

  • Mac の外部にデータを収集、保存、送信すること
  • 外部サーバーや API に接続すること
  • メッセージの内容をどこかに記録すること

メールデータはすべてデバイス上に保持され、通常のツール応答の一部として MCP ホスト(Claude Desktop またはその他のクライアント)に渡されるだけです。Claude が呼び出せるツールは、すべてユーザーが管理できます。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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