mcpField
M
Microsoft Teams Automation

Microsoft Teams Automation

github.com/claude-office-skillsProductivity5454.7k installsUpdated 39w ago
Repository

About Microsoft Teams Automation

A skill for automating Microsoft Teams communication and collaboration workflows, aimed at teams coordinating messages, meetings, and operational processes. It covers channel posts, meeting setup, webhook notifications, and bot workflows.

Key features

  1. 01Channel message automation
  2. 02Meeting creation with attendees
  3. 03Incoming webhook messages
  4. 04Bot commands and adaptive cards
  5. 05CI/CD and approval notifications

Use cases

  1. 01Post build notifications to a channel
  2. 02Create online team meetings
  3. 03Send expense approval cards
  4. 04Provide status through bot commands

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/claude-office-skills/skills --skill microsoft-teams-automation

After installing, type/microsoft-teams-automationin Claude Code to confirm it loaded.

Details

From the project README

Microsoft Teams Automation

Automate Microsoft Teams communication and collaboration workflows.

Core Capabilities

Channel Messaging
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
meeting_creation:
  subject: "Weekly Standup"
  start: "2024-01-20T09:00:00"
  end: "2024-01-20T09:30:00"
  attendees:
    - "[email protected]"
    - "[email protected]"
  is_online_meeting: true
  settings:
    allow_new_time_proposals: true
    lobby_bypass: "organization"
    record_automatically: false
Incoming Webhooks
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
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
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
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

Comments

Markdown supported