Skip to main content
Glama
Manjit73

spacemail-mcp

by Manjit73

spacemail-mcp

Spacemail(Spaceship ビジネスメール)のメールボックス 1つ以上に Claude がアクセスできるようにする MCP サーバーです。

この方式を採用する理由

Spaceship の公開 API(docs.spaceship.dev)は、ドメイン、DNS、SellerHub をカバーしています。メールボックス用のエンドポイントが存在しないため、メールに関してラップする API はありません。Spacemail には標準の IMAP と SMTP がデフォルトで有効になって公開されているため、このサーバーはそれらに直接接続します。

プロトコル

ホスト

ポート

暗号化

IMAP

mail.spacemail.com

993

SSL

SMTP

mail.spacemail.com

465

SSL

ユーザー名には完全な Spacemail アドレス、パスワードにはそのメールボックス自身のパスワードを使います。

Related MCP server: email-mcp

ツール

ツール

説明

list_accounts

設定されているメールボックスと、そのうちデフォルトがどれかを表示します。

test_connection

認証情報を検証します。1つのメールボックスだけ、またはすべてを一度に検証できます。

list_folders

すべてのフォルダを、メッセージ数と未読数付きで一覧表示します。

search_messages

送信者、宛先、件名、本文、日付、未読で絞り込みます。新しい順に返します。

read_message

1件のメッセージを表示します。ヘッダー、プレーンテキスト本文、添付ファイル一覧。

set_read_state

既読または未読にマークします。

move_message

フォルダ間で移動します。ゴミ箱への移動も含みます。

save_draft

送信せずに下書きを作成して保存します。

send_message

SMTP で送信します。アカウントごとに明示的に有効にしない限りオフです。

すべてのツールには省略可能な account 引数があります。設定したメールボックスが1つだけの場合は無視されます。複数ある場合は、省略するとデフォルトのメールボックスが使われます。search_messages はさらに account: "*" を受け付け、1回の呼び出しで全メールボックスを検索できます。

意図的に省いた2つの機能:

  • 完全削除はありません。 どのツールでも最悪でも、メッセージをゴミ箱に移動するだけです。元に戻すには移動し直せば済みます。

  • 送信はアカウントごとのオプトインです。 send_message は、そのメールボックスで allowSend が true の場合にのみ送信します。オフのままにして save_draft を使えば、人間が送信ボタンを押すことになります。

セットアップ

1. インストール

Node.js 18 以降が必要です。

cd path/to/spacemail-mcp
npm install

2. accounts.json の作成

accounts.example.json を accounts.json にコピーして記入します。このファイルは gitignore されています。

{
  "accounts": [
    {
      "label": "personal",
      "user": "you@example.com",
      "password": "the-mailbox-password",
      "default": true,
      "fromName": "Your Name"
    },
    {
      "label": "work",
      "user": "hello@example.org",
      "password": "the-other-password"
    }
  ]
}

アカウントごとのフィールド: label(チャット上での呼び名)、user、password、および任意で default、fromName、allowSend、imapHost、imapPort、smtpHost、smtpPort です。

ラベルは一意でなければなりません。label を省略するとアドレスから自動的に導出されるため、別々のドメインで同じローカル部分を持つメールボックス(info@a.com と info@b.com)はどちらも info になり、サーバーは起動を拒否します。その場合は明示的なラベルを付けてください。

パスワードは Spacemail Manager で取得します。サブスクリプションを見つけて、メールボックスの右にある縦の3つのドットをクリックし、IMAP/POP3/SMTP を選択します。パスワードが不明な場合は、そこでリセットしてください。

3. Claude Desktop アプリに登録する

Settings(設定)→ Developer(開発者)→ Edit Config(設定の編集)の順に操作すると、%APPDATA%\Claude\claude_desktop_config.json が開きます。

{
  "mcpServers": {
    "spacemail": {
      "command": "node",
      "args": ["C:\\path\\to\\spacemail-mcp\\index.js"],
      "env": {
        "SPACEMAIL_CONFIG": "C:\\path\\to\\spacemail-mcp\\accounts.json"
      }
    }
  }
}

JSON 内のバックスラッシュは二重にする必要があります。その後、アプリをシステムトレイから完全に再起動してください。

または Claude Code CLI を使う場合:

claude mcp add --transport stdio spacemail ^
  --env SPACEMAIL_CONFIG="C:\path\to\spacemail-mcp\accounts.json" ^
  -- node "C:\path\to\spacemail-mcp\index.js"

4. 動作確認

account 引数を指定せずに test_connection をClaudeに実行させます。すべてのメールボックスをテストし、それぞれを個別に ok または failed で報告するため、1つのパスワードが間違っていても他の結果が隠れることはありません。

認証情報を指定する他の方法

次の順で確認されます。最初に見つかった設定が優先されます。

1. 設定ファイル(メールボックスが2つ以上ある場合に推奨)

SPACEMAIL_CONFIG に上記の JSON ファイルを指定します。

2. 番号付き環境変数

SPACEMAIL_1_USER、SPACEMAIL_1_PASSWORD、SPACEMAIL_1_LABEL、SPACEMAIL_1_DEFAULT、SPACEMAIL_1_ALLOW_SEND、SPACEMAIL_1_FROM_NAME、続いて SPACEMAIL_2_* というように最大20番まで指定できます。

3. 単一アカウント

SPACEMAIL_USER と SPACEMAIL_PASSWORD に加えて、任意で SPACEMAIL_IMAP_HOST、SPACEMAIL_IMAP_PORT、SPACEMAIL_SMTP_HOST、SPACEMAIL_SMTP_PORT、SPACEMAIL_ALLOW_SEND、SPACEMAIL_FROM_NAME を指定できます。

トラブルシューティング

サーバーが起動しない。 設定ファイルが読み取れない、パスワードが不足している、ラベルが重複している、またはメールボックスがまったく設定されていない場合、サーバーはその旨を stdout に出力して終了します。フォルダ内で node index.js を直接実行すれば確認できます。

一部のメールボックスだけ失敗し、他は正常に動作する。 アカウント引数を指定せずに test_connection を実行します。アカウントごとに個別に報告されます。よくある原因は、ユーザー名が完全なメールアドレスになっていないか、Spacemail Manager でそのメールボックスの IMAP がオフになっていることです。

Claude でサーバーが切断状態と表示される。 MCP のサブプロセスはターミナルとは異なる環境で起動されるため、node が PATH に含まれないことがあります。where node が返す node.exe の絶対パスを使ってください。

search_messages で何も見つからない。 フォルダパスは大文字・小文字を区別し、環境によって異なります。最初に list_folders を実行し、その返す path の値をそのまま使ってください。

送信が拒否される。 その特定のアカウントで allowSend が true になっている必要があります。また Spacemail はプランごとに送信量の上限も設定しています。

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables Claude to interact with email accounts via IMAP and SMTP, providing tools for searching, reading, sending, and managing emails across multiple providers.
    40
    1,152 npm
    112
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to read, search, draft, send, flag, and move email across multiple IMAP/SMTP mailboxes while keeping credentials local.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude Code to manage email inboxes via IMAP, including reading, categorizing, phishing detection, archiving, junking, and sending emails with user permission.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables Claude to read, search, send, and manage email across multiple IMAP/SMTP accounts through OAuth 2.1-secured MCP tools.
    MIT