How to Connect OpenClaw to Microsoft Teams
Microsoft Teams integration requires navigating Azure Bot Service, Bot Framework, and Teams app manifests. This advanced guide walks you through registering an Azure Bot, creating a Teams app package, configuring OpenClaw for Bot Framework compliance, and deploying a production-ready Teams bot.
Why This Is Hard to Do Yourself
These are the common pitfalls that trip people up.
Azure Bot Service setup
Teams requires an Azure Bot registration, app service deployment, and Bot Framework authentication before your bot can send a single message
Teams app manifest complexity
The manifest.json file has strict schema requirements, icon dimensions, and capability declarations. One error blocks the entire install.
Bot Framework authentication
Teams uses Microsoft Identity for bot authentication. Token validation, tenant ID verification, and audience claims must all be correct.
Activity types and attachments
Teams uses Bot Framework's activity schema with unique message types, adaptive cards, and attachment formats that differ from other platforms
Admin approval requirements
Enterprise Teams tenants often require admin approval before users can install third-party apps
Step-by-Step Guide
Register an Azure Bot
# 1. Go to portal.azure.com
# 2. Create Resource โ Azure Bot
# 3. Set:
# - Bot handle: openclaw-ai
# - Pricing tier: F0 (free)
# - Microsoft App ID: Create new
# 4. Save:
# - Microsoft App ID
# - App Password (client secret)Warning: The App Password is shown only once. Save it immediately or you'll need to generate a new one.
Configure messaging endpoint
# In Azure Bot โ Configuration:
# Messaging endpoint: https://your-domain.com/api/messages
#
# This endpoint must:
# - Be publicly accessible over HTTPS
# - Respond to Bot Framework activity schema
# - Validate JWT tokens from MicrosoftCreate Teams app manifest
# manifest.json:
{
"$schema": "https://developer.microsoft.com/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
"manifestVersion": "1.16",
"version": "1.0.0",
"id": "YOUR_MICROSOFT_APP_ID",
"packageName": "com.openclaw.teams",
"developer": {
"name": "Your Company",
"websiteUrl": "https://yourcompany.com",
"privacyUrl": "https://yourcompany.com/privacy",
"termsOfUseUrl": "https://yourcompany.com/terms"
},
"name": {
"short": "OpenClaw AI",
"full": "OpenClaw AI Assistant"
},
"description": {
"short": "AI assistant for your team",
"full": "OpenClaw brings AI capabilities directly to Microsoft Teams."
},
"icons": {
"color": "color-192x192.png",
"outline": "outline-32x32.png"
},
"accentColor": "#FF4D4D",
"bots": [
{
"botId": "YOUR_MICROSOFT_APP_ID",
"scopes": ["personal", "team", "groupchat"],
"supportsFiles": true,
"isNotificationOnly": false,
"commandLists": [
{
"scopes": ["personal", "team", "groupchat"],
"commands": [
{
"title": "ask",
"description": "Ask a question"
},
{
"title": "help",
"description": "Show help"
}
]
}
]
}
],
"permissions": ["identity", "messageTeamMembers"],
"validDomains": ["your-domain.com"]
}Configure OpenClaw for Teams
# In config/channels/teams.yaml:
teams:
enabled: true
app_id: "YOUR_MICROSOFT_APP_ID"
app_password: "YOUR_APP_PASSWORD"
tenant_id: "YOUR_TENANT_ID" # Optional, for single-tenant bots
endpoint: "/api/messages"
adaptive_cards: true # Use Teams-native rich cardsPackage and deploy the Teams app
# Create app package (zip file containing):
# - manifest.json
# - color-192x192.png (192x192 color icon)
# - outline-32x32.png (32x32 outline icon)
#
# In Teams:
# Apps โ Manage your apps โ Upload an app โ Upload a custom app
# Select the .zip fileWarning: Icon dimensions must be exact. Teams rejects the package if icons are the wrong size or format (must be PNG).
Test the bot
# In Teams, find your bot in the Apps section
# Start a chat or add it to a channel
# Try: @OpenClaw AI What's on the team calendar?
#
# Check OpenClaw logs:
tail -f ~/.openclaw/logs/channels.log | grep teamsTeams Integration Is an Azure Project
Azure Bot Service, Bot Framework authentication, Teams app manifests, adaptive cards, admin approval โ our Teams integration experts handle every step. Most Teams integrations are live within 2-3 days.
Get matched with a specialist who can help.
Sign Up for Expert Help โ