OpenClaw を Microsoft Teams に接続し、社内の AI 社員として運用したい方へ。最速の方法は ZenClaw ダッシュボードの Microsoft Teams 連携ページの利用です。 MixerBox AI が提供するマネージドサービスは 9 秒でデプロイでき、Messaging endpoint URL がデフォルトで自動設定され、*.zenclaw.bot サブドメインと証明書にも自動対応しています——あとは Azure Portal で Bot を作成し、3 組のクレデンシャルを貼り付けるだけです。本記事では 2 つのパスをご紹介します。ZenClaw ダッシュボードの Microsoft Teams 連携ページ(クリックのみ)と、セルフホスト OpenClaw で Azure を一通り体験する完全フローです。
Teams 統合のアーキテクチャ:LINE や Telegram より複雑になる理由
Microsoft Teams は Webhook トークン方式ではなく、Azure Bot サービスと Microsoft Entra ID(旧 Azure AD)による ID 認証を採用しています。企業コンプライアンスと SSO に対応するための設計です。 構成要素は以下のとおり。
- Azure Bot — Azure Portal 上のリソース、Teams ↔ 自社サーバー間のメッセージ中継を担当
- Messaging endpoint — 自社サーバーの外部 HTTPS URL(
https://あなたのドメイン/api/messages) - App ID — Microsoft Entra ID 上に対応する application 識別子
- Client Secret — メッセージ送信元を検証するためのパスワード
- Tenant ID — 自社 Microsoft 365 テナントの ID
- Teams app manifest — ユーザーが Teams 内でこの bot を見つけてインストールできるようにする
公式ドキュメントは docs.microsoft.com/en-us/azure/bot-service を参照してください。LINE が Channel Secret と Access Token の 2 組で済むのに対し、Teams は 3 組の ID + Secret が必要なぶん、フローがやや長くなります。
推奨:ZenClaw ダッシュボードの Microsoft Teams 連携ページ(15 分)
ZenClaw は Messaging endpoint、ドメイン、HTTPS 証明書をすべてデフォルトで用意しています。あとは Azure Portal で Bot を作成し、3 組の ID を入力するだけです。 手順は以下のとおり。
- zenclaw.ai にログイン
- 「AI 社員を今すぐ雇用」をクリック → ダッシュボードで「新しい OpenClaw インストールを追加」をクリック → 9 秒待機
- Channels 欄で Microsoft Teams をクリック
- 上部の Messaging endpoint URL をコピー(ZenClaw が自動で
https://*.zenclaw.bot/api/messagesを発行) - portal.azure.com で Azure Bot を作成(Type of App は Single Tenant、Pricing tier は Free F0)
- Bot → Configuration → Messaging endpoint を貼り付け → Apply
- App ID(Microsoft App ID 欄)をコピー
- Client Secret を作成:Manage Password をクリックするか、Microsoft Entra ID → App registrations → 該当 App → Certificates & secrets → New client secret → Value をコピー
- Tenant ID を取得:Microsoft Entra ID → Overview
- ZenClaw ダッシュボードの Microsoft Teams 連携ページに戻り、App ID / Client Secret / Tenant ID を入力して接続ボタンをクリック
これで完了です。続いて Teams app を発行します(manifest は ZenClaw が生成可能、または Teams admin center でサイドロード)。
セルフホスト OpenClaw を Teams に接続:完全 7 ステップ
すでに稼働中の OpenClaw(参照:技術背景ゼロからの完全入門ガイド)、外部 HTTPS ドメイン、Azure サブスクリプションを持っていることが前提です。 完全な手順を順に実行します。
Step 1:Azure Bot を作成
portal.azure.com → 「Azure Bot」を検索 → Create と進みます。
- Bot handle:ユニークな名前を付ける
- Subscription / Resource group:自分のものを選択
- Pricing tier:Free (F0)
- Data residency:Global
- Type of App:Single Tenant(推奨。最もシンプルでコンプライアンス対応もしやすい)
- Creation type:Create new Microsoft App ID
Review + Create を押し、リソース準備完了まで待機します。
Step 2:Messaging endpoint を設定
Azure Bot → 左側の Configuration を開きます。
- Messaging endpoint:
https://あなたのドメイン/api/messagesを入力- HTTPS 必須
- 有効な証明書(Let’s Encrypt または正式な CA)
- OpenClaw がすでにこのパスを外部公開している必要あり
- Apply で保存
Step 3:App ID を取得
同じ Configuration ページの Microsoft App ID 列に表示されます。コピーして保管してください——これは Entra ID 上の App registration と等価です。
Step 4:Client Secret を作成
2 通りの方法があります。
方法 A:Configuration ページ → Manage Password(Entra ID に直接遷移)
方法 B:左側で Microsoft Entra ID を選択 → App registrations → 先ほどの App を選択 → Certificates & secrets → New client secret
- description を入力
- 有効期限を選択(6 か月以上を推奨、期限切れ時は更新が必要)
- 作成後はすぐに Value をコピー(一度しか表示されず、画面を更新すると見えなくなります)
Step 5:Tenant ID を取得
Microsoft Entra ID → Overview → Tenant ID(GUID)。コピーして保管してください。
Step 6:OpenClaw に入力
~/.openclaw/openclaw.json を編集するかダッシュボードを使い、channels.msteams に以下のように入力します。
{
"channels": {
"msteams": {
"appId": "App ID",
"appPassword": "Client Secret",
"tenantId": "Tenant ID"
}
}
}
続いて gateway(デフォルト port 18789)を再起動。公式 CLI 設定は docs.openclaw.ai/cli/config です。
Step 7:Teams app のサイドロード/発行
Teams の app manifest(App ID、bot 情報、アイコンを含む JSON ファイル)を作成します。.zip にパッケージ化し、次のいずれかで配布します。
- Teams admin center → Manage apps → Upload new app(組織全体向け)
- Teams クライアントの左側 Apps → Upload a custom app(個人/チーム向け)
完了後、Teams で bot との 1:1 チャットを開いてメッセージを送信し、OpenClaw gateway log に受信が記録されているか確認します。
よくあるハマりどころ
よくある詰まりどころは、Messaging endpoint が HTTPS でない/証明書が期限切れ、Client Secret の Value をコピーし忘れた、Single Tenant と Multi Tenant の選択を誤った、Teams app のサイドロードに失敗した、などです。 切り分けのポイントは以下のとおり。
- Bot を作成したのにメッセージに反応しない → Messaging endpoint URL は到達可能か?
curlで確認 - 証明書が無効 → Let’s Encrypt の自動更新を忘れずに
- Client Secret 検証失敗 → Value のコピーミス、あるいは期限切れ。再作成する
- Tenant ID が異なる → Entra ID Overview から再度コピー
- Teams で bot が見つからない → サイドロードに失敗している。Teams admin center のエラーメッセージを確認
~/.openclaw/が再起動で消える → Docker volume がマウントされていない。volume 設定消失の修復 を参照
加えて、企業ネットワークポリシーが Azure / Teams API をブロックする可能性にも注意しましょう。詳細は OpenClaw セキュリティハードニング 10 項目 を参照してください。
ZenClaw vs セルフホスト:時間コストの比較
ZenClaw が省けるのは Azure のステップそのものではなく(そこはどちらにしても必要)、Messaging endpoint のサーバー、ドメイン、HTTPS 証明書、そしてその後の OpenClaw 運用です。 比較は以下のとおり。
| 項目 | セルフホスト | ZenClaw ダッシュボードの Microsoft Teams 連携ページ |
|---|---|---|
| Azure Bot 作成 | 必要 | 必要(同じ Azure のステップ) |
| サーバー+ OpenClaw | 自分で構築 | ✅ 9 秒でデフォルト準備済み |
| Messaging endpoint URL | ドメインと TLS を自分で申請 | ✅ 自動で *.zenclaw.bot |
| HTTPS 証明書 | 自分で維持 | ✅ 自動更新 |
| アップグレード / CVE | 自分で追跡 | ✅ 自動 |
| 初回本番稼働までの時間 | 数日〜数週間 | ✅ 15〜20 分 |
選択権はお客さまにありますが、社内 Teams 上で AI 社員を使うだけが目的であれば、ZenClaw のほうが明らかにシンプルなパスです。料金は ZenClaw 料金ページ をご確認ください。