Contents
OpenClaw 本体と secure‑gmail MCP プラグインの導入手順
OpenClaw と secure‑gmail MCP(Modular Connection Plugin)を組み合わせることで、プログラミング不要で Gmail を活用した業務自動化が可能になります。このセクションでは、公式バイナリまたは Docker イメージの取得方法から、MCP プラグインのインストール手順までを順番に解説します。実際に手元の環境で動かすことを前提としているため、各コマンドの意味や注意点も併せて説明しています。
1. OpenClaw 本体のインストール
OpenClaw の最新版は公式サイト(https://openclaw.io/download)から提供されています。Linux x86_64 向けの単一バイナリと、Docker Hub に公開されている公式イメージが利用可能です。
1‑1. バイナリ版のインストール手順
|
1 2 3 4 5 6 7 8 |
# 公式サイトから最新版アーカイブを取得 curl -L https://download.openclaw.io/releases/latest/openclaw-linux-amd64.tar.gz \ -o openclaw.tar.gz # アーカイブを展開し、実行権限を付与 tar xzf openclaw.tar.gz chmod +x openclaw/openclaw |
1‑2. バイナリ版の起動例
|
1 2 3 4 5 |
# デフォルトポート 8080 でバックグラウンド実行 ./openclaw/openclaw & # 起動確認(ブラウザで http://localhost:8080 にアクセス) |
1‑3. Docker 版のインストール手順
|
1 2 3 4 5 6 |
docker pull openclaw/openclaw:latest docker run -d \ --name=openclaw \ -p 8080:8080 \ openclaw/openclaw:latest |
Docker コンテナは軽量で環境依存が少ないため、開発・検証の繰り返しに適しています。
参考:OpenClaw 公式ドキュメント – インストールガイド
2. secure‑gmail MCP プラグインの追加
MCP は OpenClaw の機能拡張ポイントで、プラグイン単位で外部サービスとの連携を管理します。secure‑gmail は Gmail API を安全に呼び出すための公式プラグインです。
|
1 2 |
openclaw mcp install secure-gmail |
インストールが完了するとローカル MCP リポジトリに secure‑gmail が登録され、次の設定コマンドが使用できるようになります。
備考:プラグインは自動的に最新バージョンへアップデート可能です。
bash
openclaw mcp update secure-gmail
Gmail サーバー登録と OAuth2 認証設定
Gmail と安全に連携するためには、Google Cloud Console で取得した OAuth2 クレデンシャル を OpenClaw に登録します。この章では、最小権限のスコープを選択しつつ、シークレット管理のベストプラクティスも合わせて解説します。
1. MCP に Gmail サーバー情報を登録
まずは SMTP 接続情報だけを OpenClaw に教えます。認証情報は後述の対話コマンドで別途設定します。
|
1 2 3 4 5 6 |
openclaw mcp add gmail \ --name my-gmail \ --host smtp.gmail.com \ --port 587 \ --tls true |
--nameはローカルで識別しやすい任意の文字列です。- TLS が必須なので
--tls trueを忘れずに指定してください。
2. Google Cloud Console で OAuth クライアントを作成
- プロジェクト作成(または既存プロジェクト選択) → 左メニューの「OAuth 同意画面」→「外部」を選びます。
- 必要項目(アプリ名、サポートメール等)を入力し、スコープに以下だけを追加します。
| スコープ | 用途 |
|---|---|
https://www.googleapis.com/auth/gmail.send |
メール送信のみ |
https://www.googleapis.com/auth/gmail.readonly(分類が必要な場合) |
受信メールの読み取り(書き込みは不可) |
ポイント:全メールアクセス (
https://mail.google.com/) は最小権限の原則に反するため、上記スコープで十分です。
- 「認証情報」→「認証情報を作成」→「OAuth クライアント ID」を選択し、Web アプリケーション を指定。
- リダイレクト URI に OpenClaw のエンドポイントを設定します(例:
https://openclaw.example.com/mcp/oauth2/callback)。 - 作成後に表示される クライアント ID と クライアントシークレット をメモしてください。
3. クレデンシャル情報を安全に保存する方法
| 保存先 | 利点 |
|---|---|
環境変数 (OPENCLAW_GMAIL_CLIENT_ID、..._SECRET) |
デプロイ時の設定が簡単。コンテナや CI/CD パイプラインで推奨。 |
Docker Secret(Docker Swarm / Kubernetes の Secret) |
コンテナ内部に平文ファイルを残さず、アクセス制御が可能。 |
| クラウドシークレットマネージャー(GCP Secret Manager, AWS Secrets Manager 等) | ローテーションや監査ログが自動で提供され、最も安全。 |
実装例:Docker Compose で環境変数を使用
|
1 2 3 4 5 6 7 8 9 10 |
version: "3.8" services: openclaw: image: openclaw/openclaw:latest ports: - "8080:8080" environment: OPENCLAW_GMAIL_CLIENT_ID: "${GMAIL_CLIENT_ID}" OPENCLAW_GMAIL_CLIENT_SECRET: "${GMAIL_CLIENT_SECRET}" |
環境変数は .env ファイルや CI のシークレットストアから注入します。決してリポジトリに平文で保存しないでください。
4. OpenClaw にクレデンシャルを登録
|
1 2 |
openclaw mcp configure gmail --name my-gmail |
対話形式で以下が求められますので、上記で安全に保管したクライアント ID とシークレットを入力します。
Client ID:Client Secret:Redirect URL:(自動表示されることが多い)
設定が完了すると、OpenClaw が OAuth2 フローを内部で管理し、アクセストークンとリフレッシュトークンを安全に保管します(デフォルトでは暗号化されたローカル DB に保存されます)。
secure‑gmail スキルの有効化と主要機能
secure‑gmail がインストールされたら、実際にメールの分類・下書き生成・自動送信を行うスキルとして有効化します。この章では有効化手順と、現在サポートされている AI モデル(例:Claude 3.5 Sonnet、OpenAI GPT‑4o)との連携方法を示します。
1. スキルの有効化コマンド
|
1 2 3 4 |
openclaw mcp enable secure-gmail --name my-gmail \ --label-default unprocessed \ --draft-prefix "[自動作成]" |
--label-default:分類できなかったメールに付与するラベル。--draft-prefix:下書き件名の先頭文字列。
有効化後は OpenClaw のビジュアルエディタ上で secure‑gmail アクションが利用可能になります。
2. メール分類・下書き生成フローの概要
- メール取得:Gmail API(
gmail.readonlyスコープ)から新着メッセージをポーリングし、本文とヘッダー情報をテキスト化。 - AI 解析:内部で Claude 3.5 Sonnet または GPT‑4o を呼び出し、以下の情報を抽出します。
- メールの意図(例:請求書、サポート依頼)
- 必要なラベル(自動的に Gmail ラベルへマッピング)
- 下書き作成:解析結果に基づいて
draft_emailアクションが実行され、件名は--draft-prefixが付与され、本文には要点サマリと返信案が自動挿入されます。
注意:AI への入力データは暗号化された一時領域に保存され、処理完了後すぐに削除されます。
3. 現行モデルの利用例(コードスニペット)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# OpenClaw フローエディタで設定できる YAML 表現(参考) steps: - id: fetch_mail type: gmail.poll config: label: "INBOX" - id: classify type: ai.analyze model: "claude-3.5-sonnet" prompt: | 以下のメール本文を読んで、適切なラベル(invoice, support, internal)と 簡潔な返信案を JSON 形式で返してください。 - id: draft type: gmail.draft_email config: to: "{{ fetch_mail.from }}" subject_prefix: "[自動作成]" body_template: "{{ classify.reply_text }}" |
このように、AI モデル名は 実際に提供されているもの を指定し、将来の未確定製品名は記載しないようにしています。
ノーコードで構築する自動メール送信フロー
業務シナリオとして「タスク作成 → メールドラフト生成 → 自動送信」の流れを例示します。OpenClaw のビジュアルエディタだけで完結でき、開発者以外のユーザーでも設定可能です。
1. フロー全体像と主要ノード
| ノード名 | 種類 | 主な役割 |
|---|---|---|
TaskCreated |
イベントトリガー | タスク管理システム(例:Jira, Asana)で新規タスクが作成されたことを検知 |
secure-gmail.draft_email |
アクション | 受信者、件名、テンプレート ID を元に下書きを生成 |
secure-gmail.send_email |
アクション | 下書きが完成したら即時送信または承認フローへ遷移 |
2. 各ノードの設定例
TaskCreated トリガー
- フィルタ:プロジェクト ID が
PROJ‑123、担当者がteam@example.comのみ対象 - 出力変数:
task.title,task.creator.email
draft_email アクション
|
1 2 3 4 |
to: "{{ task.creator.email }}" subject: "[自動作成] {{ task.title }} の進捗報告" template_id: "progress_report_v1" |
テンプレートは Gmail の「下書き」機能に登録しておくと、HTML 形式の本文を簡単に差し込めます。
send_email アクション
|
1 2 3 |
draft_id: "{{ draft.id }}" send_immediately: true # false にすると承認キューへ送ることも可能 |
3. 接続確認とテストメール送信
設定が完了したら、以下コマンドで Gmail 接続とフロー全体の動作検証を行います。
|
1 2 3 |
openclaw mcp test gmail --name my-gmail \ --send-test-email recipient@example.com |
- 成功すると
Connection successfulとテストメールが届く旨が表示されます。 - エラー時は詳細コードと推奨対処法(後述)を出力します。
ヒント:本番環境ではテスト用の Gmail アカウントを別途作成し、実運用アカウントへの影響を最小化してください。
エラーハンドリング・ログ確認とセキュリティベストプラクティス
自動化フローは常に稼働状態を監視し、障害が起きた際に速やかに復旧できる体制が必要です。この章では代表的なエラーコードと対処法、ログの取得方法、そしてトークン・シークレット管理のベストプラクティスをまとめます。
1. 主なエラーコードと推奨対処
| エラーコード | 発生条件 | 推奨対処 |
|---|---|---|
401 Unauthorized |
アクセストークン期限切れ、または要求したスコープが不足 | openclaw mcp refresh-token gmail でリフレッシュ、必要なスコープ (gmail.send / gmail.readonly) を再確認 |
SMTPConnectError |
SMTP サーバーへの接続失敗(ポート・TLS 設定ミス) | --host, --port, --tls の値を再チェック |
LabelNotFound |
指定した Gmail ラベルが存在しない | Gmail ラベル画面でラベル作成、または --label-default を既存のものに変更 |
InvalidRedirectURI |
Google Cloud Console に設定されたリダイレクト URL と実際のエンドポイントが不一致 | コンテナやプロキシ経由の場合、外部から見える URL(例:https://openclaw.example.com/...)を正しく登録 |
2. ログ取得コマンドと解析ポイント
|
1 2 3 |
# Gmail 関連の最新 200 行を表示 openclaw logs --service gmail --tail 200 |
出力サンプル:
|
1 2 3 |
2026-05-28T10:12:45Z INFO request_id=8f3c2a7b msg="Token refreshed successfully" 2026-05-28T10:13:02Z ERROR request_id=9d1e4f0c msg="SMTPConnectError: connection timed out" host=smtp.gmail.com port=587 |
- timestamp:問題発生時刻を特定。
- level:
ERRORが出たら即座に対処。 - request_id:サポート問い合わせ時に提示すると、ログ検索が容易になる。
3. トークン・シークレット管理のベストプラクティス
- 最小権限でスコープを限定
- メール送信のみなら
gmail.send。分類やラベル付与が必要な場合はgmail.readonlyを追加し、書き込み権限は付与しない。 - シークレットは暗号化されたストレージに保存
- Docker の
--secretオプション、Kubernetes のSecret, GCP Secret Manager 等を利用。平文ファイルやリポジトリへのコミットは絶対に避ける。 - 定期的なローテーション
- Refresh Token の有効期限(通常 6 ヶ月)に合わせて自動再認証ジョブを設定。例:Cron ジョブで
openclaw mcp refresh-token gmailを毎週実行し、失敗時はメール通知。
実装例:GCP Secret Manager + Cloud Scheduler
|
1 2 3 4 5 6 7 |
# Secret の作成(1回だけ実施) gcloud secrets create openclaw-gmail-client-id --data-file=client_id.txt gcloud secrets create openclaw-gmail-client-secret --data-file=client_secret.txt # Cloud Run コンテナ起動時に環境変数として注入 --set-secrets="OPENCLAW_GMAIL_CLIENT_ID=openclaw-gmail-client-id:latest,OPENCLAW_GMAIL_CLIENT_SECRET=openclaw-gmail-client-secret:latest" |
4. トラブルシューティングフロー
- エラーが出たらまずログを確認 →
request_idをメモ。 - スコープ不足の可能性 → Google Cloud Console の OAuth 同意画面で付与スコープを見直す。
- ネットワーク障害 → コンテナから外部へ TCP 587 が開いているか確認(
nc -zv smtp.gmail.com 587)。 - シークレット取得失敗 → 環境変数や Secret マネージャーのパスが正しいか再チェック。
まとめと次のアクション
- OpenClaw 本体と secure‑gmail のインストール:公式バイナリまたは Docker を利用し、
openclaw mcp install secure-gmailでプラグイン追加。 - Gmail サーバー登録 & OAuth2 設定:
openclaw mcp add gmailとopenclaw mcp configure gmailにより最小スコープ(gmail.send/gmail.readonly)を付与し、シークレットは環境変数またはクラウドシークレットで安全に管理。 - secure‑gmail スキルの有効化:
openclaw mcp enable secure-gmailでラベルや件名プレフィックスを設定し、Claude 3.5 Sonnet や GPT‑4o と連携したメール分類・下書き生成が可能。 - ノーコードフロー構築:タスク作成トリガー →
draft_emailアクション →send_emailの流れをビジュアルエディタで組むだけで、業務担当者はクリックだけで自動メール送信が実現。 - エラーハンドリング・ログ確認:代表的なエラーコードと対処法、
openclaw logs --service gmailによるリアルタイム監視を設定し、障害時の復旧時間を最小化。 - セキュリティベストプラクティス:最小権限スコープ、暗号化シークレット管理、定期的なトークンローテーションで情報漏洩リスクを低減。
これらの手順を踏むことで、中小企業から大規模組織まで、誰でも安全かつ効率的に AI 搭載メール自動化 を導入できます。まずは開発環境で一通テストメールを送信し、フロー全体が期待どおりに動くことを確認したうえで本番環境へ展開してください。
※ 本記事の情報は執筆時点(2026 年 5 月)に基づいています。Google の OAuth ポリシーや OpenClaw のバージョンが更新された場合は、公式ドキュメントをご確認ください。