OpenClawSkills
GitHub
Channel • 25 min setup

Microsoft Teams Setup

Enterprise-ready integration using the Azure Bot Framework.

New to channel setup? For a hands-on, step-by-step tutorial, check out our ''Channel Setup Tutorial''. This page is a comprehensive reference covering all Microsoft Teams features and configuration options.

Microsoft Teams is a collaboration platform for enterprises. OpenClaw integrates with Teams using the Microsoft Bot Framework, providing chat, channels, and enterprise-grade features.

Tutorial.step

Quick Setup

Setting up Microsoft Teams requires creating a bot in Azure Portal:

  • Create a Teams app in Azure Portal
  • Configure Bot Framework
  • Get bot credentials
  • Configure in OpenClaw
  • Deploy to Teams
Tutorial.step

Creating a Teams Bot

Step 1: Azure Portal Setup

  • Go to Azure Portal
  • Create a new "Azure Bot" resource
  • Choose "Multi Tenant" or "Single Tenant" based on your needs
  • Configure Microsoft App ID and password
  • Set messaging endpoint (your OpenClaw Gateway URL)

Step 2: Bot Framework Configuration

  • In Azure Bot resource, go to "Channels"
  • Add Microsoft Teams channel
  • Configure Teams-specific settings
  • Copy the Microsoft App ID and password

Step 3: Teams App Manifest

Create a Teams app manifest with your bot details. This manifest defines your bot's capabilities and appearance in Teams.

Tutorial.step

Configuration

Configure Microsoft Teams in your OpenClaw configuration file:

Microsoft Teams Configuration

Config
{
  "msteams": {
    "appId": "your-microsoft-app-id",
    "appPassword": "your-microsoft-app-password",
    "allowFrom": ["[email protected]", "[email protected]"]
  }
}

Environment Variables

You can also use environment variables:

Env Vars
export MSTEAMS_APP_ID="your-microsoft-app-id"
export MSTEAMS_APP_PASSWORD="your-microsoft-app-password"
Tutorial.step

Access Control

User Allowlist

Control who can interact with your bot:

User Allowlist
{
  "msteams": {
    "appId": "your-microsoft-app-id",
    "appPassword": "your-microsoft-app-password",
    "allowFrom": [
      "[email protected]",
      "[email protected]"
    ]
  }
}

Group Access Control

Configure group chat access:

Group Configuration
{
  "msteams": {
    "appId": "your-microsoft-app-id",
    "appPassword": "your-microsoft-app-password",
    "groupAllowFrom": ["[email protected]"],
    "groupPolicy": "open"
  }
}

Group Policies:

  • "open" - Bot responds to all group messages
  • "allowlist" - Only respond in groups listed in groupAllowFrom
Tutorial.step

Teams Features

OpenClaw supports various Teams Features:

  • 1-on-1 Chats - Direct conversations with users
  • Team Channels - Participate in team channels
  • Group Chats - Multi-user conversations
  • Mentions - Respond when mentioned in channels
  • File Sharing - Send and receive files
  • Rich Cards - Interactive message cards
Tutorial.step

Deployment

Deploy to Teams

  • Package your Teams app manifest
  • Upload to Teams (via App Studio or directly)
  • Install to your organization or specific teams
  • Test bot functionality

Messaging Endpoint

Your OpenClaw Gateway must be accessible from the internet for Teams to send messages. Configure:

  • Public URL for your Gateway
  • HTTPS endpoint (required by Teams)
  • Valid SSL certificate
Tutorial.step

Security Best Practices

  • 1
    Secure CredentialsNever share your App ID and password.
  • 2
    Use AllowlistsAlways configure allowFrom to control access.
  • 3
    HTTPS RequiredTeams requires HTTPS for messaging endpoints.
  • 4
    Regular UpdatesKeep your Teams app and OpenClaw updated.
  • 5
    Audit LogsMonitor bot interactions for security.
Tutorial.step

Troubleshooting

Bot Not Responding

If the bot doesn't respond:

  • Verify App ID and password are correct
  • Check messaging endpoint is accessible
  • Ensure HTTPS is properly configured
  • Check Gateway is running and receiving requests
  • Review Azure Bot logs

Authentication Issues

If authentication fails:

  • Verify App ID matches Azure Bot resource
  • Check App Password is correct
  • Ensure bot is registered in Teams
  • Check OAuth configuration if using SSO

Group Access Issues

If group features don't work:

  • Check groupPolicy configuration
  • Verify groupAllowFrom includes correct team IDs
  • Ensure bot is added to the team/channel
  • Check bot permissions in Teams