MCPでAIエージェントをTrekMailに接続
ブラウザ認証、汎用CLIブリッジ、または範囲を限定した静的トークンを使い、互換性のあるMCPクライアントをTrekMailに接続します。
記事の詳細
種類・難易度・対象プラン・最終更新の情報。
▼
記事の詳細
種類・難易度・対象プラン・最終更新の情報。
- 種類
- ガイド
- 難易度
- 中級
- プラン
- Nano · Starter · Pro · Agency
- 最終更新
- 2026年8月23日
TrekMail MCPサーバーを使うと、互換性のあるAIクライアントから自然言語でメールインフラを管理できます。同じTrekMail APIを通じて、ドメイン、メールボックス、White Labelのブランド設定とチーム、Drive、メール、カレンダー、移行、サポート、請求、関連サービスを扱うカタログを提供します。
すべての会話に完全なカタログが読み込まれるわけではありません。TrekMailは有効な認証情報からtools/listを構築します。認証範囲外のツールに加え、選択したツールセット、読み取り専用モード、トランスポート制限、ローカルの安全設定で除外されたツールも省かれます。そのため、メール用に範囲を限定した認証情報では、コンパクトなメールツール一覧が提示されます。
接続方法を選ぶ
| 方法 | 使用する場面 | 設定時間 |
|---|---|---|
| リモートMCPクライアント (推奨) | クライアントがリモートMCP URLとブラウザ認証に対応している場合。 | 約30秒 |
| CLIまたはデスクトップクライアント | クライアントがコマンド/stdioサーバーを受け付けるか、独自のリモートMCPコマンドを備えている場合。 | 約1分 |
| 任意のホストでmcp-remote | ホスト型MCPエンドポイントへの汎用stdioブリッジが必要な場合。 | 約1分 |
| stdioパッケージをセルフホスト | 非公開のTrekMailインスタンスへの接続、コンテナ内での実行、またはOAuthの代わりに静的なtm_live_トークンを使用する場合。 |
約5分 |
方法1-3ではOAuth 2.1を使用します。初回接続時にブラウザでTrekMailの同意ページが開き、要求された権限を確認すると、クライアントはアカウントに限定されたトークンを取得します。長期間有効なtm_live_トークンをクライアントへコピーする必要はありません。接続はいつでもAIエージェントとAPI → トークン → 接続済みアプリから取り消せます。
利用できる機能
- 接続ごとのツールセットは、登録前に現在の接続の権限と安全設定に基づいて絞り込まれます。
- OAuth 2.1 + 動的クライアント登録: AIクライアントが自身を登録し、ブラウザの同意ページを案内して、範囲付きトークンを取得します。Web、デスクトップ、CLIの各方法で長期間有効なトークンをコピーして貼り付ける必要はありません。
- デュアルトークン構成: インフラ用のオペレーショントークンと、Webメールの全操作用のメッセージトークンを分けます。OAuthで接続すると、必要に応じてメールボックスごとにメッセージトークンが自動発行されます。
- 自動的な冪等性が必要な操作に適用されるため、再試行しても同じ操作が重複しません。
- 二段階の削除: メールボックスの削除には明示的な意思表示と確認が必要で、その後、復元できるよう「最近削除した項目」に移動します。
- セルフホスト用の安全制御: 独自のstdio MCPサーバーを運用する管理者は、削除、送信、移行操作に承認を必須にできます。
- 完全な監査ログ: すべてのAPIおよびMCP操作が記録され、90日間保持されます。
始める前に
- すべてのプランでエージェントを接続できます。
- Nano: メール検証ツール。Drive Storageを追加すると、閲覧、アップロード、共有、復元、完全削除など、アカウントに付与されたDrive機能もエージェントが利用できます。
- Starter: Driveとメール検証の全機能に加え、その他の領域(ドメイン、メールボックス、移行、チケットなど)への読み取り専用アクセス。移行の作成、チケットへの返信、自動返信の変更など、StarterがAPI経由で提供しない書き込み操作にはダッシュボードを使用します。
- Pro / Agency: すべての機能群に対する完全な読み取りおよび書き込みアクセス。
- White Labelのトライアルまたはアドオン: 権利が有効な間、ブランド、クライアント/チーム、アクティビティのツールを追加します。権利がなければ、それらのスキーマは省かれます。解約猶予期間中は、所有者だけが読み取りツールを利用できます。
- 初めてですか? AIエージェントとAPIページのツアーを開始ボタンでは、エージェントの接続、クライアントごとの手順、手動トークン、接続済みアプリ、監査ログを順に確認できます。
- **OAuthを使う方法(1、2、3)**では、トークンを手動作成する必要はありません。クライアントがブラウザ認証フローで作成します。**セルフホストstdioの方法(4)**では、最初にダッシュボードで
tm_live_トークンを作成してください。
1. リモートMCPクライアント(推奨)
AIクライアントがリモートMCPサーバーとブラウザ認証に対応している場合は、この方法を使用します。
ショートカット: AIエージェントとAPIページのエージェントを接続タブで使用中のクライアントを選ぶと、 そのクライアントに固有の経路、メニューパス、または設定ファイルと、アドレスを入力済みのスニペットが 表示されます。クライアントが一覧にある場合は、以下の一般的な手順ではなく、表示された手順に 従ってください。
- クライアントでMCP、連携、またはコネクタの設定を開きます。
- リモートMCPサーバーを追加またはカスタムコネクタを追加を選びます。正確な名称はクライアントによって異なります。
- 次を入力します。
- 名前:
TrekMail - リモートMCPサーバーURL:
https://trekmail.net/mcp
- 名前:
- 接続を確定します。ブラウザでTrekMailの認証ページが開きます。
- サインインして要求された権限を確認し、アクセスを承認します。ブラウザで接続が確認されたらクライアントに戻ります。
最初の認証で有効期限付きトークンが発行されます。対応クライアントは自動的に更新します。接続を解除するには、クライアントの切断操作を使用するか、TrekMailのトークン → 接続済みアプリからアプリを取り消します。
2. CLIまたはデスクトップクライアント
stdioコマンドを受け付けるクライアントでは、次のクライアント共通ブリッジを使用します。
npx -y mcp-remote https://trekmail.net/mcp
このコマンドをクライアントのMCPサーバーとして設定します。初回接続時にブラウザが開き、認証を行います。
独自のリモートMCPサーバー追加コマンドを提供するクライアントもあります。その方法でも問題ありません。サーバーURLにhttps://trekmail.net/mcpを指定し、クライアントの案内に従ってください。
クライアント別の例: Claude Code
claude mcp add trekmail https://trekmail.net/mcp -t http
クライアント別の例: Claude Desktop
設定ファイル(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json)を編集し、次を追加します。
{
"mcpServers": {
"trekmail": {
"url": "https://trekmail.net/mcp",
"transport": "http"
}
}
}
Claude Desktopを再起動します。チャットで初めてTrekMailに言及すると、OAuthポップアップが開きます。
クライアント別の例: Cursor
Cursorにはリモートサーバー用の画面がありません。~/.cursor/mcp.json(またはプロジェクト内の.cursor/mcp.json)を
読み込みます。
{
"mcpServers": {
"trekmail": {
"url": "https://trekmail.net/mcp"
}
}
}
クライアント別の例: Windsurf
Windsurfは~/.codeium/windsurf/mcp_config.jsonを読み込みます。キーはserverUrlであり、urlではありません。
urlで設定したリモートサーバーは無視されます。
{
"mcpServers": {
"trekmail": {
"serverUrl": "https://trekmail.net/mcp"
}
}
}
ファイルを保存し、変更が読み込まれるようクライアントを再起動します。初回接続時にはアクセス承認のため ブラウザが開きます。
3. mcp-remote(CLI)
テストや、リモートOAuthサーバーにまだ直接対応していないAnthropic以外のMCPクライアントには、stdioからリモートHTTPへの小さなNodeブリッジであるmcp-remoteが便利です。
npx -y mcp-remote https://trekmail.net/mcp
初回実行時にOAuth用のブラウザが開きます。その後、トークンは~/.mcp-auth/にキャッシュされ、自動的に使用されます。
ローカルのNodeエントリポイントではなくmcp-remoteコマンドを指定すれば、任意のstdio MCPクライアントに組み込めます。
4. セルフホストstdio(Claude Desktop / Docker / npm)
OAuthの代わりに静的なtm_live_トークンを使用したい場合、たとえば無人サーバー、非公開TrekMailインスタンス、コンテナ配備では、stdio MCPパッケージをクローンして自分のホストで実行します。
まずAIエージェントとAPI → トークンページでAPIトークンを作成します。メールを読み書きする場合は、オペレーショントークンを使ってAPI経由でメッセージトークンも作成します。手順はエージェントを接続タブを参照してください。
MCPサーバーをインストールする
git clone https://github.com/trekmail/mcp-server trekmail-mcp
cd trekmail-mcp
npm install
npm run build
Claude Desktop(stdio)
Claude DesktopのMCP設定ファイルに次を追加します。
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"trekmail": {
"command": "node",
"args": ["./trekmail-mcp/build/index.js"],
"env": {
"TREKMAIL_BASE_URL": "https://trekmail.net",
"TREKMAIL_API_TOKEN": "tm_live_your_token",
"TREKMAIL_MESSAGE_TOKEN": "tm_msg_your_token",
"TREKMAIL_ALLOW_SENDING": "false",
"TREKMAIL_ALLOW_MIGRATION": "false"
}
}
}
}
クローンしたリポジトリの場所を指すようargsのパスを更新し、トークンを自分のものに置き換えます。インフラツールだけが必要ならTREKMAIL_MESSAGE_TOKENを、メッセージツールだけが必要ならTREKMAIL_API_TOKENを省略できます。少なくとも一つのトークンが必要です。
Claude Code(stdio)
Claude CodeのMCP設定(.claude/settings.jsonまたはプロジェクト単位の設定)に次を追加します。
{
"mcpServers": {
"trekmail": {
"command": "node",
"args": ["./trekmail-mcp/build/index.js"],
"env": {
"TREKMAIL_BASE_URL": "https://trekmail.net",
"TREKMAIL_API_TOKEN": "tm_live_your_token",
"TREKMAIL_MESSAGE_TOKEN": "tm_msg_your_token",
"TREKMAIL_ALLOW_SENDING": "false",
"TREKMAIL_ALLOW_MIGRATION": "false"
}
}
}
}
Docker
Dockerを使用する場合は、リポジトリからイメージをビルドして実行します。
git clone https://github.com/trekmail/mcp-server trekmail-mcp
cd trekmail-mcp
docker build -t trekmail-mcp .
docker run -i \
-e TREKMAIL_BASE_URL=https://trekmail.net \
-e TREKMAIL_API_TOKEN=tm_live_your_token \
-e TREKMAIL_MESSAGE_TOKEN=tm_msg_your_token \
-e TREKMAIL_ALLOW_SENDING=false \
-e TREKMAIL_ALLOW_MIGRATION=false \
trekmail-mcp
ローカルnpm(開発)
git clone https://github.com/trekmail/mcp-server trekmail-mcp
cd trekmail-mcp
npm install && npm run build
TREKMAIL_BASE_URL=https://trekmail.net \
TREKMAIL_API_TOKEN=tm_live_your_token \
TREKMAIL_MESSAGE_TOKEN=tm_msg_your_token \
TREKMAIL_ALLOW_SENDING=false \
TREKMAIL_ALLOW_MIGRATION=false \
npm start
stdio環境変数
これらの制御は、自分で実行するセルフホストstdio MCPプロセスだけに適用されます。TrekMail製品の機能をオンまたはオフにするものではありません。
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
TREKMAIL_BASE_URL |
はい | なし | TrekMail URL(https://trekmail.net) |
TREKMAIL_API_TOKEN |
いずれか一つのトークン | なし | tm_live_で始まるオペレーショントークン(インフラツール) |
TREKMAIL_MESSAGE_TOKEN |
いずれか一つのトークン | なし | tm_msg_で始まるメッセージトークン(メール読み取り/送信ツール) |
TREKMAIL_TIMEOUT_MS |
いいえ | 30000 |
リクエストのタイムアウト(ミリ秒) |
TREKMAIL_ALLOW_DESTRUCTIVE |
いいえ | false |
White Labelアクセス変更、ブランド設定、ドメインエイリアスの接続/解除、削除意思、ドメイン削除、転送変更、パスワード、メールボックスアクセス、SMTP、Cloudflare、Driveのゴミ箱/完全削除、メッセージ削除など、影響の大きい書き込みおよび削除ツールを有効化 |
TREKMAIL_ALLOW_SENDING |
いいえ | false |
実際のメールやWhite Labelメンバー招待など、外部へ送信する操作を有効化 |
TREKMAIL_ALLOW_MIGRATION |
いいえ | false |
移行書き込みツール(start_migration、retry_migration、delete_migration、delete_bulk_migration、update_bulk_migration_job_password、test_migration_connection)を有効化。注: cancel_migrationとcancel_bulk_migrationは安全操作として常に利用できます。 |
エージェント向けDriveツール
Driveのスコープを含むオペレーショントークンを使うと、MCPサーバーはスペース、使用量、閲覧、アップロード、ファイル、フォルダ、ゴミ箱、一括操作、公開共有リンク、同期デバイス用パスワード管理、Drive Add-onの状態に関するツールを提供します。接続には、そのスコープで許可されたツールが表示されます。
Drive専用エージェントではTREKMAIL_API_TOKENを設定し、ワークフローに必要なスコープだけを付与します。stdioをセルフホストする場合、エージェントが確認済みの完全削除またはゴミ箱を空にするジョブを実行するとき以外は、破壊的操作を無効にしてください。Drive Add-onの購入、容量変更、解約はMCPツールではありません。エージェントはアドオンの状態と料金を確認できますが、請求の変更はダッシュボードで行います。
Drive MCPツールの概要とAIエージェントをTrekMail Driveに接続も参照してください。
利用可能なツール
MCPサーバーは接続済みエージェントに次のツールを提供します。提供されたトークンに応じて、ツールは条件付きで登録されます。
エージェントが実際に表示できるツールは三つの要素で決まり、いずれもtools/listが応答する前に適用されます。
- トークンのスコープ。 トークンが機能のスコープを持たないツールは登録されません。
- ローカルstdioの安全制御。 セルフホストstdioサーバーでは、管理者が書き込み、送信、移行操作に承認を要求できます。ホスト型MCPでは、代わりにOAuthで承認されたスコープを使用します。
- **
TREKMAIL_READ_ONLY=true**は、スコープやフラグに関係なく、すべての書き込みツールを除外します。
そのため、トークンのスコープが広くても、セルフホスト接続を意図的に制限できます。ホスト型MCPはOAuthで承認された権限に引き続き限定されます。
ドメインツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
list_domains |
オプションのステータス/検索フィルターでドメインを一覧表示 |
get_domain |
特定のドメインの詳細を取得 |
get_domain_alias |
ドメインエイリアス接続と現在配信中かどうかを確認 |
set_domain_alias |
受信専用の一致するアドレスをプライマリドメインに接続(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
remove_domain_alias |
confirm_remove: trueの後にドメインエイリアスを切断(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
create_domain |
アカウントに新しいドメインを追加 |
delete_domain |
ドメインを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
update_domain_catch_all |
キャッチオールアドレスを設定または解除 |
set_domain_mail_hosting |
ドメインの受信メールをTrekMailでホストするか、顧客のプロバイダーに残して送信専用ドメインにするかを選択 |
list_forwarding_addresses |
ドメイン上のメールボックスを持たない転送アドレスを一覧表示 |
get_forwarding_address_log |
一つのアドレスへの最近のメールが、転送前に配信、保留、拒否、またはスパムとしてブロックされた結果を確認 |
create_forwarding_address |
転送アドレスを作成(メールボックスなし、保存なし)(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
update_forwarding_address |
受信者を置換、またはアドレスを一時停止/再開(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
delete_forwarding_address |
転送アドレスを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
retry_domain_dkim |
DKIMキーのプロビジョニングを再試行 |
update_domain_note |
ドメインの管理者メモを更新 |
get_domain_signature |
ドメインごとのメール署名設定を確認 |
update_domain_signature |
ドメインごとのメール署名を設定(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
bulk_add_domains |
一回の呼び出しで最大20ドメインを追加 |
プランごとの動作、応答状態、安全な解除、受信専用ルーティング規則については、APIとMCPによるドメインエイリアスを参照してください。
White Labelツール(オペレーショントークン)
white_labelツールセットには20個のツールが含まれ、アカウントの権利、現在のメンバーシップ、認証情報のスコープで許可される場合だけ表示されます。ブランド設定はドメインごとに行い、残りのツールはセットアップ、クライアント、チームアクセス、アクティビティを管理します。書き込みには有効なWhite Labelが必要です。解約猶予期間中は所有者だけが読み取りツールを保持します。
| ツール | 説明 |
|---|---|
get_domain_branding |
ブランド状態を確認: モード、アドオン状態、ブランド項目、メールゾーン状態、ホスト、作成するdns_records |
set_domain_branding |
ブランドを部分マージ更新: モード、名前、色、ダッシュボード/Webメール/メールゾーンの切り替えとラベル、サポート/送信者、スコープ |
set_domain_brand_logo |
Base64ロゴをlight、dark、faviconスロットにアップロード(PNG/JPG、faviconはICO、≤1 MB、SVG不可) |
verify_domain_branding_dns |
有効なブランドホストのDNS検証をキューに登録 |
create_branding_preview |
ブランド体験の72時間有効なプレビューURLを作成 |
remove_domain_brand_logo |
ロゴスロットを削除 |
remove_domain_branding |
ドメインまたはアカウント全体のブランド設定を解除 |
get_white_label |
権利、アカウントブランド、設定の進行状況、到達可能なドメイン状態を確認 |
get_white_label_access_catalog |
呼び出し元が付与できる役割、権限、ドメインを確認 |
list_white_label_members |
クライアント、チームメンバー、招待を検索または絞り込み |
get_white_label_member |
メンバー、有効な権限、許可される次の操作を確認 |
invite_white_label_member |
クライアントまたはチームメンバーを招待。ローカルstdioでは送信の有効化も必要 |
update_white_label_member |
役割、ドメイン、カスタム権限、メモを変更 |
suspend_white_label_member |
アクセスを停止し、メンバーの認証情報を取り消す |
resume_white_label_member |
古い認証情報を復活させずにメンバーシップを再開 |
resend_white_label_invitation |
保留中の招待を置き換えてメール送信。ローカルstdioでは送信の有効化も必要 |
remove_white_label_member |
confirm_remove=trueの後にアクセスを削除 |
restore_white_label_member |
古い認証情報を復活させずにメンバーシップを復元 |
list_white_label_activity |
White Labelアカウントのアクティビティを確認 |
get_white_label_member_activity |
メンバーの操作とサインインを確認。アクティビティとメンバーの読み取りスコープが必要 |
エージェントはブランド設定を最初から最後まで実行できます。ブランドを設定し、返されたdns_recordsをコピーしてapply_cloudflare_dnsで公開し、検証して状態を確認します。アクセスを変更する呼び出しは、トークンがより広いスコープを要求していても、呼び出し元の有効なメンバーシップとドメイン境界によって制限されます。White Labelブランド設定のAPIおよびMCPガイドとAPIおよびMCPでWhite Labelチームを管理も参照してください。
DNSツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
get_dns_requirements |
ドメインに必要なDNSレコードを取得 |
dns_recheck |
DNS検証を開始(確認IDを返す) |
get_dns_check |
DNS確認結果を取得 |
メールボックスツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
list_mailboxes |
オプションのフィルターでメールボックスを一覧表示 |
get_mailbox |
特定のメールボックスの詳細を取得 |
get_mail_client_setup |
通常メンバーのメールボックスについて、パスワード不要のIMAP/SMTP設定、安全なDAV URLと準備状態、実際の送信準備状態、ローカライズ済みアプリガイド、委任された共有メールボックスフォルダを取得 |
get_apple_mail_profile |
パスワード不要のApple MailプロファイルをBase64ファイルとして生成 |
create_mailbox_generated_password |
自動生成パスワードでメールボックスを作成(オプションのstorage_allocation_mbでアカウントプールから専用ストレージを確保) |
change_mailbox_password |
メールボックスのパスワードを変更 |
update_mailbox |
表示名、スレッド表示、メールボックスのDriveアクセスレベルを更新 |
set_mailboxes_drive_access |
リスト、ドメイン、またはアカウント全体を指定し、複数メールボックスのDriveアクセスを一括設定 |
update_mailbox_note |
メールボックスの管理者メモを更新 |
suspend_mailbox_login |
メールの受信を続けたままメールボックスへのサインインを停止(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
resume_mailbox_login |
サインイン停止を解除。取り消されたデバイスパスワードは復元されない |
set_mailboxes_login_access |
複数のメールボックス、明示的なリスト、ドメイン全体、またはすべてを対象にサインインを停止または復元 |
pause_mailbox |
配信を含めてメールボックスを完全に無効化し、送信者へメールを返す。サインインだけを止めるにはsuspend_mailbox_loginを使用 |
resume_mailbox |
一時停止したメールボックスを再有効化 |
enable_imap |
メールボックスのIMAPアクセスを有効化(Message APIに必要) |
create_invite |
受信者に設定招待を送信(オプションのstorage_allocation_mbで、受信者が承諾時に引き継ぐ専用ストレージを事前割り当て) |
create_invites_bulk |
一回の呼び出しで最大100件の招待を送信(項目ごとのstorage_allocation_mbに対応) |
bulk_create_mailboxes |
一回の呼び出しで最大100個のメールボックスを作成(項目ごとのstorage_allocation_mbに対応) |
get_forwarding |
メールボックスの転送設定を取得 |
set_forwarding |
転送規則を設定 |
共有メールボックスツール(オペレーショントークン)
共有メールボックスは、メンバーが自分の通常メールボックスアカウントからWebメールで開くチーム受信箱(support@、sales@)です。有効な場合は委任されたネイティブIMAP/SMTPアクセスも使用できます。直接のパスワードログインはありません。アクセスは一律で全員が読み取れ、can_sendだけを切り替えられます(返信可能または読み取り専用)。メンバーの役割はありません。
| ツール | 説明 |
|---|---|
list_shared_mailbox_members |
Webメールと委任されたネイティブIMAPで共有メールボックスにアクセスできるユーザーを一覧表示(各項目: member_mailbox_id、email、can_read、can_send) |
add_shared_mailbox_member |
Webメール/ネイティブアクセスを追加。can_sendのデフォルトはtrue(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
update_shared_mailbox_member |
読み取りアクセスを削除せずにWebメール/ネイティブのSend-asアクセス(can_send)を切り替え(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
remove_shared_mailbox_member |
Webメール/ネイティブアクセスを取り消す。共有メールボックスには常に少なくとも一人のメンバーが残る(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
共有メールボックスのライフサイクル(オペレーショントークン)
| ツール | 説明 |
|---|---|
create_shared_mailbox |
ドメイン、ローカル部、表示名、メンバーメールボックスIDのリストから新しい共有メールボックスを作成(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
convert_mailbox_to_shared |
既存のメールボックスを共有に変更(古いパスワードを変更してサインイン不能にする)(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
convert_shared_mailbox_to_regular |
共有メールボックスを通常に戻し、メンバーのWebメール/ネイティブアクセスを取り消して新しいサインインパスワードを設定(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
三つのライフサイクルツールと三つのメンバー書き込みツールはアクセスを変更します。ローカルホストのstdio管理者は、これらの提供前にTREKMAIL_ALLOW_DESTRUCTIVE=trueを必須にできます。list_shared_mailbox_membersは読み取り専用で、常に利用できます。
作成、変換、メンバー変更の後、通常メンバーのメールボックスIDを指定してget_mail_client_setupを呼び出します。shared_mailboxes.items[]を確認し、native_access_ready=trueになるまで待ち、送信を設定する前にsend_as_readyを確認してください。応答には受信箱/送信済み/アーカイブ/迷惑メールの正確なパスと操作フラグが含まれます。SMTPは共有の送信済みコピーを保存しません。権限の削除、権限の更新、変換で再試行可能なnative_access_sync_failedが返された場合、サービスが意図的に以前の状態を維持したことを示します。
Sieveツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
get_sieve_script |
メールボックスの未加工Sieveスクリプトを取得 |
upload_sieve_script |
メールボックスに未加工Sieveスクリプトをアップロード |
削除ツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
create_delete_intent |
ステップ1: 有効期限付きの削除意思を作成 |
confirm_delete_intent |
ステップ2: 削除を確認し、メールボックスを「最近削除した項目」に移動 |
移行ツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
test_migration_connection |
IMAP認証情報を検証し、件数付きで移行元フォルダを検出 |
list_migrations |
オプションのステータス/メールボックスフィルターで移行を一覧表示 |
get_migration |
フォルダごとの内訳を含む詳細な移行状態を取得 |
start_migration |
新しいメール移行を開始(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_start) |
cancel_migration |
実行中の移行をキャンセル(常に利用できる安全操作、confirm_cancelが必要) |
retry_migration |
失敗またはキャンセルした移行を再試行(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_retry) |
delete_migration |
完了/失敗した移行レコードを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_delete) |
preview_bulk_migration |
一括移行バッチを検証してプレビュー(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION) |
start_bulk_migration |
一括移行バッチを開始(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_start) |
list_bulk_migrations |
オプションのステータスフィルターで一括移行バッチを一覧表示 |
get_bulk_migration |
一括移行バッチの詳細を取得 |
cancel_bulk_migration |
実行中の一括バッチをキャンセル(confirm_cancelが必要) |
retry_bulk_migration |
バッチ内の失敗ジョブを再試行(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_retry) |
resume_bulk_migration |
一時停止したバッチを再開(confirm_resumeが必要) |
delete_bulk_migration |
終了した一括移行バッチを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION + confirm_delete) |
update_bulk_migration_job_password |
失敗ジョブの移行元パスワードを更新(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_MIGRATION) |
チケットツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
list_tickets |
オプションのフィルターでサポートチケットを一覧表示 |
get_ticket |
チケットの詳細を取得 |
get_ticket_messages |
チケットスレッド内のメッセージを取得 |
create_ticket |
新しいサポートチケットを作成 |
reply_to_ticket |
既存のチケットに返信 |
close_ticket |
チケットを閉じる |
SMTP/ドメインルーティングツール(オペレーショントークン)
SMTPはドメインごとに設定します。各ドメインは、管理型プラットフォーム送信または保存済みSMTPプロファイル(独自プロバイダーで、複数ドメインに再利用可能)を指定し、アカウント全体で一つのデフォルトが新規ドメインの初期設定を決めます。
| ツール | 説明 |
|---|---|
get_domain_smtp |
ドメインのSMTPルート(smtp_modeとeffective_smtp_mode。後者はinheritをアカウントのデフォルトに解決)およびプロファイルを表示 |
set_domain_smtp |
ドメインのルートをplatform、profile(プロファイルID付き)、not_configured、inherit(アカウントのデフォルトに即時追従)のいずれかに設定。set_account_defaultとapply_to_allの切り替えに対応(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
list_domain_smtp_profiles |
アカウントに保存されたSMTPプロファイルを一覧表示 |
get_domain_smtp_profile_usage |
一つのプロファイルを使用する正確なドメインとSend Asアドレスを認証情報なしで表示 |
create_domain_smtp_profile |
プロファイルを作成し、このドメインで使用(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
update_domain_smtp_profile |
プロファイルを更新し、使用する全ドメインに反映(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
delete_domain_smtp_profile |
プロファイルを削除。使用中のドメインはアカウントのデフォルトに再割り当て(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
test_domain_smtp |
ルートの非同期SMTPテストを開始(ジョブIDを返す)(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
get_domain_smtp_test_status |
ドメインSMTPテストジョブをポーリング |
get_account_smtp_default |
アカウント全体のデフォルトルート(default_smtp_mode、プラン基準のeffective_default_smtp_mode、プロファイル)を表示 |
set_account_smtp_default |
アカウント全体のデフォルトをplatform、profile、not_configuredのいずれかに設定し、新規ドメインの初期設定を決定。set_domain_smtpのinheritモードと組み合わせると、ドメインが即時追従(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
上記の書き込みおよびテストツールは設定を変更するか接続テストを実行します。ローカルホストのstdio管理者は、これらの提供前にTREKMAIL_ALLOW_DESTRUCTIVE=trueを必須にできます。get_domain_smtp、list_domain_smtp_profiles、get_domain_smtp_test_status、get_account_smtp_defaultは読み取り専用で常に利用できます。
従来のSMTPツール(非推奨)
次のアカウント単位のツールは後方互換性のために残されていますが、ドメインごとのルーティングは制御しません。代わりに上記のドメインルーティングツールを使用してください。
| ツール | 説明 |
|---|---|
get_smtp_config |
(非推奨)従来のアカウント単位SMTPモードと接続詳細を表示 |
update_smtp_config |
(非推奨)従来のアカウント単位SMTP設定を更新 |
delete_smtp_connection |
カスタムSMTP接続を削除 |
test_smtp |
非同期SMTP接続テストを開始(ジョブIDを返す) |
get_smtp_test_status |
SMTPテスト結果をポーリング |
スパム指標ツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
get_spam_metrics |
ドメインの日次スパム保護指標を取得(受信、検出したスパム、拒否、正常) |
get_spam_summary |
ドメインの集計スパム保護概要を取得(スパム率、状態、発動上位ルール) |
アカウントツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
get_account |
アカウント情報、プラン、上限、使用量を表示 |
get_billing_status |
請求状態とサブスクリプション詳細を表示 |
list_invoices |
請求書履歴を一覧表示 |
メッセージトークン管理(オペレーショントークン)
| ツール | 説明 |
|---|---|
create_message_token |
メールボックスのメッセージAPIトークンを作成(平文トークンを一度だけ返す) |
list_message_tokens |
メールボックスの全メッセージトークンを一覧表示 |
revoke_message_token |
メッセージトークンを取り消す(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
メッセージツール(メッセージトークン)
メッセージトークンは、接続済み外部アカウントを含むWebメールの全機能を扱う62個のツールを有効にします。ツールは機能領域ごとに整理されています。
ホスト型OAuthとローカルstdioでは、メールボックスの識別方法が異なります。ホスト型HTTP MCPでは、すべてのメッセージツールのスキーマに必須のmailbox_idがあり、サーバーはそれを使って対象メールボックス用の短期トークンを発行します。ローカルstdio MCPでは、TREKMAIL_MESSAGE_TOKENがすでに一つのメールボックスに紐付いているため、同じツールはmailbox_idを受け付けません。接続済み受信箱は二つ目の選択階層です。ホスト型MCPではexternal_account_idをmailbox_idに加えて、stdioでは紐付いたメッセージトークンに加えて指定します。
62個のメッセージツールのうち七つは接続済みアカウントを、五つはFrom IDと返信ポリシーを管理します。エージェントが接続済みGmail受信箱を読みながら、ドメインルートまたは保存済みSMTPプロファイルを通じて認証済みビジネスアドレスから送信するGmail形式のワークフローでは、両方の機能群を使用します。APIとMCPによるSend Asアドレスも参照してください。
基本メッセージ
| ツール | 説明 |
|---|---|
list_messages |
カーソルページネーションでフォルダ内のメッセージを一覧表示 |
read_message |
本文全体とインライン添付を含む一つのメッセージを取得 |
send_message |
メールボックスからメールを送信(二重の安全ゲートが必要) |
delete_message |
メッセージを完全削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
move_message |
メッセージを別のIMAPフォルダへ移動 |
update_message_flags |
メッセージを既読/未読、スター付き/なしに変更 |
get_raw_message |
メッセージの完全なRFC822未加工ソースをダウンロード |
メールボックスの設定 → プロフィールでデフォルトCCまたはデフォルトBCCが設定されている場合、Webアプリで作成したメールと同様に、send_messageとschedule_messageの送信内容へ追加されます。すでにメッセージに含まれるアドレスは重複して追加されません。一つのメッセージだけで無効にするにはapply_default_recipients: falseを渡します。SMTP経由でデスクトップまたはスマートフォンのメールクライアントから送信したメールはAPIを通らないため、この設定の対象外です。
| report_spam | メッセージをスパムとして報告し、迷惑メールへ移動してフィルターを学習 |
| report_ham | 迷惑メール内のメッセージをスパムではないと指定し、受信箱へ移動してフィルターを学習 |
| bulk_action | 最大50件のメッセージに操作(既読、スター、削除、移動、スパム)を一括適用 |
フォルダ
| ツール | 説明 |
|---|---|
list_folders |
メールボックスの全IMAPフォルダを一覧表示 |
create_folder |
新しいIMAPフォルダを作成 |
rename_folder |
既存フォルダの名前を変更 |
delete_folder |
末端フォルダとそのメッセージを削除。子フォルダは先に明示的に削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
empty_folder |
ゴミ箱または迷惑メールの全メッセージを完全削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
添付ファイル
| ツール | 説明 |
|---|---|
download_attachment |
インデックスを指定して一つの添付をダウンロードし、Base64コンテンツを返す |
download_all_attachments |
メッセージの全添付をBase64 ZIPとしてダウンロード |
下書き
| ツール | 説明 |
|---|---|
save_draft |
新しい下書きを保存し、そのuid + uidvalidity IDを返す |
update_draft |
下書きのuidと必須のuidvalidityの両方を使って置換 |
どちらも下書きのuidとuidvalidityを返します。この組を一緒に保持してください。update_draftにはエポックが必要なので、下書きフォルダの再作成後に、古く再利用されたUIDが別のメッセージを削除することはありません。list_messagesで見つけた下書きは、まずread_messageで開いて現在のuidvalidityを取得します。更新時には新しい組が返され、古いUIDは機能しなくなります。UIDPLUSのないサーバーでは、新しい下書きが保存されても両方の値がnullになる場合があります。更新前に下書きフォルダを再読み込みして下書きを開いてください。
どちらもオプションのidempotency_keyを受け付けます。省略すると各呼び出しが新規として扱われるため、同じ下書きを二度保存すると二つの下書きができます。すでに完了した可能性のある呼び出しを再試行するときは同じキーを渡すと、重複ではなく最初の結果が返ります。
予約送信
| ツール | 説明 |
|---|---|
schedule_message |
将来の配信日時にメッセージを予約(TREKMAIL_ALLOW_SENDING + confirm_sendが必要。タイムゾーンのない日時にはオプションのIANA timezoneを指定可能) |
list_scheduled |
保留中の予約メッセージを一覧表示。すべてのページを取得するにはpagination.next_cursorをたどる |
reschedule_message |
保留中の予約メッセージの時刻をその場で変更(再送信なし。一括変更で送信レート制限を消費しないよう、より軽いmessages:read制限を使用) |
cancel_scheduled |
保留中の予約メッセージをキャンセル(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
連絡先
| ツール | 説明 |
|---|---|
list_contacts |
オプションの検索フィルターで連絡先を一覧表示 |
create_contact |
連絡先を作成し、メールアドレスが存在する場合は更新 |
update_contact |
連絡先の項目を更新 |
delete_contact |
連絡先を削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
import_contacts |
Base64エンコードされたCSVまたはVCFコンテンツから連絡先をインポート |
export_contacts |
全連絡先をCSVまたはVCFとしてエクスポートし、Base64コンテンツを返す |
連絡先グループ
| ツール | 説明 |
|---|---|
create_contact_group |
名前付き連絡先グループを作成 |
update_contact_group |
連絡先グループの名前を変更 |
delete_contact_group |
連絡先グループを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
add_contact_group_members |
IDを指定してグループに連絡先を追加 |
remove_contact_group_members |
グループから連絡先を削除 |
カレンダー
| ツール | 説明 |
|---|---|
list_calendar_events |
指定期間のカレンダー予定を一覧表示 |
create_calendar_event |
タイトル、開始/終了、場所、メモを含む新しい予定を作成 |
update_calendar_event |
既存の予定を更新 |
delete_calendar_event |
カレンダー予定を削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
作成補助
これらのツールは返信または転送用のデータを準備します。送信は行いません。返されたデータをsend_messageまたはsave_draftへ直接渡してください。
| ツール | 説明 |
|---|---|
prepare_reply |
返信を事前入力(宛先、Re:付き件名、引用本文、In-Reply-Toヘッダー) |
prepare_reply_all |
全員への返信を事前入力(元の全受信者から宛先 + Cc) |
prepare_forward |
転送を事前入力(Fwd:付き件名、転送本文、元の添付メタデータ) |
ID(送信元アドレス)
| ツール | 説明 |
|---|---|
list_identities |
ソース固有のFromアドレス、Send Asルート、返信ポリシーを一覧表示。接続済み受信箱にはexternal_account_idを渡す |
create_identity |
管理対象IDを設定するか、一つの接続済み受信箱に紐付くSend As IDを作成 |
update_identity |
IDの名前、返信先、署名、Send Asルートを更新 |
delete_identity |
Send As IDを削除。管理対象のメールボックス/エイリアスIDは引き続き認証済み(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
set_reply_from_policy |
メッセージを受信したアドレスから返信するか、常にデフォルトを使用(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
テンプレート
| ツール | 説明 |
|---|---|
list_templates |
保存済みの全メッセージテンプレートを一覧表示 |
create_template |
名前、件名、HTML本文を含むテンプレートを作成 |
update_template |
テンプレートを更新 |
delete_template |
テンプレートを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
ブロック済み送信者
| ツール | 説明 |
|---|---|
list_blocked_senders |
ブロック済みの全メールアドレスとドメインを一覧表示 |
block_sender |
特定のメールアドレスまたはドメイン全体(例: @spam.com)をブロック |
unblock_sender |
ブロックを解除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVE) |
メール検証ツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
verify_email |
一つのメールアドレスを検証 |
verify_email_bulk |
一括検証ジョブを送信 |
verify_job_status |
ジョブの進行状況と結果を確認 |
verify_job_download |
ジョブ結果をCSVでダウンロード |
verify_credits |
残りのクレジット残高を確認 |
verify_list_jobs |
全検証ジョブを一覧表示 |
verify_cancel_job |
実行中のジョブをキャンセルし、未処理分のクレジットを返還 |
verify_delete_job |
ジョブと全結果を完全削除(GDPR) |
メール検証ツールはNanoを含むすべてのプランで利用できます。唯一の制限はクレジット残高です。
Cloudflareツール(オペレーショントークン)
| ツール | 説明 |
|---|---|
validate_cloudflare_token |
Cloudflare APIトークンを検証 |
list_cloudflare_zones |
CloudflareトークンでアクセスできるDNSゾーンを一覧表示 |
connect_cloudflare_domains |
ドメインをCloudflareアカウントに接続 |
preview_cloudflare_dns |
Cloudflare経由で適用されるDNS変更をプレビュー。オプションのincluded_records許可リスト({ domain_id: [record_ids] })を渡すと、特定のレコードだけをプレビュー |
apply_cloudflare_dns |
Cloudflare管理ゾーンにDNS変更を適用。included_recordsを使用して選択したレコードだけを書き込み、残りをスキップ(例: MXを先に、DKIMを後で)。省略するとすべてを適用。confirmed_conflictsを使って、プレビューで競合と判定されたレコードの置換を承認 |
list_cloudflare_tokens |
保存済みCloudflareトークンを一覧表示 |
delete_cloudflare_token |
保存済みCloudflareトークンを削除(セルフホストstdioのローカル制御: TREKMAIL_ALLOW_DESTRUCTIVEが必要) |
CloudflareツールはProおよびAgencyプランで利用できます。
セルフホストstdioの安全制御
stdio MCPサーバーを自分で実行する場合、TREKMAIL_ALLOW_DESTRUCTIVEはローカルプロセスが削除やその他の書き込み操作を許可するかどうかを制御します。エージェントにメールボックスの削除を任せられる場合だけtrueに設定してください。この設定は、ホスト型TrekMailでの機能の提供状況を変更しません。
破壊的操作を有効にしても、削除には必ず二つの手順が必要で、エージェントはconfirm: trueを明示的に設定する必要があります。詳しくは安全機構と削除意思を参照してください。
送信の安全ゲート
send_messageとschedule_messageには二つの独立した安全ゲートがあり、両方を通過する必要があります。
- 環境ゲート: MCPサーバーの起動時に
TREKMAIL_ALLOW_SENDING=trueを設定する必要があります。 - 呼び出しごとのゲート: エージェントは毎回の呼び出しで
confirm_send=trueをパラメーターとして渡す必要があります。
この二重ゲート設計により、セルフホストプロセスからの誤送信を防ぎます。エージェントがメッセージを読むだけの場合はTREKMAIL_ALLOW_SENDING=falseに設定してください。list_scheduledはこの制御なしで動作します。この制御は予約メッセージの作成または送信だけに適用されます。
移行の安全ゲート
移行書き込みツール(start_migration、retry_migration、delete_migration、delete_bulk_migration、update_bulk_migration_job_password、test_migration_connection、preview_bulk_migration、start_bulk_migration、retry_bulk_migration)には二つの独立した安全ゲートがあります。
- 環境ゲート: MCPサーバーの起動時に
TREKMAIL_ALLOW_MIGRATION=trueを設定する必要があります。 - 呼び出しごとのゲート: 各ツールには固有の確認パラメーター(
confirm_start=true、confirm_retry=true、confirm_delete=true)が必要です。
cancel_migration、cancel_bulk_migration、resume_bulk_migrationは安全操作または再開操作であるため、セルフホスト環境の制御に関係なく常に利用できます。ただし、呼び出しごとの確認パラメーターは引き続き必要です。
読み取り専用の移行ツール(list_migrations、get_migration、list_bulk_migrations、get_bulk_migration)はゲートなしで動作します。
簡単な解決方法
- エージェントが接続できない:
build/index.jsのパスが正しいことと、クローン後にnpm run buildを実行したことを確認してください。 - 「Missing bearer token」エラー:
TREKMAIL_API_TOKENまたはTREKMAIL_MESSAGE_TOKENの少なくとも一方が設定されていることを確認してください。 - 読み取り専用ツールは動作するが書き込みに失敗する: トークンがStarterプランです。StarterではDriveの全機能で書き込みが動作します。それ以外の書き込み、メールボックスのプロビジョニング、移行の開始、チケットへの返信には、Proへアップグレードするかダッシュボードを使用してください。
- セルフホストstdioで削除ツールがエラーを返す: そのMCPプロセスの環境で
TREKMAIL_ALLOW_DESTRUCTIVE=trueを設定してください。これはメッセージ、フォルダ、連絡先、カレンダー、ID、テンプレート、ブロック済み送信者、予約メッセージなどの削除および書き込み操作に適用されます。 - セルフホストstdioの送信ツールが「Sending is disabled」を返す: そのMCPプロセスの環境で
TREKMAIL_ALLOW_SENDING=trueを設定してください。 - 送信ツールが「Send not confirmed」を返す: エージェントは
confirm_send=trueをsend_messageまたはschedule_messageの各呼び出しで渡す必要があります。 - メッセージツールが表示されない:
TREKMAIL_MESSAGE_TOKENに有効なtm_msg_トークンが設定されていることを確認してください。 - セルフホストstdioの移行書き込みツールがエラーを返す: そのMCPプロセスの環境で
TREKMAIL_ALLOW_MIGRATION=trueを設定してください。 - 移行開始時の503: サーバーが移行処理の上限に達しています。数分後に再試行してください。
- 添付ファイルをダウンロードできない: 添付はBase64で返されます。最大25 MBの大きな添付には数秒かかる場合があります。
download_all_attachmentsは全添付をBase64エンコードしたZIPとして返します。 - 更新後に下書きが消えた:
update_draftは古い下書きを削除して置換を追加するため、下書きには新しいUID IDが割り当てられます。以降の操作には応答のuidとuidvalidityを両方使用してください。渡した組は置換後の下書きを識別しません。 - 指定していない場所に全メッセージのコピーが届く: メールボックスの設定 → プロフィールでデフォルトCCまたはデフォルトBCCが指定されています。API経由を含め、このメールボックスからの送信に適用されます。そこで解除するか、
apply_default_recipients: falseを渡して一つのメッセージだけ無効にしてください。 - カレンダー予定が見つからない: 予定は特定のメールボックスに限定されます。メッセージトークンが正しいメールボックス用に発行されたことを確認してください。
関連記事
ワークフローの続きとなる関連ガイドに移動します。