Home
cd ../playbooks
CommunicationsAdvanced

Microsoft Teams Integration

Automate Microsoft Teams messaging, meetings, channels, and workflow integrations

10 minutes
By communitySource
#teams#microsoft#collaboration#meetings#chat

You manually post updates to five Teams channels every morning, copy-paste meeting summaries into chats, and create the same recurring meeting agenda every week. Teams has automation capabilities you've never configured because the Graph API docs are overwhelming.

Who it's for: IT administrators managing Teams environments for organizations, operations managers automating team communication workflows, project managers integrating Teams with project tracking tools, enterprise teams building custom Teams bots and connectors, internal comms leads automating company-wide announcements

Example

"Automate our daily standup workflow in Teams" → Automated standup bot that posts prompts at 9 AM, collects responses, summarizes blockers to the manager channel, creates follow-up tasks in Planner, and archives weekly summaries

CLAUDE.md Template

New here? 3-minute setup guide → | Already set up? Copy the template below.

# Microsoft Teams Automation

Automate Microsoft Teams communication and collaboration workflows.

## Core Capabilities

### Channel Messaging
```yaml
message_types:
  simple_message:
    channel_id: "channel_xxx"
    message: "Hello, Team!"
    
  formatted_message:
    channel_id: "channel_xxx"
    content_type: "html"
    message: |
      <h1>Weekly Update</h1>
      <ul>
        <li>Item 1</li>
        <li>Item 2</li>
      </ul>
      
  adaptive_card:
    channel_id: "channel_xxx"
    card:
      type: "AdaptiveCard"
      body:
        - type: "TextBlock"
          text: "Approval Required"
          weight: "bolder"
        - type: "Input.Text"
          id: "comment"
          placeholder: "Add comment"
      actions:
        - type: "Action.Submit"
          title: "Approve"
          data:
            action: "approve"
```

### Meeting Automation
```yaml
meeting_creation:
  subject: "Weekly Standup"
  start: "2024-01-20T09:00:00"
  end: "2024-01-20T09:30:00"
  attendees:
    - "user1@company.com"
    - "user2@company.com"
  is_online_meeting: true
  settings:
    allow_new_time_proposals: true
    lobby_bypass: "organization"
    record_automatically: false
```

### Incoming Webhooks
```yaml
webhook_message:
  url: "https://outlook.webhook.office.com/..."
  payload:
    "@type": "MessageCard"
    themeColor: "0076D7"
    summary: "Deployment Complete"
    sections:
      - activityTitle: "Production Deployment"
        activitySubtitle: "v2.1.0 deployed successfully"
        facts:
          - name: "Environment"
            value: "Production"
          - name: "Duration"
            value: "5 minutes"
        markdown: true
    potentialAction:
      - "@type": "OpenUri"
        name: "View Dashboard"
        targets:
          - os: "default"
            uri: "https://dashboard.example.com"
```

### Bot Workflows
```yaml
bot_commands:
  /status:
    description: "Check system status"
    response:
      type: adaptive_card
      template: status_card
      
  /create-ticket:
    description: "Create support ticket"
    parameters:
      - title: required
      - priority: optional
    action: create_jira_issue
    
  /approve {id}:
    description: "Approve request"
    action: process_approval
    response: "Request {{id}} approved ✓"
```

## Integration Workflows

### CI/CD Notifications
```yaml
pipeline_notifications:
  on_build_start:
    channel: "#deployments"
    card:
      title: "🚀 Build Started"
      fields:
        - Branch: "{{branch}}"
        - Triggered by: "{{user}}"
        
  on_build_complete:
    channel: "#deployments"
    card:
      title: "{{#if success}}✅{{else}}❌{{/if}} Build {{status}}"
      fields:
        - Duration: "{{duration}}"
        - Tests: "{{tests_passed}}/{{tests_total}}"
      actions:
        - title: "View Logs"
          url: "{{logs_url}}"
```

### Approval Workflows
```yaml
approval_flow:
  trigger: expense_submitted
  actions:
    - send_adaptive_card:
        channel: "#approvals"
        card:
          title: "Expense Approval"
          body: "{{employee}} submitted ${{amount}}"
          actions:
            - Approve
            - Reject
    - wait_for_response:
        timeout: 48_hours
    - process_decision:
        approved: update_expense_status
        rejected: notify_submitter
```

## Best Practices

1. **Rate Limits**: Respect Microsoft Graph limits
2. **Adaptive Cards**: Use for rich interactions
3. **Permissions**: Request minimal scopes
4. **Threading**: Reply in threads for context
5. **Mentions**: Use @mentions sparingly
6. **Webhooks**: Use for one-way notifications

Get new playbooks like this one

One email a week with new Claude Code workflows. Free, like everything here.

No spam. Unsubscribe anytime.

README.md

What This Does

Automate Microsoft Teams communication and collaboration workflows.


Quick Start

Step 1: Create a Project Folder

mkdir -p ~/Documents/MicrosoftTeams

Step 2: Download the Template

Click Download above, then:

mv ~/Downloads/CLAUDE.md ~/Documents/MicrosoftTeams/

Step 3: Start Working

cd ~/Documents/MicrosoftTeams
claude

Best Practices

  1. Rate Limits: Respect Microsoft Graph limits
  2. Adaptive Cards: Use for rich interactions
  3. Permissions: Request minimal scopes
  4. Threading: Reply in threads for context
  5. Mentions: Use @mentions sparingly
  6. Webhooks: Use for one-way notifications

$Related Playbooks

Communications

Customer Communication Templates

Create a library of customer communication templates for onboarding, support, renewals, and lifecycle touchpoints.

10 minutes
Beginner
Communications

Email Drafting & Response

Draft professional emails and responses with the right tone, structure, and strategy for any situation.

5 minutes
Beginner
Communications

Executive Communication Ghostwriter

Draft executive communications — internal memos, LinkedIn posts, conference remarks — in the leader's authentic voice.

10 minutes
Intermediate
Communications

High-Stakes Communication Drafter

Draft sensitive communications — layoffs, crises, policy changes — with the right tone, structure, and anticipated reactions.

5 minutes
Intermediate
Communications

Rapid Presentation Builder

Go from key points to a complete slide deck with content, speaker notes, and Q&A prep in minutes instead of hours.

5 minutes
Beginner
Communications

Press Release & Media Statement Drafter

Draft professional press releases, media statements, and PR responses following standard formats and AP style.

5 minutes
Beginner
Communications

Proposal & Pitch Document Creator

Generate persuasive proposals and pitch documents tailored to prospect needs with pricing options and objection handling.

10 minutes
Intermediate
Communications

RFP & Contract Response Generator

Accelerate RFP and government contract responses with structured answers, compliance matrices, and win themes.

15 minutes
Intermediate
Communications

Speech & Presentation Script Writer

Create compelling speeches and presentation scripts with storytelling arcs, audience engagement, and delivery cues.

10 minutes
Intermediate
Communications

Technical Writing for Non-Technical Audiences

Translate complex technical content into clear, accessible documents for business stakeholders and non-technical readers.

5 minutes
Beginner
Communications

Teams Channel Post Writer

Create educational Microsoft Teams channel posts for internal knowledge sharing — feature announcements, productivity tips, and lessons learned — with templates emphasizing concrete examples and underlying principles.

10 minutes
Beginner
Communications

Slack Workflow Automation

Slack automation and workflow builder - notifications, standup bots, approval flows, and cross-platform integrations

10 minutes
Advanced

Browse all Communications playbooks →