Microsoft Teams Integration

Bring OpenClaw AI to Microsoft Teams

Meet your workforce where they work. Microsoft Teams hosts over 320 million monthly active users, and now OpenClaw brings intelligent AI assistance to this enterprise collaboration platform. Integrate with Microsoft 365 apps, search SharePoint, automate Power Automate flows, and provide organization-wide AI assistance - all within the Teams interface your employees already use daily.

Microsoft Teams
Messaging

Microsoft Teams

Visit Website

How OpenClaw Teams Integration Works

We Register Your Azure AD App

We create an application registration in Azure Active Directory, establishing your bot's identity within Microsoft's ecosystem and configuring the credentials needed for authentication and access to Teams APIs.

We Configure the Bot Framework

We set up your bot in the Azure Bot Framework portal, register webhook endpoints, configure OAuth settings, and establish the connection between Microsoft's bot infrastructure and your OpenClaw instance.

We Create Your Teams App Package

We build a Teams app manifest that defines your bot's capabilities, permissions, and user interface elements, including personal tabs, team tabs, messaging extensions, and adaptive cards for rich interactions.

We Deploy and Test Everything

We upload your app to your organization's Teams app catalog and verify all functionality. Users can then discover and install your OpenClaw bot in their Teams environment.

Why Connect OpenClaw to {page.integration.name}

Microsoft 365 Integration

Access the full power of Microsoft 365 through OpenClaw. Search SharePoint documents, create events in Outlook Calendar, query Excel data, draft Word documents, and interact with OneDrive files - all through natural language commands in Teams chat.

Enterprise Security

Leverage Microsoft's enterprise-grade security including Azure AD authentication, conditional access policies, data loss prevention, and compliance certifications (SOC 2, ISO 27001, HIPAA, FedRAMP). Your AI assistant operates within your security perimeter.

Adaptive Cards

Deliver rich, interactive responses using Adaptive Cards. Create forms, surveys, approval workflows, and data visualizations directly in chat. Users can interact with buttons, input fields, and dynamic content without leaving Teams.

Power Automate Integration

Trigger Power Automate flows through conversational commands. 'Create a ticket for this issue' can kick off complex workflows across your entire Microsoft ecosystem. AI becomes the natural language interface to your automation.

Meeting Intelligence

Assist during Teams meetings with real-time information retrieval, note-taking, action item capture, and follow-up scheduling. OpenClaw can summarize meeting transcripts and extract key decisions and tasks.

Tenant-Wide Search

Search across your entire Microsoft 365 tenant - emails, documents, chats, SharePoint sites, and more. OpenClaw becomes your intelligent search assistant that understands context and delivers precise results.

Setup Guide

1

Create Azure AD Application

Register an application in Azure Active Directory to establish your bot's identity. This is the foundation for authentication and authorization within Microsoft's ecosystem.

# Azure Portal: https://portal.azure.com

# 1. Navigate to Azure Active Directory > App registrations
# 2. Click 'New registration'
# 3. Configure:
#    - Name: OpenClaw AI Bot
#    - Supported account types: Accounts in this org directory
#    - Redirect URI: https://token.botframework.com/.auth/web/redirect

# 4. After creation, note:
#    - Application (client) ID
#    - Directory (tenant) ID

# 5. Create client secret:
#    - Certificates & secrets > New client secret
#    - Save the secret value immediately (shown only once)
2

Configure API Permissions

Grant the necessary permissions for your bot to access Teams and Microsoft 365 APIs. These determine what data and actions your OpenClaw bot can access.

# In Azure AD > App registrations > Your App > API permissions

# Required permissions:
# Microsoft Graph:
#   - User.Read (Delegated) - Sign in and read user profile
#   - Chat.ReadWrite (Delegated) - Read/write user chats
#   - ChannelMessage.Send (Delegated) - Send channel messages
#   - Files.Read.All (Delegated) - Read files user can access
#   - Calendars.ReadWrite (Delegated) - Access calendars
#   - Mail.Read (Delegated) - Read user mail

# For admin functions (optional):
#   - Directory.Read.All (Application) - Read directory data
#   - Sites.Read.All (Application) - Read SharePoint sites

# Click 'Grant admin consent' after adding permissions
3

Create Azure Bot

Register your bot in the Azure Bot Service. This connects your OpenClaw instance to Microsoft's bot infrastructure and enables communication with Teams.

# Azure Portal > Create Resource > Azure Bot

# Configuration:
#   Bot handle: openclaw-ai-bot
#   Subscription: Your subscription
#   Resource group: Create new or select existing
#   Pricing tier: S1 Standard (or F0 Free for testing)
#   App type: Multi Tenant
#   App ID: Use existing app (your Azure AD app ID)

# After creation:
# 1. Go to Configuration
# 2. Set Messaging endpoint:
#    https://yourdomain.com/api/messages
# 3. Note the Microsoft App ID
# 4. Add Microsoft App Password (from Azure AD client secret)
4

Install Teams Bridge Module

Add the Teams bridge to your OpenClaw installation. The bridge uses the Bot Framework SDK for Node.js and handles all Teams-specific communication.

# Using OpenClaw CLI
openclaw install teams-bridge

# Or manual installation
cd /path/to/openclaw
npm install @openclaw/teams-bridge

# This installs Bot Framework packages:
npm install botbuilder botbuilder-dialogs
npm install @microsoft/teams-js @microsoft/microsoft-graph-client
5

Configure Teams Connection

Create your Teams configuration file with Azure credentials and behavior settings. Configure how OpenClaw handles different Teams interaction patterns.

# config/teams.yaml
teams:
  enabled: true
  
  # Azure credentials
  app_id: "YOUR_APP_ID"
  app_password: "YOUR_APP_PASSWORD"
  tenant_id: "YOUR_TENANT_ID"
  
  # Bot Framework settings
  bot_framework:
    endpoint: "/api/messages"
    port: 3978
  
  # Microsoft Graph settings
  graph:
    enabled: true
    scopes:
      - "User.Read"
      - "Files.Read.All"
      - "Calendars.ReadWrite"
  
  # Response settings
  response:
    use_adaptive_cards: true
    typing_indicator: true
    mention_user: true
6

Create Teams App Manifest

Build the Teams app package that defines your bot's capabilities and appearance in Teams. The manifest specifies scopes, permissions, and UI elements.

// manifest.json
{
  "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.16/MicrosoftTeams.schema.json",
  "manifestVersion": "1.16",
  "version": "1.0.0",
  "id": "YOUR_APP_ID",
  "packageName": "com.yourcompany.openclaw",
  "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-powered assistant for Teams",
    "full": "Get intelligent AI assistance directly in Microsoft Teams..."
  },
  "icons": {
    "outline": "outline.png",
    "color": "color.png"
  },
  "bots": [
    {
      "botId": "YOUR_BOT_ID",
      "scopes": ["personal", "team", "groupchat"],
      "supportsFiles": true,
      "isNotificationOnly": false
    }
  ],
  "permissions": ["identity", "messageTeamMembers"],
  "validDomains": ["yourdomain.com"]
}
7

Configure Adaptive Cards

Set up Adaptive Card templates for rich bot responses. Cards can include interactive elements, data visualization, and action buttons.

# config/teams-cards.yaml
adaptive_cards:
  templates:
    # AI response card
    ai_response:
      type: AdaptiveCard
      body:
        - type: TextBlock
          text: "${response}"
          wrap: true
        - type: ActionSet
          actions:
            - type: Action.Submit
              title: "Helpful"
              data: {"feedback": "helpful"}
            - type: Action.Submit
              title: "Not Helpful"
              data: {"feedback": "not_helpful"}
    
    # Search results card
    search_results:
      type: AdaptiveCard
      body:
        - type: Container
          items:
            - type: TextBlock
              text: "Search Results"
              weight: bolder
              size: large
        - type: ColumnSet
          columns:
            - type: Column
              items: "${results}"
8

Deploy and Test

Upload your app to Teams and test all functionality. Start with sideloading for development, then publish to your org's app catalog.

# Package the app
cd /path/to/manifest
zip -r openclaw-teams.zip manifest.json color.png outline.png

# Sideload for testing:
# 1. Go to Teams > Apps > Manage your apps
# 2. Click 'Upload a custom app'
# 3. Select openclaw-teams.zip

# Or use Teams Toolkit in VS Code for easier development

# Start the bot server
openclaw teams start

# Check status
openclaw teams status

# View logs
openclaw logs teams --follow

# Test by messaging the bot in Teams

What You Can Do

IT Helpdesk Automation

Provide instant IT support through Teams. Answer common questions, guide users through troubleshooting, reset passwords, and create tickets. Escalate complex issues to human support while handling routine queries automatically.

Knowledge Management

Surface organizational knowledge instantly. Search SharePoint, documentation wikis, and past communications to find answers. OpenClaw becomes your organization's memory, making institutional knowledge accessible to everyone.

Meeting Companion

Enhance Teams meetings with AI assistance. Take notes, capture action items, answer questions with real-time research, and schedule follow-ups. Post-meeting, summarize discussions and track commitments.

HR Assistant

Answer employee questions about policies, benefits, time off, and procedures. Guide users through HR processes, help with form completion, and provide personalized information based on employee data.

Project Coordination

Track project status, update tasks, coordinate team members, and provide project insights. Integrate with Planner, Project, and other tools for unified project intelligence.

Sales Enablement

Provide sales teams with instant access to product information, pricing, competitive intelligence, and customer data from CRM. Help prepare for calls, generate proposals, and track opportunities.

Onboarding Guide

Welcome new employees with personalized onboarding. Answer questions, guide through required training, introduce team members, and provide resources. Make new hire integration smooth and consistent.

Report Generation

Generate reports by querying data across Microsoft 365. 'Show me sales figures for Q3' triggers data retrieval, analysis, and formatted presentation - all through conversational AI.

Workflow Automation

Trigger Power Automate flows through natural language. 'Approve this expense report' or 'Create a ticket for server issue' initiates automated workflows without users learning complex interfaces.

Known Limitations

  • Azure AD app registration requires administrator access to your Microsoft 365 tenant
  • Some Microsoft Graph APIs require admin consent for organization-wide access
  • Bot Framework has rate limits for message processing
  • Adaptive Cards have size limits (~28KB) for complex interactions
  • File access depends on user permissions - bot can only access what the user can access
  • Real-time meeting integration requires additional APIs and permissions
  • Message history access in channels requires appropriate permissions and may be limited
  • Publishing to the Microsoft Teams store requires review and approval
  • Multi-tenant bots require additional security considerations
  • GCC/GCC High/DoD environments have different requirements and limitations
  • Our team can help you work around these limitations with custom configurations

Frequently Asked Questions

Do I need an Azure subscription?

Yes, you need an Azure subscription for the Azure Bot Service and Azure AD app registration. The Free tier of Azure Bot Service works for development and small deployments. For production use with higher volume, the Standard tier is recommended. If you already have Microsoft 365, you likely have Azure AD access - you just need to add the Azure Bot Service.

Can the bot access data from other Microsoft 365 apps?

Yes, with proper Microsoft Graph permissions. The bot can access SharePoint documents, Outlook emails and calendars, OneDrive files, Planner tasks, and more. Each access type requires specific API permissions configured in Azure AD. Users authenticate and consent to permissions, and the bot acts on their behalf. Administrative permissions can allow broader access for certain scenarios.

How do I publish to my organization's app catalog?

Publish through the Teams Admin Center. Go to Teams apps > Manage apps > Upload new app. Upload your app package (zip file with manifest and icons). Once uploaded, the app appears in your organization's app catalog. You can then configure which users can install it. For wider distribution, submit to the Microsoft Teams App Store (requires review).

Can the bot work in meetings?

Yes, with additional setup. The bot can be added to meetings as a participant. With the right permissions, it can access meeting chat, respond to queries during meetings, and potentially access meeting transcripts (if enabled). Real-time meeting features like live captions require additional configuration and appropriate licensing (Microsoft 365 E3/E5 or Teams Premium).

How do I handle authentication for Microsoft Graph?

Use OAuth 2.0 with Azure AD. When users first interact with features requiring Graph access, they're prompted to sign in and consent to permissions. The bot receives an access token to act on behalf of the user. Token refresh is handled automatically. For application-level access (not on behalf of user), use client credentials flow with appropriate admin-consented permissions.

What's the difference between personal, team, and group chat scopes?

Personal scope: 1:1 conversations between user and bot. Team scope: Bot operates in a Teams channel, visible to all channel members. Group chat scope: Bot in a group conversation (not associated with a Team). Configure which scopes your bot supports in the manifest. Different scopes have different context and permissions - channels have different IDs and permission models than personal chats.

Can I customize Adaptive Cards dynamically?

Yes, Adaptive Cards are JSON templates that can be populated dynamically. Store card templates and populate them with data at runtime. The templating language supports data binding, conditional rendering, and iteration. This allows creating rich, personalized responses like search results, data displays, or interactive forms based on the conversation context.

How do I integrate with Power Automate?

Use the HTTP trigger or custom connectors in Power Automate. Your bot can call Power Automate flows via HTTP when users issue commands. Alternatively, use Microsoft Graph to trigger flows. For tighter integration, create a custom connector for your bot that Power Automate can call directly. This enables bi-directional communication between OpenClaw and your automated workflows.

What about GCC/GCC High/DoD environments?

Government cloud environments have specific requirements. Azure Bot Service is available in GCC, GCC High, and DoD clouds but with different endpoints. Your Azure AD app must be registered in the appropriate cloud. Some features may have limitations or require additional compliance certifications. Work with your organization's compliance team and Microsoft government cloud documentation for specific requirements.

How do I monitor and troubleshoot the bot?

Azure provides several monitoring tools. Application Insights tracks bot performance, errors, and usage patterns. Azure Bot Service has built-in analytics showing message volumes and user engagement. For debugging, use the Bot Framework Emulator for local testing. Teams has a developer portal with test features. OpenClaw's built-in logging can be configured to capture Teams-specific events for troubleshooting.

Professional Services

Need Help with OpenClaw?

Let our experts handle the setup, configuration, and ongoing management so you can focus on your business.

Free assessment • No commitment required

Ready to Transform Your Microsoft Teams Experience?

Let our team handle the integration. Book a free consultation and we'll deploy OpenClaw in Microsoft Teams with full Microsoft 365 integration, enterprise security, and massive productivity gains.