# Microsoft Teams

Microsoft Teams integrates chat, video meetings, and file storage within Microsoft 365, providing virtual collaboration and communication for distributed teams

- **Category:** team chat
- **Auth:** OAUTH2
- **Composio Managed App Available?** Yes
- **Tools:** 164
- **Triggers:** 0
- **Slug:** `MICROSOFT_TEAMS`
- **Version:** 20260323_00

## Tools

### Add chat member

**Slug:** `MICROSOFT_TEAMS_ADD_CHAT_MEMBER`

Tool to add a conversationMember to a Microsoft Teams chat. Use when adding a user to an existing chat conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `roles` | array | No | Roles to assign to the member. Valid values are 'owner' or 'guest'. Leave empty to add as a standard member (not owner or guest). |
| `chat_id` | string | Yes | The unique identifier of the chat to which the member will be added. |
| `user_id` | string | Yes | The user's Graph ID (GUID) or userPrincipalName (email) to add to the chat. |
| `visible_history_start_date_time` | string | No | Optional. Timestamp denoting how far back a conversation's history is shared with the conversation member. Must be in ISO 8601 format (e.g., '2021-01-01T00:00:00Z'). Only settable for chat members. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add tab to channel

**Slug:** `MICROSOFT_TEAMS_ADD_TAB`

Tool to add a new tab to a Microsoft Teams channel. Use when you need to pin an app or website as a tab in a channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team containing the channel where the tab will be added. |
| `channel_id` | string | Yes | The unique identifier of the channel where the tab will be added. This is typically in the format '19:xxx@thread.tacv2' for standard channels. |
| `display_name` | string | Yes | The display name for the tab as it will appear to users in Microsoft Teams. |
| `teams_app_id` | string | Yes | The unique identifier or catalog reference of the Teams app to add as a tab. Common values: 'com.microsoft.teamspace.tab.web' for website tabs, 'com.microsoft.teamspace.tab.wiki' for Wiki, 'com.microsoft.teamspace.tab.planner' for Planner. The app must be installed in the team or available in the app catalog. |
| `configuration` | object | No | Configuration settings for the tab. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add member to team

**Slug:** `MICROSOFT_TEAMS_ADD_TEAM_MEMBER`

Tool to add a user to a Microsoft Teams team. Use when granting or updating membership for a user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `roles` | array | No | Roles to assign to the member. Only 'owner' is supported. Omit or leave empty to add as a standard member. |
| `team_id` | string | Yes | The unique ID (GUID) of the Microsoft Team to which the member will be added. |
| `user_id` | string | Yes | The user's Graph ID (GUID) or userPrincipalName (email) to add to the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Add team members (bulk)

**Slug:** `MICROSOFT_TEAMS_ADD_TEAM_MEMBERS_BULK`

Tool to add multiple members to a Microsoft Teams team in a single operation. Use when adding several users at once to improve efficiency.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `values` | array | Yes | Array of conversation members to add to the team. Each member must specify the user reference and optional roles. |
| `team_id` | string | Yes | The unique identifier (GUID) of the team to add members to. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Archive channel

**Slug:** `MICROSOFT_TEAMS_ARCHIVE_CHANNEL`

Tool to archive a channel in a Microsoft Teams team. Use when you need to archive a specific channel within a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team containing the channel to archive. |
| `channel_id` | string | Yes | The unique identifier of the channel to archive. Must be in thread format (e.g., '19:079fd66c7bf04c07a21430a9a32c2130@thread.tacv2'). |
| `should_set_spo_site_read_only_for_members` | boolean | No | If true, sets the SharePoint site to read-only for team members when archiving the channel. Default is false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Archive team channel

**Slug:** `MICROSOFT_TEAMS_ARCHIVE_GROUP_TEAM_CHANNEL`

Tool to archive a channel in a Microsoft Teams team using the group ID. Use when you need to archive a specific channel within a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier (GUID) of the Microsoft 365 group associated with the team containing the channel to archive. |
| `channel_id` | string | Yes | The unique identifier of the channel to archive. Must be in thread format (e.g., '19:f95aa28eb1de46e994e1e8f8a40f2113@thread.tacv2'). |
| `should_set_spo_site_read_only_for_members` | boolean | No | If true, sets the SharePoint site to read-only for team members when archiving the channel. Default is false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Archive Teams team

**Slug:** `MICROSOFT_TEAMS_ARCHIVE_TEAM`

Tool to archive a Microsoft Teams team. Use after confirming the team ID; returns 202 if accepted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The Microsoft Teams team GUID to archive. |
| `should_set_spo_site_read_only_for_members` | boolean | No | If true, sets the SharePoint site to read-only for team members when archiving. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all chats

**Slug:** `MICROSOFT_TEAMS_CHATS_GET_ALL_CHATS`

Retrieves all Microsoft Teams chats a specified user is part of, supporting filtering, property selection, and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | The page size (number of chats per API request) for pagination. Default is 50. Microsoft Graph enforces a maximum of 50 per request. Note: This action auto-paginates and returns chats up to the 'limit' parameter. The 'top' parameter only controls how many chats are fetched per API call, not the total number of chats returned. |
| `limit` | integer | No | Maximum total number of chats to return. If not specified (None), all chats are returned through auto-pagination. Use this as a safety valve to restrict total data returned. |
| `filter` | string | No | OData filter query string (do not include '$filter='). Supports filtering by chat properties like 'topic', 'chatType' (e.g., "chatType eq 'group'", "topic eq 'Project X'"), and 'installedApps/any(...)' for app-based filtering. Note: Filtering by 'members' (a navigation property) is NOT supported - to filter by member, retrieve all chats and filter client-side, or use $expand=members. |
| `select` | array | No | A list of specific Microsoft Graph chat resource properties to retrieve (e.g., 'id', 'topic'). If omitted or empty, a default set of properties is returned. Each string in the list should be a valid property name. |
| `user_id` | string | No | The ID or user principal name (UPN) of the user whose chats are to be retrieved. Use 'me' to specify the currently authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all chat messages (Deprecated)

**Slug:** `MICROSOFT_TEAMS_CHATS_GET_ALL_MESSAGES`

DEPRECATED: Use ListUserChatMessages instead. Retrieves all messages from a specified Microsoft Teams chat using the Microsoft Graph API, automatically handling pagination; ensure `chat_id` is valid and OData expressions in `filter` or `select` are correct.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Number of messages to retrieve per API page request. Microsoft Graph API maximum is 50 per page. This controls the page size for pagination, not the total number of messages returned. |
| `limit` | integer | No | Maximum total number of messages to retrieve across all pages. If not specified, all available messages are returned (following pagination). Use this to limit the total results when you don't need the full history. |
| `filter` | string | No | OData v4.0 filter query string for messages. FILTER RESTRICTIONS: For 'lastModifiedDateTime', both 'gt' (greater than) and 'lt' (less than) operators are supported. For 'createdDateTime', ONLY 'lt' (less than) is supported - 'gt' (greater than) is NOT allowed and will cause an API error. Must be used with 'orderby' on the same property or filter will be ignored. |
| `chat_id` | string | Yes | Unique identifier of the Microsoft Teams chat. |
| `orderby` | string | No | OData v4.0 orderby expression for sorting messages. Only supports 'lastModifiedDateTime desc' and 'createdDateTime desc'. Ascending order is not supported. Required when using filter parameter - must be on the same property as the filter. |
| `user_id` | string | No | The ID or user principal name (UPN) of the user whose chats are to be accessed. Use 'me' to specify the currently authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear Automatic Location

**Slug:** `MICROSOFT_TEAMS_CLEAR_AUTOMATIC_LOCATION`

Tool to clear the automatic location from a user's presence in Microsoft Teams. Use when you need to remove automatically-set location information from presence status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique identifier (GUID) of the user whose automatic location will be cleared. Note: This endpoint does not support 'me' as an alias; you must provide the actual user GUID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear User Preferred Presence

**Slug:** `MICROSOFT_TEAMS_CLEAR_ME_PRESENCE_USER_PREFERRED`

Tool to clear a user's preferred presence setting in Microsoft Teams. Use when you need to remove the user's manually set presence status and allow the system to automatically determine their presence based on activity. Supports both delegated (user) and application (S2S) authentication.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | No | The user's unique identifier or principal name. Use 'me' to clear the preferred presence of the authenticated user (delegated auth), or provide a specific user ID or email for application auth. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear My Presence (Deprecated)

**Slug:** `MICROSOFT_TEAMS_CLEAR_MY_PRESENCE`

DEPRECATED: Use MICROSOFT_TEAMS_CLEAR_PRESENCE instead. Tool to clear the authenticated user's presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the current user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | No | The user's unique identifier or principal name. Use 'me' to clear presence for the authenticated user. |
| `sessionId` | string | Yes | The ID of the application's presence session to clear. Should be the application's client ID (appid). This parameter is required by the API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear Presence

**Slug:** `MICROSOFT_TEAMS_CLEAR_PRESENCE`

Tool to clear the presence information for a user's application presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the authenticated user. Note: This action can only clear presence for the authenticated user, not for other users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique identifier (GUID) of the user whose presence session to clear. Must be an explicit user ID (not 'me'). Note: You can only clear presence for the authenticated user - attempting to clear presence for other users will result in a 401 Unauthorized error. Use the user's object ID from Azure AD. |
| `sessionId` | string | Yes | The ID of the application's presence session to clear. This must exactly match the application ID (client ID) used for authentication. The API will return a 400 error if the sessionId doesn't match. This parameter is required. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear Presence Automatic Location (Deprecated)

**Slug:** `MICROSOFT_TEAMS_CLEAR_PRESENCE_AUTOMATIC_LOCATION`

DEPRECATED: Use MICROSOFT_TEAMS_CLEAR_AUTOMATIC_LOCATION instead. Tool to clear the automatic presence location for the authenticated user. Use when you need to remove automatically-detected location information from the user's presence status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | No | The user's unique identifier or principal name. Use 'me' to clear the presence location of the authenticated user (delegated auth). For application-only (S2S) authentication, provide the user's GUID or email address. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clear Presence Location

**Slug:** `MICROSOFT_TEAMS_CLEAR_PRESENCE_LOCATION`

Tool to clear the authenticated user's presence location. Use when you need to remove location information from the user's current presence status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | No | The user's unique identifier or principal name. Use 'me' to clear the presence location of the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Clone Team

**Slug:** `MICROSOFT_TEAMS_CLONE_TEAM`

Tool to clone a Microsoft Teams team using the team ID. Use when you need to create a copy of an existing team including its structure, channels, and tabs. This is an asynchronous operation; poll the returned location URL to monitor progress.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team to clone. |
| `visibility` | string ("private" | "public" | "hiddenMembership" | "unknownFutureValue") | No | Visibility type for the cloned team. |
| `description` | string | No | An optional description for the cloned team. If not provided, it takes the value of displayName. |
| `displayName` | string | Yes | The display name for the cloned team. This property is required when a team is cloned. |
| `mailNickname` | string | Yes | The mail alias for the cloned team. This property must be specified when a team is cloned. Must be unique in the organization. |
| `partsToClone` | string | No | Comma-separated list of parts to clone. Valid values: 'apps', 'tabs', 'settings', 'channels', 'members'. Defaults to cloning apps, tabs, settings, and channels (but not members). |
| `classification` | string | No | Optional label describing the data or business sensitivity of the cloned team. Must match a preconfigured value in the tenant's directory. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Call Operation

**Slug:** `MICROSOFT_TEAMS_CREATE_CALL_OPERATION`

Tool to create a new operation for a communications call. Use when you need to initiate a new operation on an active call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `status` | string ("notStarted" | "running" | "completed" | "failed") | No | Initial status of the operation. Possible values: notStarted, running, completed, failed. |
| `call_id` | string | Yes | The unique identifier of the call to create an operation for. |
| `odata_type` | string | No | The OData type of the operation entity. Must be '#microsoft.graph.commsOperation'. |
| `clientContext` | string | No | Optional client context string for tracking the operation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create a channel

**Slug:** `MICROSOFT_TEAMS_CREATE_CHANNEL`

Tool to create a new standard, private, or shared channel within a Microsoft Teams team. Use when you need to create a new channel for team collaboration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The display name for the new channel. Maximum length is 50 characters. Cannot contain the following characters: ~ # % & * { } + / \ : < > ? \| ' " , or control characters. Cannot start with an underscore (_) or period (.) |
| `members` | string | No | JSON string containing array of conversationMember objects to add as owners/members when creating private or shared channels. Each member object should include '@odata.type' (e.g., '#microsoft.graph.aadUserConversationMember'), 'user@odata.bind' (user URL), and 'roles' array (e.g., ['owner']). Required for private and shared channels to specify at least one owner. Maximum 200 members for private channels. For shared channels, only one owner can be added initially. |
| `team_id` | string | Yes | The GUID of the existing Microsoft Teams team where the new channel will be created. |
| `description` | string | No | An optional, user-friendly description of the channel's purpose. Maximum length is 1024 characters. |
| `membership_type` | string | No | Membership type determining channel accessibility: 'standard' is accessible to all team members, 'private' is only accessible to a specific subset of team members, and 'shared' can be shared with people outside the team or organization (requires appropriate policies). |
| `created_date_time` | string | No | The timestamp for when the channel was created. Only used when creating a channel in migration mode by including '@microsoft.graph.channelCreationMode': 'migration' in the request. Format: ISO 8601 datetime string (e.g., '2020-03-14T11:22:17.067Z'). |
| `shared_with_teams` | string | No | JSON string containing array of team objects to share the channel with when creating a shared channel. Each object should contain an 'id' field with the team ID. Use this to share the channel with the host team or other teams. |
| `is_favorite_by_default` | boolean | No | Indicates whether the channel should be marked as recommended for all members of the team to show in their channel list. Can only be set during creation. Defaults to false if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Content Sharing Session

**Slug:** `MICROSOFT_TEAMS_CREATE_CONTENT_SHARING_SESSION`

Tool to create a content sharing session in a Microsoft Teams call. Use when you need to initiate content sharing during an active call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `call_id` | string | Yes | Unique identifier of the call in which to create the content sharing session. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create channel in group team

**Slug:** `MICROSOFT_TEAMS_CREATE_GROUP_TEAM_CHANNEL`

Tool to create a new channel in a group's associated team. Use when you have a group ID and need to create a channel in its team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier (GUID) of the group. This is the group ID, not the team ID. The group must have an associated team. |
| `description` | string | No | Optional textual description of the channel's purpose. |
| `display_name` | string | Yes | The display name for the new channel. Maximum length is 50 characters. This is the only required field. |
| `membership_type` | string ("standard" | "private" | "shared") | No | Channel membership type options. |
| `is_favorite_by_default` | boolean | No | Indicates whether the channel should be marked as recommended for all members of the team to show in their channel list. Can only be set during creation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create online meeting

**Slug:** `MICROSOFT_TEAMS_CREATE_MEETING`

Use to schedule a new standalone Microsoft Teams online meeting, i.e., one not linked to any calendar event.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `subject` | string | Yes | The subject or title for the online meeting. |
| `user_id` | string | No | The user ID (object ID) on whose behalf to create the meeting. Required when using application permissions (S2S). If not specified, uses the /me endpoint (delegated permissions). |
| `participants` | array | No | An optional list of participants to invite to the meeting. Each participant is defined by their user ID and role. |
| `end_date_time` | string | Yes | The end date and time of the meeting, specified in ISO 8601 format (e.g., '2024-08-15T11:00:00Z'). Must be after start_date_time. |
| `allow_recording` | boolean | No | Indicates whether recording is enabled for the meeting. |
| `start_date_time` | string | Yes | The start date and time of the meeting, specified in ISO 8601 format (e.g., '2024-08-15T10:00:00Z'). |
| `allow_live_share` | string ("enabled" | "disabled") | No | Indicates whether Live Share is enabled for the meeting. Possible values: enabled, disabled. |
| `allow_whiteboard` | boolean | No | Indicates whether whiteboard is enabled for the meeting. |
| `allow_meeting_chat` | string ("enabled" | "disabled" | "limited") | No | Specifies the mode of meeting chat. Possible values: enabled (default), disabled, limited (only during the meeting call). |
| `allowed_presenters` | string ("everyone" | "organization" | "roleIsPresenter" | "organizer") | No | Specifies who can be a presenter in a meeting. Possible values: everyone (default), organization, roleIsPresenter, organizer. |
| `allow_transcription` | boolean | No | Indicates whether transcription is enabled for the meeting. |
| `meeting_template_id` | string | No | The ID of the meeting template. Using a custom meeting template to create a meeting is a Teams Premium feature. |
| `allow_breakout_rooms` | boolean | No | Indicates whether breakout rooms are enabled for the meeting. |
| `is_passcode_required` | boolean | No | An optional boolean indicating whether a passcode should be required to join this meeting. If not specified, the organization's default policy applies. |
| `record_automatically` | boolean | No | Indicates whether to record the meeting automatically. |
| `lobby_bypass_settings` | object | No | Specifies which participants can bypass the meeting lobby. |
| `is_entry_exit_announced` | boolean | No | Indicates whether to announce when callers join or leave. |
| `allow_teamwork_reactions` | boolean | No | Indicates whether Teams reactions are enabled for the meeting. |
| `allow_power_point_sharing` | boolean | No | Indicates whether PowerPoint live is enabled for the meeting. |
| `allow_attendee_to_enable_mic` | boolean | No | Indicates whether attendees can unmute themselves. |
| `allow_attendee_to_enable_camera` | boolean | No | Indicates whether attendees can turn on their camera. |
| `is_end_to_end_encryption_enabled` | boolean | No | Indicates whether end-to-end encryption is enabled for the meeting. Note: This property must be used with Teams policies to determine the final behavior. |
| `allow_participants_to_change_name` | boolean | No | Specifies whether participants are allowed to rename themselves in an instance of the meeting. |
| `share_meeting_chat_history_default` | string ("all" | "none") | No | Specifies whether meeting chat history is shared with participants. Possible values: all, none. |
| `allow_copying_and_sharing_meeting_content` | boolean | No | Indicates whether participants can copy and share meeting content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create user offer shift request

**Slug:** `MICROSOFT_TEAMS_CREATE_OFFER_SHIFT_REQUEST`

Tool to create a new offer shift request in a user's joined team schedule. Use when a team member wants to offer their shift to another team member.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `user_id` | string | No | Optional user identifier. Not used in the API request as the endpoint operates at the team level. Accepts 'me' or a GUID/UUID format. |
| `odata_type` | string | No | The OData type of the resource. Must be '#microsoft.graph.offerShiftRequest'. |
| `senderMessage` | string | No | Optional message from the sender to the recipient explaining the shift offer. |
| `senderShiftId` | string | Yes | The shift ID that is being offered. Format typically starts with 'SHFT_' followed by a GUID. |
| `recipientUserId` | string | Yes | The user ID of the recipient to whom the shift is being offered. Must be a valid GUID/UUID. |
| `recipientActionMessage` | string | No | Message from the recipient when responding to the offer. This is typically set when the recipient accepts or declines. |
| `recipientActionDateTime` | string | No | Date and time when the recipient responded to the offer, in ISO 8601 format. This is typically set by the system. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create open shifts

**Slug:** `MICROSOFT_TEAMS_CREATE_OPEN_SHIFT`

Tool to create a new open shift in a Microsoft Teams team schedule. Use when you need to publish available shifts that team members can claim.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `draftOpenShift` | object | No | Represents the draft version of an open shift that has not been shared with the team. |
| `sharedOpenShift` | object | Yes | The shared version of the open shift that is visible to team members. This contains the shift details including start/end times, theme, and open slot count. |
| `schedulingGroupId` | string | No | The unique identifier of the scheduling group this open shift belongs to. Use format 'TAG_{guid}' for scheduling group IDs. |
| `isStagedForDeletion` | boolean | No | Indicates whether the open shift is staged for deletion. Set to true to mark for deletion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create open shift change request

**Slug:** `MICROSOFT_TEAMS_CREATE_OPEN_SHIFT_CHANGE_REQUEST`

Tool to create a new open shift change request in a team schedule. Use when a team member wants to claim an available open shift.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `message` | string | No | Optional message from the user explaining why they want to claim this open shift. |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `openShiftId` | string | Yes | The unique identifier of the open shift that the user is requesting to claim. This ID references an existing open shift in the team's schedule. |
| `senderUserId` | string | Yes | The unique identifier (GUID) of the user who is requesting to claim the open shift. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or get online meeting

**Slug:** `MICROSOFT_TEAMS_CREATE_OR_GET_ONLINE_MEETING`

Tool to create a new Microsoft Teams online meeting or retrieve an existing one based on externalId. Use when you need an idempotent meeting creation operation that returns an existing meeting if the externalId matches.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | No | The user ID (UPN or GUID) on whose behalf to create the meeting. Required for Service-to-Service (client credentials) authentication. If not provided, uses /me endpoint (delegated permissions only). |
| `subject` | string | No | The subject or title for the online meeting. Optional. |
| `chatInfo` | object | No | The chat information associated with an online meeting. |
| `externalId` | string | Yes | The external ID that uniquely identifies this meeting. Required. If a meeting with this externalId already exists, that meeting is returned; otherwise, a new meeting is created. Maximum length is 256 characters. |
| `endDateTime` | string | No | The meeting end date and time in ISO 8601 format (e.g., '2026-02-24T11:00:00Z'). Optional but recommended. Should be after startDateTime if both are provided. |
| `participants` | object | No | The participants associated with the online meeting. |
| `startDateTime` | string | No | The meeting start date and time in ISO 8601 format (e.g., '2026-02-24T10:00:00Z'). Optional but recommended. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update schedule

**Slug:** `MICROSOFT_TEAMS_CREATE_OR_UPDATE_SCHEDULE`

Tool to create or replace a schedule object for a Microsoft Teams team. Use when you need to enable or configure scheduling features for a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `enabled` | boolean | No | Indicates whether the schedule is enabled for the team. Set to true to enable. |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `timeZone` | string | No | Time zone for the schedule (e.g., 'America/New_York', 'Europe/London', 'UTC'). Uses IANA time zone identifiers. |
| `timeClockEnabled` | boolean | No | Indicates whether the time clock feature is enabled for the schedule. |
| `openShiftsEnabled` | boolean | No | Indicates whether open shifts are enabled for the schedule. |
| `timeOffRequestsEnabled` | boolean | No | Indicates whether team members can request time off. |
| `offerShiftRequestsEnabled` | boolean | No | Indicates whether team members can offer their shifts to others. |
| `swapShiftsRequestsEnabled` | boolean | No | Indicates whether team members can swap shifts with each other. |
| `isActivitiesIncludedWhenCopyingShiftsEnabled` | boolean | No | Indicates whether activities are included when copying shifts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create schedule day note

**Slug:** `MICROSOFT_TEAMS_CREATE_SCHEDULE_DAY_NOTE`

Tool to create a new day note in a team's schedule. Use when you need to add notes or reminders for a specific date in the team schedule. Day notes help communicate important information to team members for a particular day.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team where the day note will be created. |
| `dayNoteDate` | string | Yes | The date for which the day note applies, in YYYY-MM-DD format (e.g., '2026-02-24'). |
| `draftDayNote` | object | No | Represents the content and format of a day note. |
| `sharedDayNote` | object | No | Represents the content and format of a day note. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create scheduling group

**Slug:** `MICROSOFT_TEAMS_CREATE_SCHEDULING_GROUP`

Tool to create a new scheduling group in a team's schedule. Use when you need to organize team members into groups for shift scheduling and management. This action uses 'team_id' parameter naming which aligns with the Microsoft Graph API endpoint (/teams/{id}/schedule/schedulingGroups).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | Code or identifier for the scheduling group. This can be used for external system integration or quick reference. |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `user_ids` | array | Yes | List of user IDs to include as members of this scheduling group. Each ID should be a valid GUID/UUID. Can be an empty array if no members are being added initially. |
| `is_active` | boolean | No | Indicates whether the scheduling group is active and available for scheduling. Set to true to enable, false to disable. |
| `display_name` | string | Yes | Display name of the scheduling group. This is the name that will appear when managing schedules and shifts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create team schedule shift

**Slug:** `MICROSOFT_TEAMS_CREATE_SHIFT`

Tool to create a new shift in a Microsoft Teams team schedule. Use when you need to assign work shifts to team members with specific start/end times and details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | The unique identifier of the user assigned to this shift (GUID format). |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `draftShift` | object | Yes | The draft version of the shift containing schedule details. This is the version managers see before sharing with the team. |
| `sharedShift` | object | No | Represents the shared version of a shift that is visible to team members. |
| `schedulingGroupId` | string | No | The unique identifier of the scheduling group this shift belongs to. |
| `isStagedForDeletion` | boolean | No | Indicates whether the shift is staged for deletion. Set to true to mark for deletion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Team

**Slug:** `MICROSOFT_TEAMS_CREATE_TEAM`

Tool to create a new Microsoft Teams team. Use when you need to provision a team with optional template, channels, and members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `members` | array | No | List of initial team members. At least one member with 'owner' role is recommended. If not provided, the authenticated user will be added as owner. Each member must specify '@odata.type', roles, and 'user@odata.bind'. |
| `channels` | array | No | Collection of channels to create in the team. Note: The 'General' channel is created automatically. |
| `visibility` | string ("private" | "public") | No | Team visibility setting. 'private': Only owners can add members. 'public': Anyone in the organization can join. Default is 'public'. |
| `description` | string | No | Brief description of the team's purpose. Maximum 1024 characters. Note: Known template IDs for team creation: 'standard' (default), 'educationClass', 'educationStaff', 'educationProfessionalLearningCommunity'. |
| `displayName` | string | Yes | Display name of the team as it will appear in Microsoft Teams. Note: The API allows duplicate team names, but using unique names is recommended for clarity. |
| `funSettings` | object | No | Settings to configure use of Giphy, memes, and stickers in the team. |
| `guestSettings` | object | No | Settings to configure whether guests can create, update, or delete channels in the team. |
| `installedApps` | array | No | Collection of apps to install in the team. |
| `classification` | string | No | Optional label describing the data or business sensitivity of the team. Must match a preconfigured value in the tenant's directory. |
| `memberSettings` | object | No | Settings to configure whether members can perform certain actions in the team. |
| `specialization` | string ("none" | "educationStandard" | "educationClass" | "educationProfessionalLearningCommunity" | "healthcareStandard" | "healthcareCareCoordination" | "unknownFutureValue") | No | Indicates whether the team is intended for a particular use case. Each specialization has access to unique behaviors and experiences. |
| `firstChannelName` | string | No | Name of the first channel created; defaults to 'General' if omitted. |
| `messagingSettings` | object | No | Settings to configure messaging and mentions in the team. |
| `template_odata_bind` | string | No | URL reference to the team template. Common templates: 'standard' (default), 'educationClass', 'educationStaff', 'educationProfessionalLearningCommunity'. Format: https://graph.microsoft.com/v1.0/teamsTemplates('template-id') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Team From Group

**Slug:** `MICROSOFT_TEAMS_CREATE_TEAM_FROM_GROUP`

Tool to create a new team under an existing Microsoft 365 group. Use when you need to add Teams capabilities to an existing group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier (GUID) of the Microsoft 365 group to create a team from. Note: The group must not already have a team associated with it, and newly created groups may need time to propagate (up to 15 minutes). |
| `funSettings` | object | No | Settings to configure use of Giphy, memes, and stickers in the team. |
| `guestSettings` | object | No | Settings to configure whether guests can create, update, or delete channels in the team. |
| `memberSettings` | object | No | Settings to configure whether members can perform certain actions in the team. |
| `messagingSettings` | object | No | Settings to configure messaging and mentions in the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create time off

**Slug:** `MICROSOFT_TEAMS_CREATE_TIME_OFF`

Tool to create a new timeOff instance in a team's schedule. Use when you need to create approved time off for a team member (vacation, sick leave, etc.).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | ID of the user assigned to this timeOff entry. Must be a valid user GUID (e.g., '43f0c14d-bca8-421f-b762-c3d8dd75be1f'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `draftTimeOff` | object | No | Represents a version of the timeOff entry (shared or draft). |
| `sharedTimeOff` | object | No | Represents a version of the timeOff entry (shared or draft). |
| `isStagedForDeletion` | boolean | No | Indicates whether the timeOff is marked for deletion. This process is finalized when the schedule is shared. Defaults to false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create time off reason

**Slug:** `MICROSOFT_TEAMS_CREATE_TIME_OFF_REASON`

Tool to create a new time off reason in a team's schedule. Use when you need to define a new category for time off requests with a custom name and icon.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | Optional external identifier code for the time off reason. Must be unique within the team and alphanumeric, maximum 100 characters. Useful for integration with external systems. |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `iconType` | string ("none" | "car" | "calendar" | "running" | "plane" | "firstAid" | "doctor" | "notWorking" | "clock" | "juryDuty" | "globe" | "cup" | "phone" | "weather" | "umbrella" | "piggyBank" | "dog" | "cake" | "trafficCone" | "pin" | "sunny") | Yes | Icon to display for this time off reason in the schedule. Choose an icon that visually represents the reason type. |
| `isActive` | boolean | Yes | Whether this time off reason is active and available for use. Set to true to make it available immediately, false to create it as inactive. |
| `displayName` | string | Yes | Name of the time off reason as it will appear in the schedule (e.g., 'Vacation', 'Sick Leave', 'Personal Day'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create time off request

**Slug:** `MICROSOFT_TEAMS_CREATE_TIME_OFF_REQUEST`

Tool to create a new time off request in a team's schedule. Use when a team member needs to request time off for vacation, sick leave, or other absences.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `odata_type` | string | No | The OData type of the resource. Must be '#microsoft.graph.timeOffRequest'. |
| `endDateTime` | string | Yes | End date and time of the time off request in ISO 8601 format (e.g., '2026-03-16T00:00:00Z'). This represents when the requested time off ends. |
| `senderUserId` | string | Yes | The user ID of the person who is creating the time off request. Must be a valid user GUID in the organization (e.g., '484453b2-158e-479b-9200-07bdb8a3cd12'). |
| `startDateTime` | string | Yes | Start date and time of the time off request in ISO 8601 format (e.g., '2026-03-15T00:00:00Z'). This represents when the requested time off begins. |
| `timeOffReasonId` | string | Yes | The unique identifier of the time off reason. This ID references a predefined reason in the team's schedule (e.g., vacation, sick leave). Format typically starts with 'TOR_' followed by a GUID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create user online meeting

**Slug:** `MICROSOFT_TEAMS_CREATE_USER_ONLINE_MEETING`

Tool to create a new Microsoft Teams online meeting for a specific user. Use when you need to create an online meeting on behalf of a user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `subject` | string | Yes | The subject or title for the online meeting. |
| `user_id` | string | Yes | The unique identifier (user ID) of the user for whom to create the online meeting. Use 'me' for the authenticated user or a specific user GUID. |
| `externalId` | string | No | Custom external identifier for the meeting. Maximum length is 256 characters. |
| `endDateTime` | string | Yes | The meeting end date and time in ISO 8601 format (e.g., '2026-02-24T15:00:00.0000000Z'). Must be after startDateTime. |
| `isBroadcast` | boolean | No | Indicates whether this meeting is a Teams live event. Deprecated. |
| `startDateTime` | string | Yes | The meeting start date and time in ISO 8601 format (e.g., '2026-02-24T14:30:00.0000000Z'). |
| `meetingTemplateId` | string | No | The ID of the meeting template. Using a custom meeting template to create a meeting is a Teams Premium feature. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Call Operation

**Slug:** `MICROSOFT_TEAMS_DELETE_CALL_OPERATION`

Tool to delete a navigation property operation for a communications call. Use when you need to remove a specific commsOperation from a call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `call_id` | string | Yes | The unique identifier of the call. |
| `if_match` | string | No | ETag value for conditional deletion. Use this to ensure the operation hasn't changed since last retrieved. |
| `comms_operation_id` | string | Yes | The unique identifier of the commsOperation to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team channel

**Slug:** `MICROSOFT_TEAMS_DELETE_CHANNEL`

Tool to delete a channel from a Microsoft Teams team. Use when you need to permanently remove a channel. Note that the General channel cannot be deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team that contains the channel. Must be a valid GUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the channel hasn't been modified since it was last retrieved. |
| `channel_id` | string | Yes | The unique identifier of the channel to delete. Can be in thread format (e.g., '19:72737dcaab464ad99ab3ffda590e1854@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team schedule day note

**Slug:** `MICROSOFT_TEAMS_DELETE_DAY_NOTE`

Tool to delete a day note from a Microsoft Teams schedule. Use when you need to remove a day note from a specific date in the team schedule. The If-Match header with ETag value is required for deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team. Must be a valid GUID. |
| `if_match` | string | Yes | ETag value for conditional delete (REQUIRED). Use this to ensure the day note hasn't been modified since it was retrieved. Obtain this value from a GET request to the day note. |
| `day_note_id` | string | Yes | The unique identifier of the dayNote to delete. Typically starts with 'NOTE_' prefix. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete open shift

**Slug:** `MICROSOFT_TEAMS_DELETE_OPEN_SHIFT`

Tool to delete an open shift from a Microsoft Teams schedule. Use when you need to remove an unfilled shift from the team schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team that contains the schedule. |
| `if_match` | string | No | Optional ETag value for conditional delete. Use this to ensure the open shift hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `open_shift_id` | string | Yes | The unique identifier of the open shift to delete. Format: 'OPNSHFT_' followed by a GUID (e.g., 'OPNSHFT_ca2655aa-2fc8-45dc-8c94-a6fcfc8924f0'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team scheduling group

**Slug:** `MICROSOFT_TEAMS_DELETE_SCHEDULING_GROUP`

Tool to delete a scheduling group from a Microsoft Teams team schedule. Use this when you need to remove a scheduling group from a specific team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team that contains the schedule. |
| `if_match` | string | No | Optional ETag value for conditional delete. Use this to ensure the scheduling group hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `scheduling_group_id` | string | Yes | The unique identifier of the scheduling group to delete. This can be a GUID or a tag-based ID (e.g., 'TAG_6685f5de-54e3-47e7-b1fb-436f35b67b2c'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete team schedule shift

**Slug:** `MICROSOFT_TEAMS_DELETE_SHIFT`

Tool to delete a shift from a Microsoft Teams team schedule. Use when you need to permanently remove a scheduled shift.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the shift hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `shift_id` | string | Yes | The unique identifier of the shift to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Soft-delete Teams channel message

**Slug:** `MICROSOFT_TEAMS_DELETE_SOFT_MESSAGE`

Tool to soft-delete a message in a Teams channel. Use when you need to remove a message without permanently deleting it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team containing the channel. |
| `channel_id` | string | Yes | The unique identifier of the channel within the team. |
| `message_id` | string | Yes | The unique identifier of the message to soft-delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete channel tab

**Slug:** `MICROSOFT_TEAMS_DELETE_TAB`

Tool to delete a tab from a Microsoft Teams channel. Use when you need to permanently remove a tab from a channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tab_id` | string | Yes | Unique identifier of the tab to delete from the channel. This is the tab's GUID (e.g., '6fa06ee5-1f61-4edb-ba26-bf59d64db56d'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `if_match` | string | No | Optional ETag value for conditional delete. Use this to ensure the tab hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `channel_id` | string | Yes | Unique identifier of the channel within the team. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or non-encoded format (e.g., '19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Teams team

**Slug:** `MICROSOFT_TEAMS_DELETE_TEAM`

Tool to delete a Microsoft Teams team. Use after confirming the target team ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete time off

**Slug:** `MICROSOFT_TEAMS_DELETE_TIME_OFF`

Tool to delete a timeOff from a team's schedule. Use when you need to remove a scheduled time off entry from a team member's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the timeOff hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `timeoff_id` | string | Yes | Unique identifier of the timeOff to delete. This is the ID of the timeOff resource in the team's schedule. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete time off reason

**Slug:** `MICROSOFT_TEAMS_DELETE_TIME_OFF_REASON`

Tool to delete a time off reason from a team's schedule. Use when you need to remove a time off reason. Note: This operation marks the time off reason as inactive rather than permanently deleting it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the time off reason hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `time_off_reason_id` | string | Yes | Unique identifier of the time off reason to delete. This is the ID of the timeOffReason resource in the team's schedule. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete time off request

**Slug:** `MICROSOFT_TEAMS_DELETE_TIME_OFF_REQUEST`

Tool to delete a time off request from a Microsoft Teams team schedule. Use when you need to permanently remove a time off request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the time off request hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `timeOffRequest_id` | string | Yes | The unique identifier of the time off request to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete User Online Meeting

**Slug:** `MICROSOFT_TEAMS_DELETE_USER_ONLINE_MEETING`

Tool to delete an online meeting for a user. Use when you need to permanently remove an online meeting from a user's calendar.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique identifier of the user who owns the online meeting. |
| `if_match` | string | No | ETag value for conditional delete. Use this to ensure the meeting hasn't been modified since it was retrieved. If the ETag doesn't match, the delete will fail. |
| `onlineMeeting_id` | string | Yes | The unique identifier of the online meeting to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get call operation

**Slug:** `MICROSOFT_TEAMS_GET_CALL_OPERATION`

Tool to get a specific commsOperation for a call. Use to check the status of long-running call operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | OData $expand query parameter to include related resources inline. Comma-separated list of relationships. |
| `select` | string | No | OData $select query parameter to specify which properties to include in the response. Comma-separated list of property names (e.g., 'id,status,resultInfo'). |
| `call_id` | string | Yes | The unique identifier of the call. |
| `commsOperation_id` | string | Yes | The unique identifier of the commsOperation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get team channel

**Slug:** `MICROSOFT_TEAMS_GET_CHANNEL`

Tool to get a specific channel in a team. Use after obtaining valid team and channel IDs to fetch channel details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand and include in the response (e.g., 'members', 'tabs'). |
| `select` | string | No | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Empty string returns all default properties. Use to optimize performance by excluding expensive properties like 'email' and 'summary'. |
| `team_id` | string | Yes | The unique identifier of the Microsoft Teams team. Must be a valid GUID (e.g., '893075dd-2487-4122-925f-022c42e20265'). |
| `channel_id` | string | Yes | The unique identifier of the channel within the specified team. Must be in thread format (e.g., '19:561fbdbbfca848a484f0a6f00ce9dbbd@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Teams channel message

**Slug:** `MICROSOFT_TEAMS_GET_CHANNEL_MESSAGE`

Retrieves a specific message from a Microsoft Teams channel using its Team, Channel, and Message IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | ID of the Team containing the channel where the message is located. |
| `channel_id` | string | Yes | ID of the Channel within the specified Team that contains the message. |
| `message_id` | string | Yes | ID of the message to retrieve from the channel. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get channel message reply

**Slug:** `MICROSOFT_TEAMS_GET_CHANNEL_MESSAGE_REPLY`

Tool to retrieve a single reply to a message in a channel. Use when you need to get details of a specific reply message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | Expand related entities. Use to include additional related information in the response. |
| `select` | array | No | Select specific properties to be returned. If not specified, all properties are returned. |
| `team_id` | string | Yes | Unique identifier of the Microsoft Teams team. |
| `reply_id` | string | Yes | Unique identifier of the reply message to retrieve. |
| `channel_id` | string | Yes | Unique identifier of the channel within the team. |
| `message_id` | string | Yes | Unique identifier of the channel message that contains the reply. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get chat

**Slug:** `MICROSOFT_TEAMS_GET_CHAT`

Tool to retrieve a single chat by ID. Use when you need to get details about a specific chat.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | List of related entities to expand in the response. Supported values: 'members' (includes all chat members), 'lastMessagePreview' (includes preview of the last message). Leave empty to return only basic chat properties. |
| `chat_id` | string | Yes | The unique identifier of the chat to retrieve. This is the chat's ID in the format '19:abc123def456@thread.v2' for group chats or '19:user1_user2@unq.gbl.spaces' for one-on-one chats. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get chat last message preview (Deprecated)

**Slug:** `MICROSOFT_TEAMS_GET_CHAT_LAST_MESSAGE_PREVIEW`

DEPRECATED: Use MICROSOFT_TEAMS_GET_CHAT instead. Tool to get lastMessagePreview from a chat. Use when you need to see the preview of the most recent message in a specific chat.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | The unique identifier of the chat. This is a composite ID formatted like '19:abc123def456@thread.v2' for group chats or meeting chats. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get chat member

**Slug:** `MICROSOFT_TEAMS_GET_CHAT_MEMBER`

Tool to get a specific conversation member from a Microsoft Teams chat. Use when you need details about a specific chat participant.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | Unique identifier of the Microsoft Teams chat. Format: '19:xxxxx@thread.v2' |
| `conversationMember_id` | string | Yes | Unique identifier of the conversation member. This is an opaque string returned by Microsoft Graph API that should not be parsed or assumed by clients. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get chat message

**Slug:** `MICROSOFT_TEAMS_GET_CHAT_MESSAGE`

Tool to get a specific chat message. Use after confirming chat_id and message_id.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | Unique identifier of the Microsoft Teams chat that contains the message. |
| `message_id` | string | Yes | Unique identifier of the chat message to retrieve. This is a numeric timestamp string (milliseconds since epoch) returned by the Microsoft Graph API when listing messages. Do not include underscores or other separators. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get day note

**Slug:** `MICROSOFT_TEAMS_GET_DAY_NOTE`

Tool to retrieve a specific day note from a team's schedule. Use when you need to view notes for a specific date in a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | Expand related entities inline. Use to include related resources in the response. |
| `select` | array | No | Select specific properties to include in the response. Available properties: id, dayNoteDate, sharedDayNote, draftDayNote. |
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team. |
| `daynote_id` | string | Yes | The unique identifier of the day note to retrieve. Format: NOTE_<guid> |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get channel files folder

**Slug:** `MICROSOFT_TEAMS_GET_FILES_FOLDER`

Tool to get the files folder (DriveItem) metadata for a specific channel in a Microsoft Teams team. Use when you need to access file storage information for a channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,name,webUrl'). |
| `group_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams group/team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `channel_id` | string | Yes | Unique identifier of the channel within the specified team. Must be in thread format (e.g., '19:3442cabe1ce346538fec728d83abe8a5@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get group team channel (Deprecated)

**Slug:** `MICROSOFT_TEAMS_GET_GROUP_TEAM_CHANNEL`

DEPRECATED: Use MICROSOFT_TEAMS_GET_CHANNEL instead. Tool to get a specific channel from a group's team. Use when you have a group ID and channel ID to fetch channel details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand and include in the response. |
| `select` | string | No | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Leave empty to return all default properties. |
| `group_id` | string | Yes | The unique identifier (GUID) of the group. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `channel_id` | string | Yes | The unique identifier of the channel within the specified group's team. Must be in thread format (e.g., '19:04e881b862664873b6e97eeeb6961e5e@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Group Team Operation Status

**Slug:** `MICROSOFT_TEAMS_GET_GROUP_TEAM_OPERATION`

Tool to retrieve the status of a Teams async operation using groupId and operationId. Use when you need to poll and track the progress of long-running operations like team creation or archiving for a Microsoft 365 group.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | OData $expand query parameter to include related entities inline. Comma-separated list of relationships. |
| `select` | string | No | OData $select query parameter to specify which properties to include in the response. Comma-separated list of property names. |
| `group_id` | string | Yes | The unique identifier of the Microsoft 365 group. |
| `operation_id` | string | Yes | The unique identifier of the teamsAsyncOperation. Obtained from the Location header of the async operation response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Profile

**Slug:** `MICROSOFT_TEAMS_GET_MY_PROFILE`

Tool to retrieve a user's profile (id/UPN/mail/displayName). Supports both delegated auth (use user_id='me') and application-only auth (specify user ID/UPN). Use when operations require user identity information (e.g., chat creation).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `select` | string | No | Comma-separated list of properties to include in the response. Maps to the $select query parameter. If not specified, returns id, userPrincipalName, mail, and displayName by default. |
| `user_id` | string | No | The user's unique identifier (GUID) or user principal name (email). Use 'me' for delegated auth (currently signed-in user) or specify a user ID/UPN for application-only (S2S) auth. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get offer shift request

**Slug:** `MICROSOFT_TEAMS_GET_OFFER_SHIFT_REQUEST`

Tool to get a specific offer shift request from a Microsoft Teams schedule. Use when you need to retrieve details of a single offer shift request by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `offer_shift_request_id` | string | Yes | Unique identifier of the offer shift request to retrieve. Must start with 'SREQ_' prefix (e.g., 'SREQ_6578bed4-f09c-4d6e-9d2a-ec86d2fe8244'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get online meeting

**Slug:** `MICROSOFT_TEAMS_GET_ONLINE_MEETING`

Tool to retrieve details of a specific Microsoft Teams online meeting by its ID. Use when you need to get the properties and relationships of an existing meeting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | Expand related entities to include additional information in the response. |
| `select` | array | No | Select specific properties to be returned. Allows filtering the response to include only the fields you need. |
| `user_id` | string | No | The user ID (UPN or object ID) of the meeting organizer. Required for S2S (client credentials) authentication. Not needed for delegated authentication. |
| `meeting_id` | string | Yes | The unique identifier (ID) of the online meeting to retrieve. This is the meeting's ID in the format returned when creating a meeting. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get open shift

**Slug:** `MICROSOFT_TEAMS_GET_OPEN_SHIFT`

Tool to get a specific open shift from a Microsoft Teams schedule. Use when you need to retrieve details about a particular unassigned open shift by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,schedulingGroupId,sharedOpenShift'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `openshift_id` | string | Yes | Unique identifier of the open shift to retrieve. Typically in the format 'OPNSHFT_<guid>' (e.g., 'OPNSHFT_36878d77-7319-4c0e-9071-28f1f6a231c0'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get open shift change request

**Slug:** `MICROSOFT_TEAMS_GET_OPEN_SHIFT_CHANGE_REQUEST`

Tool to retrieve a specific open shift change request from a Microsoft Teams team's schedule. Use when you need to get details about a particular open shift request including its state, sender, and manager actions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,openShiftId'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `open_shift_change_request_id` | string | Yes | Unique identifier of the openShiftChangeRequest to retrieve. This is the ID of the open shift change request resource in the team's schedule (e.g., 'SREQ_ba70828a-6add-43f6-9fc6-57eaddcfd0ef'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Presence

**Slug:** `MICROSOFT_TEAMS_GET_PRESENCE`

Tool to get a specific user's presence information. Use when checking availability status, activity, or work location for a particular user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand inline (e.g., 'statusMessage'). If unspecified, no relationships are expanded. |
| `select` | string | No | Comma-separated OData property names to include in the response (e.g., 'availability,activity'). If unspecified, all properties are returned. |
| `user_id` | string | Yes | The unique identifier (GUID) or user principal name (UPN) of the user whose presence to retrieve. Use 'me' to get the authenticated user's presence. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get primary channel

**Slug:** `MICROSOFT_TEAMS_GET_PRIMARY_CHANNEL`

Tool to get the default (General) channel of a team. Use when you need to access the primary channel without knowing its channel ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand inline (e.g., 'members', 'tabs'). Note: Expanding some relationships may require additional permissions. |
| `select` | string | No | Comma-separated list of properties to include in the response (e.g., 'id,displayName,description'). Empty returns all default properties. |
| `team_id` | string | Yes | The unique identifier of the Microsoft Teams team. Must be a valid GUID (e.g., '02bd9fd6-8f93-4758-87c3-1fb73740a315'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get schedule

**Slug:** `MICROSOFT_TEAMS_GET_SCHEDULE`

Tool to retrieve the properties and relationships of a schedule object. Use when you need to get schedule configuration details for a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of related entities to expand inline (e.g., 'shifts', 'timesOff'). Leave empty to get only the schedule properties without relationships. |
| `select` | string | No | Comma-separated list of properties to include in the response (e.g., 'id,enabled,timeZone'). Leave empty to get all properties. |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). This is the team whose schedule you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get scheduling group

**Slug:** `MICROSOFT_TEAMS_GET_SCHEDULING_GROUP`

Tool to retrieve a specific scheduling group from a Microsoft Teams team's schedule. Use when you need to get details about a scheduling group including its members, status, and metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,userIds'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `schedulinggroup_id` | string | Yes | Unique identifier of the scheduling group to retrieve. This can be a GUID or a tag-based ID (e.g., 'TAG_f914d037-00a3-4ba4-b712-ef178cbea263'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get shift

**Slug:** `MICROSOFT_TEAMS_GET_SHIFT`

Tool to retrieve a shift by ID from a Microsoft Teams team schedule. Use when you need to get details of a specific shift assignment.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand inline in the response. |
| `select` | string | No | Comma-separated list of properties to include in the response (e.g., 'id,userId,sharedShift'). Use to optimize performance by requesting only needed properties. |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `shift_id` | string | Yes | The unique identifier of the shift to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get swap shifts change request

**Slug:** `MICROSOFT_TEAMS_GET_SWAP_SHIFTS_CHANGE_REQUEST`

Tool to get a specific swap shift change request from a Microsoft Teams schedule. Use when you need to retrieve details of a single swap shift change request by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `swap_shifts_change_request_id` | string | Yes | Unique identifier of the swap shift change request to retrieve. Must start with 'SREQ_' prefix (e.g., 'SREQ_99721bb2-ec50-4615-ac20-d22c3710f762'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get channel tab

**Slug:** `MICROSOFT_TEAMS_GET_TAB`

Tool to get a specific tab in a Microsoft Teams channel. Use when you need to retrieve details of a particular tab.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities. Comma-separated list of relationships to include inline in the response. Use 'teamsApp' to include full Teams app details. |
| `select` | string | No | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,webUrl'). |
| `tab_id` | string | Yes | The unique identifier of the tab to retrieve. |
| `team_id` | string | Yes | The unique identifier of the team. Must be a valid GUID format. |
| `channel_id` | string | Yes | The unique identifier of the channel. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or plain format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Team

**Slug:** `MICROSOFT_TEAMS_GET_TEAM_FROM_GROUP`

Tool to get a specific team. Use when full details of one team by ID are needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | OData $expand query parameter to include related resources inline. Comma-separated list of relationships (e.g., 'channels', 'members', 'operations'). Note: Expanding some relationships may require additional permissions. |
| `select` | string | No | OData $select query parameter to specify which properties to include in the response. Comma-separated list of property names (e.g., 'id,displayName,description'). |
| `group_id` | string | Yes | GUID of the Microsoft 365 group that has an associated team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get team member

**Slug:** `MICROSOFT_TEAMS_GET_TEAM_MEMBER`

Tool to get a specific conversation member from a team. Use when retrieving details about a team member by their membership ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team. |
| `membership_id` | string | Yes | The unique identifier of the conversation member (membership ID). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Team Operation Status

**Slug:** `MICROSOFT_TEAMS_GET_TEAM_OPERATION`

Tool to retrieve the status of a Teams async operation using teamId and operationId. Use when you need to poll and track the progress of long-running operations like team creation or archiving. Microsoft recommends waiting at least 30 seconds between polling requests.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team associated with the operation. |
| `operation_id` | string | Yes | The unique identifier of the teamsAsyncOperation. Obtained from the Location header of the async operation response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get installed app in team

**Slug:** `MICROSOFT_TEAMS_GET_TEAMS_APP_DEFINITION`

Tool to get an installed app in a Microsoft Teams team. Use when you need to retrieve details of a specific app installation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. Supports 'teamsApp', 'teamsAppDefinition'. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,consentedPermissionSet'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '12345678-1234-1234-1234-123456789abc'). |
| `app_installation_id` | string | Yes | Unique identifier of the app installation. This is a base64-encoded string returned by Microsoft Graph API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Team Template (Deprecated)

**Slug:** `MICROSOFT_TEAMS_GET_TEAM_TEMPLATE`

DEPRECATED: Use MICROSOFT_TEAMS_GET_TEAM_FROM_GROUP with expand="template" instead. Tool to get the template used to create a team. Use when you need to retrieve the template information for a specific team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team. Must be a valid GUID format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get time off by ID

**Slug:** `MICROSOFT_TEAMS_GET_TIME_OFF`

Tool to retrieve a specific time off entry from a Microsoft Teams team's schedule by ID. Use when you need to get details about a particular time off period including its dates, reason, and status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedTimeOff'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `timeoff_id` | string | Yes | Unique identifier of the timeOff entry to retrieve. This is the ID of the timeOff resource in the team's schedule (e.g., 'SHFT_d3b1de89-60b8-4e61-81b7-c55ab222c1ab'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get time off reason

**Slug:** `MICROSOFT_TEAMS_GET_TIME_OFF_REASON`

Tool to get a specific time off reason from a team's schedule. Use when you need to retrieve details about a time off reason including its display name, icon type, and active status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `time_off_reason_id` | string | Yes | Unique identifier of the time off reason to retrieve. This is the ID of the timeOffReason resource in the team's schedule (typically starts with 'TOR_' followed by a GUID). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get time off request

**Slug:** `MICROSOFT_TEAMS_GET_TIME_OFF_REQUEST`

Tool to retrieve a specific time off request from a team's schedule. Use when you need to check the status or details of a time off request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `time_off_request_id` | string | Yes | The unique identifier of the time off request to retrieve. Format typically starts with 'SREQ_' followed by a GUID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get user chat

**Slug:** `MICROSOFT_TEAMS_GET_USER_CHAT`

Tool to retrieve a specific chat for a user. Use when you need to get details about a chat that a specific user is part of.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | Expand related entities. Supported values: 'members' (includes all chat members), 'lastMessagePreview' (includes preview of the last message). |
| `select` | array | No | Select properties to be returned. Specify which properties to include in the response to optimize the query. |
| `chat_id` | string | Yes | The unique identifier of the chat to retrieve. This is the chat's ID in the format '19:abc123def456@thread.v2' for group chats or '19:user1_user2@unq.gbl.spaces' for one-on-one chats. |
| `user_id` | string | Yes | The unique identifier of the user. Can be the user's UPN (user principal name) or the user's object ID (GUID). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get User Teamwork

**Slug:** `MICROSOFT_TEAMS_GET_USER_TEAMWORK`

Tool to get userTeamwork settings for a specified user, including Microsoft Teams region and locale. Use when you need to determine user's Teams configuration or regional settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | string | No | Comma-separated list of relationships to expand inline. Maps to the $expand query parameter. |
| `select` | string | No | Comma-separated list of properties to include in the response. Maps to the $select query parameter. |
| `user_id` | string | Yes | The unique identifier of the user. Can be the user's GUID or user principal name (UPN). Use 'me' to query the authenticated user's teamwork settings. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Hide chat for user

**Slug:** `MICROSOFT_TEAMS_HIDE_CHAT_FOR_USER`

Tool to hide a Microsoft Teams chat for a specific user. Use when you need to hide a chat from a user's chat list. Note: The chat is automatically unhidden if an action such as sending a message is taken at the chat level.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | object | Yes | User identity containing the user ID and tenant ID. In delegated mode, users can only hide a chat for themselves. |
| `chat_id` | string | Yes | The unique identifier of the chat to hide. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user's associated teams

**Slug:** `MICROSOFT_TEAMS_LIST_ASSOCIATED_TEAMS`

Tool to list teams that a user is associated with in Microsoft Teams. Use when you need to get teams where a user is either a direct member or a member of a shared channel hosted in the team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | User ID or user principal name (UPN) to query associated teams for. Use 'me' to query the authenticated user's associated teams. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List channel tabs

**Slug:** `MICROSOFT_TEAMS_LIST_CHANNEL_TABS`

Tool to list tabs from a Microsoft Teams channel. Use when you need to retrieve all tabs configured in a specific channel. Note: The Files tab (native to channels) is not returned by this API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Use to limit the number of tabs returned in the response. |
| `skip` | integer | No | Skip the first n items. Use with 'top' for pagination to retrieve subsequent pages of tabs. |
| `count` | boolean | No | Include count of items in the response. When true, adds @odata.count with total number of tabs. |
| `expand` | string | No | Expand related entities. Comma-separated list of relationships to include inline in the response. Use 'teamsApp' to include full Teams app details. |
| `filter` | string | No | Filter items by property values. Use OData filter syntax (e.g., 'teamsApp/id eq "com.microsoft.teamspace.tab.planner"'). |
| `search` | string | No | Search items by search phrases. Use OData search syntax to find tabs matching search criteria. |
| `select` | string | No | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,webUrl'). |
| `orderby` | string | No | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc' (e.g., 'displayName asc'). |
| `team_id` | string | Yes | The unique identifier (GUID) of the team. This is the team ID that contains the channel. |
| `channel_id` | string | Yes | The unique identifier of the channel. Can be URL-encoded (e.g., '19%3A04e881b862664873b6e97eeeb6961e5e%40thread.tacv2') or plain format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List chats (Deprecated)

**Slug:** `MICROSOFT_TEAMS_LIST_CHAT`

DEPRECATED: Use MICROSOFT_TEAMS_CHATS_GET_ALL_CHATS instead. Tool to list chats that the user is part of. Use when retrieving the list of chats for a user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum allowed value is 50. |
| `skip` | integer | No | Skip the first n items |
| `count` | boolean | No | Include count of items in the response |
| `expand` | array | No | Expand related entities. Currently supports 'members' and 'lastMessagePreview'. |
| `filter` | string | No | Filter items by property values (do not include '$filter='). Supports filtering by chatType, installedApps. Example: "chatType eq 'group'" or "installedApps/any(a:a/teamsApp/id eq 'app-id')" |
| `search` | string | No | Search items by search phrases |
| `select` | array | No | Select properties to be returned. If omitted, default properties are returned. |
| `orderby` | string | No | Order items by property values. Currently supports 'lastMessagePreview/createdDateTime desc' in descending order. Ascending order is not supported. |
| `user_id` | string | No | The user ID for whom to list chats. For delegated auth, use 'me' or a specific user ID. For application-only auth (S2S), you MUST provide a specific user ID (GUID format). Default is 'me'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List chat members (Deprecated)

**Slug:** `MICROSOFT_TEAMS_LIST_CHAT_MEMBERS`

DEPRECATED: Use MICROSOFT_TEAMS_MICROSOFT_TEAMS_USERS_CHATS_LIST_MEMBERS instead. Tool to list members of a Microsoft Teams chat. Use when you need to retrieve the members of a specific one-on-one chat, group chat, or meeting chat.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | GUID of the Microsoft Teams chat to retrieve members from. This is the chat ID returned by Graph API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Communications Call Operations

**Slug:** `MICROSOFT_TEAMS_LIST_COMMUNICATIONS_CALLS_OPERATIONS`

Tool to list operations on a Microsoft Teams call. Use when you need to retrieve the status of long-running operations like adding large gallery views, recording, or playing prompts on an active call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of operations to return in a single response. Default is 50 if not specified. |
| `skip` | integer | No | Number of operations to skip before returning results. Used for pagination. |
| `count` | boolean | No | Include count of total items in the response. When true, adds @odata.count to response. |
| `expand` | string | No | Expand related entities inline. Comma-separated list of relationships to expand. |
| `filter` | string | No | Filter items by property values using OData filter syntax. Example: "status eq 'completed'". |
| `search` | string | No | Search items by search phrases. Filters operations based on matching text. |
| `select` | string | No | Select specific properties to include in response. Comma-separated list of property names. Example: 'id,status'. |
| `call_id` | string | Yes | The unique identifier of the call. |
| `orderby` | string | No | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc'. Example: 'id asc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List deleted teams

**Slug:** `MICROSOFT_TEAMS_LIST_DELETED_TEAMS`

Tool to list deleted Microsoft Teams and their properties. Use when you need to retrieve a list of teams that have been deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax. |
| `search` | string | No | Search items by search phrases. Use this to find deleted teams by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id'). |
| `orderby` | string | No | Order items by property values (e.g., 'id' or 'id desc'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List group team channels (Deprecated)

**Slug:** `MICROSOFT_TEAMS_LIST_GROUP_TEAM_CHANNELS`

DEPRECATED: Use MICROSOFT_TEAMS_LIST_CHANNELS instead. Tool to list channels from a group's associated team. Use when you have a group ID and need to retrieve its team's channels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Use to limit the number of channels returned in the response. |
| `skip` | integer | No | Skip the first n items. Use with 'top' for pagination to retrieve subsequent pages of channels. |
| `count` | boolean | No | Include count of items in the response. When true, adds @odata.count with total number of channels. |
| `expand` | string | No | Expand related entities. Comma-separated list of relationships to include inline in the response. |
| `filter` | string | No | Filter items by property values. Use OData filter syntax (e.g., 'membershipType eq 'standard''). |
| `search` | string | No | Search items by search phrases. Use OData search syntax to find channels matching search criteria. |
| `select` | string | No | Select properties to be returned. Comma-separated list of property names (e.g., 'id,displayName,description'). |
| `orderby` | string | No | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc' (e.g., 'displayName asc'). |
| `group_id` | string | Yes | The unique identifier (GUID) of the group. This is the group ID, not the team ID. Use this to list channels for a group's associated team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Group Team Operations

**Slug:** `MICROSOFT_TEAMS_LIST_GROUP_TEAM_OPERATIONS`

Tool to list operations on a group's team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific group's team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier of the group. This is the group ID (GUID) whose team operations you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team incoming channels

**Slug:** `MICROSOFT_TEAMS_LIST_INCOMING_CHANNELS`

Tool to list incoming channels shared with a Microsoft Teams team. Use when you need to view channels from other teams that have been shared with this team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'membershipType eq "shared"' or 'startswith(displayName, "Sales")'). This is one of only two query parameters officially supported by the Microsoft Graph API for this endpoint. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,description'). This is one of only two query parameters officially supported by the Microsoft Graph API for this endpoint. |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). Use MICROSOFT_TEAMS_LIST_USER_JOINED_TEAMS to get team IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List installed apps in team

**Slug:** `MICROSOFT_TEAMS_LIST_INSTALLED_APPS`

Tool to list apps installed in a Microsoft Teams team. Use when you need to retrieve the collection of apps installed in a specific team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. Supports 'teamsApp', 'teamsAppDefinition'. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'teamsApp/externalId eq \'cf1ba4c7-f94e-4d80-ba90-5594b641a8ee\''). |
| `search` | string | No | Search items by search phrases. Use this to find apps by keywords in their name or description. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,consentedPermissionSet'). |
| `orderby` | string | No | Order items by property values (e.g., 'displayName' or 'displayName desc'). |
| `group_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams group/team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List channel message replies

**Slug:** `MICROSOFT_TEAMS_LIST_MESSAGE_REPLIES`

Tool to list all replies to a specific message in a Microsoft Teams channel. Use when you need to retrieve the conversation thread for a particular message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Useful for pagination and limiting result size. |
| `skip` | integer | No | Skip the first n items. Used for pagination to retrieve items beyond the initial set. |
| `count` | boolean | No | Include count of items in the response. When true, adds a total count of matching replies. |
| `expand` | string | No | Expand related entities to include additional data. |
| `filter` | string | No | Filter items by property values using OData syntax. Example: "messageType eq 'message'" or "from/user/displayName eq 'John'" |
| `search` | string | No | Search items by search phrases. Use this to find replies containing specific keywords or phrases. |
| `select` | string | No | Select specific properties to be returned (comma-separated). Example: 'id,body,from,createdDateTime' |
| `orderby` | string | No | Order items by property values. Example: 'createdDateTime desc' or 'lastModifiedDateTime' |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. |
| `channel_id` | string | Yes | Unique identifier of the channel within the team. |
| `message_id` | string | Yes | Unique identifier of the parent message for which to retrieve replies. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List offer shift requests

**Slug:** `MICROSOFT_TEAMS_LIST_OFFER_SHIFT_REQUESTS`

Tool to list offer shift requests in a Microsoft Teams schedule. Use when you need to retrieve all offer shift requests for a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'state eq "approved"'). |
| `search` | string | No | Search items by search phrases. Use this to find offer shift requests by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime'). |
| `orderby` | string | No | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user online meetings

**Slug:** `MICROSOFT_TEAMS_LIST_ONLINE_MEETINGS`

Tool to list online meetings for a specific user in Microsoft Teams. Use when you need to retrieve meetings for a user. NOTE: With delegated permissions, a filter parameter is typically required (e.g., by JoinWebUrl or joinMeetingId).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax. REQUIRED with application (S2S/client_credentials) permissions — the API returns 'Filter expression expected' without it. The only supported filter property with application permissions is JoinWebUrl, e.g. "JoinWebUrl eq 'https://teams.microsoft.com/l/meetup-join/...' ". With delegated permissions, joinMeetingId may also work as a filter. |
| `search` | string | No | Search items by search phrases. Use this to find online meetings by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,subject,joinWebUrl'). |
| `orderby` | string | No | Order items by property values (e.g., 'creationDateTime' or 'creationDateTime desc'). |
| `user_id` | string | No | User ID or user principal name (UPN) to query online meetings for. With delegated (OAuth2) auth, omit or use 'me' for the signed-in user. With application (S2S/client_credentials) auth, you MUST provide a specific user ID or UPN — 'me' does not work without a signed-in user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List open shift change requests

**Slug:** `MICROSOFT_TEAMS_LIST_OPEN_SHIFT_CHANGE_REQUESTS`

Tool to list open shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all open shift requests for a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'state eq "approved"'). |
| `search` | string | No | Search items by search phrases. Use this to find open shift requests by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,openShiftId'). |
| `orderby` | string | No | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List open shifts

**Slug:** `MICROSOFT_TEAMS_LIST_OPEN_SHIFTS`

Tool to list open shifts in a Microsoft Teams schedule. Use when you need to retrieve all unassigned open shifts for a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'schedulingGroupId eq "TAG_123"'). |
| `search` | string | No | Search items by search phrases. Use this to find open shifts by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,schedulingGroupId,sharedOpenShift'). |
| `orderby` | string | No | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List People

**Slug:** `MICROSOFT_TEAMS_LIST_PEOPLE`

Retrieves a list of people relevant to a specified user from Microsoft Graph, noting the `search` parameter is only effective if `user_id` is 'me'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of items per page for pagination. Actual count may be less. Service default if unspecified. |
| `skip` | integer | No | Number of items to skip for pagination. |
| `filter` | string | No | OData $filter query using equality comparisons only. The People API has limited $filter support: only 'eq' operator and 'and' logical operator are supported. OData functions like startsWith, endsWith, and contains are NOT supported and will result in API errors. Supported filterable properties include: displayName, personType/class, personType/subclass. For partial/fuzzy name searches, use the 'search' parameter instead. |
| `search` | string | No | Fuzzy search query (name, email, or topic like 'topic:marketing'). Effective only when `user_id` is 'me'. |
| `select` | string | No | Comma-separated OData property names to include for each person (e.g., 'id,displayName'). If unspecified, a default set is returned. Note: 'emailAddresses' is not a valid property for microsoft.graph.person; use 'scoredEmailAddresses' instead. |
| `orderby` | string | No | OData $orderby expression to sort results (e.g., 'displayName asc'). The People API has limited $orderby support; primarily 'displayName' is supported. Results are already sorted by relevance by default when using $search. |
| `user_id` | string | No | Identifier of the user (e.g., 'me', 'adelev@contoso.com', or GUID) whose relevant people are to be retrieved. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List pinned messages

**Slug:** `MICROSOFT_TEAMS_LIST_PINNED_MESSAGES`

Tool to retrieve the list of pinned messages in a Microsoft Teams chat. Use when you need to get all messages that have been pinned in a specific chat conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `expand` | array | No | Expand related entities to include additional details. Use 'message' to retrieve the full message content along with pinned message info. |
| `chat_id` | string | Yes | Unique identifier of the Microsoft Teams chat. Use the Get All Chats action to retrieve valid chat IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team schedule day notes

**Slug:** `MICROSOFT_TEAMS_LIST_SCHEDULE_DAY_NOTES`

Tool to list all dayNotes from a team's schedule. Use when you need to retrieve all day notes or search/filter notes for specific dates in a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team. Must be a valid GUID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List scheduling groups

**Slug:** `MICROSOFT_TEAMS_LIST_SCHEDULING_GROUPS`

Tool to list scheduling groups in a team's schedule. Use when you need to retrieve all scheduling groups for shift management and organization.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Limits the number of scheduling groups returned in a single response. |
| `skip` | integer | No | Skip the first n items. Used for pagination to skip over already-retrieved results. |
| `count` | boolean | No | Include count of items in the response. When true, the response includes @odata.count with total number of scheduling groups. |
| `expand` | string | No | Expand related entities. Comma-separated list of navigation properties to expand and include in the response. |
| `filter` | string | No | Filter items by property values using OData filter syntax. Example: "isActive eq true" to get only active groups. |
| `search` | string | No | Search items by search phrases. Searches across scheduling group properties like displayName. |
| `select` | string | No | Select properties to be returned. Comma-separated list of property names to include in the response. |
| `orderby` | string | No | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc'. Example: 'displayName asc' or 'createdDateTime desc'. |
| `team_id` | string | Yes | The unique identifier (GUID) of the team. Required to identify which team's scheduling groups to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List shifts

**Slug:** `MICROSOFT_TEAMS_LIST_SHIFTS`

Tool to list shifts in a Microsoft Teams schedule. Use when you need to retrieve all shifts for a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'userId eq "5ca83ce7-291d-43b7-bf53-af79eef4bc1d"' or 'schedulingGroupId eq "TAG_123"'). Note: The filter parameter doesn't support using the same property more than once in a query. |
| `search` | string | No | Search items by search phrases. Use this to find shifts by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedShift'). |
| `orderby` | string | No | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List swap shifts change requests

**Slug:** `MICROSOFT_TEAMS_LIST_SWAP_SHIFTS_CHANGE_REQUESTS`

Tool to list swap shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all swap shift requests for a team's schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'state eq "approved"'). |
| `search` | string | No | Search items by search phrases. Use this to find swap shift requests by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,state,recipientActionDateTime'). |
| `orderby` | string | No | Order items by property values (e.g., 'createdDateTime' or 'createdDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team members

**Slug:** `MICROSOFT_TEAMS_LIST_TEAM_MEMBERS`

Tool to list members of a Microsoft Teams team. Use when you need to retrieve the members of a specific team, for auditing or notifications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Optional maximum number of members to return (1–999). |
| `filter` | string | No | Optional OData filter expression to filter members. Supports filtering by userId, displayName, or email. Example: "(microsoft.graph.aadUserConversationMember/userId eq '12345')" or "(microsoft.graph.aadUserConversationMember/email eq 'user@example.com')". |
| `select` | string | No | Optional comma-separated list of properties to include in the response. Example: "id,displayName,email" to return only those fields. |
| `team_id` | string | Yes | GUID of the Microsoft Teams team to retrieve members from. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Team Operations

**Slug:** `MICROSOFT_TEAMS_LIST_TEAM_OPERATIONS`

Tool to list operations from a team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team. This is the team ID (GUID) whose operations you want to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List teams permission grants

**Slug:** `MICROSOFT_TEAMS_LIST_TEAM_PERMISSION_GRANTS`

Tool to list all resource-specific permission grants for a team with support for filtering, pagination, and sorting. Use when you need to identify which Microsoft Entra apps have access to a team and their corresponding permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Teams templates

**Slug:** `MICROSOFT_TEAMS_LIST_TEAM_TEMPLATES`

Tool to list available Microsoft Teams templates. Use when retrieving templates for team creation or customization workflows.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of templates to return (1–999). |
| `skip` | integer | No | Number of templates to skip for pagination. |
| `count` | boolean | No | If true, include a count of total matching templates in the response. |
| `expand` | string | No | Comma-separated list of navigation properties to expand and include in the response (e.g., 'definitions'). Use 'definitions' to get full teamTemplateDefinition objects instead of just template IDs. |
| `filter` | string | No | OData filter expression to filter the templates (e.g., "startsWith(displayName,'Template')" or "definitions/any(a:a/languageTag eq 'en-US')"). |
| `select` | string | No | Comma-separated template properties to include in the response (e.g., 'id,displayName,description'). If empty, default properties are returned. |
| `orderby` | string | No | Comma-separated properties and directions to order the results by (e.g., 'displayName desc'). |
| `skipToken` | string | No | Token for server-side pagination. Use the value from @odata.nextLink in the previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team time off entries

**Slug:** `MICROSOFT_TEAMS_LIST_TIME_OFF`

Tool to list time off entries from a Microsoft Teams team's schedule. Use when you need to retrieve all time off periods for a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Use to limit the number of results returned. |
| `skip` | integer | No | Skip the first n items. Use for pagination to offset results. |
| `count` | boolean | No | Include count of items in the response. When true, the response includes the total count of matching items. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values. Use OData filter syntax (e.g., 'userId eq "user-guid"' or 'startDateTime ge 2024-01-01T00:00:00Z'). |
| `search` | string | No | Search items by search phrases. Use to find time off entries matching specific text. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,userId,sharedTimeOff'). |
| `orderby` | string | No | Order items by property values. Use OData orderby syntax (e.g., 'createdDateTime desc' or 'userId,startDateTime'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team schedule time off reasons

**Slug:** `MICROSOFT_TEAMS_LIST_TIME_OFF_REASONS`

Tool to get time off reasons from a team's schedule. Use when you need to retrieve the list of available time off reasons for scheduling in Microsoft Teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Use for limiting the number of results returned. |
| `skip` | integer | No | Skip the first n items. Use for pagination to skip a certain number of results. |
| `count` | boolean | No | Include count of items in the response. Set to true to get the total count of time off reasons. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'isActive eq true'). |
| `search` | string | No | Search items by search phrases. Use to find time off reasons by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,displayName,isActive'). |
| `orderby` | string | No | Order items by property values (e.g., 'displayName' or 'displayName desc'). |
| `team_id` | string | Yes | The unique identifier (GUID) of the team. Must be a valid UUID format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List time off requests

**Slug:** `MICROSOFT_TEAMS_LIST_TIME_OFF_REQUESTS`

Tool to retrieve a list of time off requests from a Microsoft Teams team's schedule. Use when you need to view all time off requests including their status (pending, approved, declined), dates, and associated users.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Maximum value is 999. |
| `skip` | integer | No | Skip the first n items for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | string | No | Expand related entities to include additional data in the response. |
| `filter` | string | No | Filter items by property values using OData query syntax (e.g., 'state eq "pending"' or 'startDateTime ge 2024-01-01T00:00:00Z'). |
| `search` | string | No | Search items by search phrases. Use this to find time off requests by keywords. |
| `select` | string | No | Select specific properties to be returned (comma-separated, e.g., 'id,startDateTime,endDateTime,state'). |
| `orderby` | string | No | Order items by property values (e.g., 'startDateTime' or 'startDateTime desc'). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user's chat members

**Slug:** `MICROSOFT_TEAMS_LIST_USER_CHAT_MEMBERS`

Tool to list members of a specific chat for a user in Microsoft Teams. Use when you need to retrieve the members of a specific user's chat, whether it's a one-on-one chat, group chat, or meeting chat.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | The unique identifier of the chat. This is the chat ID returned by Graph API. |
| `user_id` | string | Yes | The unique identifier of the user. Can be the user's ID (GUID), user principal name (UPN/email), or 'me' for the authenticated user. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user chat messages

**Slug:** `MICROSOFT_TEAMS_LIST_USER_CHAT_MESSAGES`

Tool to retrieve messages from a specific chat for a given user. Use when you need to access chat messages through the user context.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of messages to retrieve. Microsoft Graph enforces a maximum limit of 50 per request. |
| `skip` | integer | No | Number of messages to skip for pagination. |
| `count` | boolean | No | Include count of items in the response. |
| `expand` | array | No | Expand related entities (e.g., 'replies' to include message replies). |
| `filter` | string | No | OData filter expression for filtering messages by property values (do not include '$filter=' prefix). |
| `search` | string | No | Search items by search phrases. |
| `select` | array | No | Select specific properties to be returned in the response. |
| `chat_id` | string | Yes | Unique Microsoft Graph chat identifier. This is the chat ID returned by Graph API. |
| `orderby` | string | No | Order items by property values (comma-separated list of properties). |
| `user_id` | string | Yes | Unique identifier (GUID or UPN) of the user whose chats to access. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List user joined teams

**Slug:** `MICROSOFT_TEAMS_LIST_USER_JOINED_TEAMS`

Tool to list the Teams that a specified user is a direct member of (joined teams). Use for access/membership audits when enumerating team members is access-restricted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | User ID or user principal name (UPN) to query joined teams for. Use 'me' to query the authenticated user's joined teams. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List users

**Slug:** `MICROSOFT_TEAMS_LIST_USERS`

Tool to list all users in the organization. Use when you need to retrieve directory users with filtering, pagination, and field selection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of users to return per page (1-999). Default is 100. For pagination beyond the first page, use the @odata.nextLink URL returned in the response. Note: Some tenants have restrictive page size policies that may reject explicit $top values. If such an error occurs, the request will be retried without $top. |
| `expand` | string | No | OData expand related entities (e.g., manager). |
| `filter` | string | No | OData filter to refine results by property values (e.g., startswith(displayName,'A')). |
| `search` | string | No | OData search query for advanced text search across user properties. Requires ConsistencyLevel: eventual header. Use double quotes for phrases (e.g., "displayName:John"). Not available in Azure AD B2C tenants. |
| `select` | string | No | Comma-separated list of user properties to include (e.g., id,displayName,mail). |
| `orderby` | string | No | OData orderby clause to sort results (e.g., displayName desc). When combined with $filter, advanced query capabilities (ConsistencyLevel: eventual header and $count=true) may be required and will be added automatically if needed. |
| `consistencyLevel` | string | No | Set to 'eventual' when using advanced queries with $count or $search. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark chat as read for user

**Slug:** `MICROSOFT_TEAMS_MARK_CHAT_READ_FOR_USER`

Tool to mark a chat as read for a specific user in Microsoft Teams. Use when you need to update the read status of a chat for a particular user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | object | Yes | The user for whom the chat should be marked as read. Must include both user ID and tenant ID. |
| `chat_id` | string | Yes | The unique identifier of the chat to mark as read. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Mark chat as unread for user

**Slug:** `MICROSOFT_TEAMS_MARK_CHAT_UNREAD_FOR_USER`

Marks a specific chat as unread for a user by setting the last read message timestamp. Use when you need to mark messages after a certain time as unread.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | object | Yes | The user for whom the chat should be marked as unread. Must include both user ID and tenant ID. |
| `chat_id` | string | Yes | The unique identifier of the chat to mark as unread. |
| `lastMessageReadDateTime` | string | No | The timestamp (ISO 8601 format) up to which the user has read messages. Messages after this timestamp will be marked as unread. If not provided, the chat will be marked as entirely unread. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Pin message in chat

**Slug:** `MICROSOFT_TEAMS_PIN_MESSAGE`

Tool to pin a message in a Microsoft Teams chat. Use when you need to highlight an important message for quick access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | The unique identifier of the chat where the message to be pinned is located. |
| `message_id` | string | Yes | The unique identifier of the message to pin. This is a numeric timestamp string (milliseconds since epoch) returned by the Microsoft Graph API when listing messages. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Reply to Teams channel message

**Slug:** `MICROSOFT_TEAMS_POST_MESSAGE_REPLY`

Sends a reply to an existing message, identified by `message_id`, within a specific `channel_id` of a given `team_id` in Microsoft Teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `content` | string | Yes | The body of the reply message. This can be plain text or HTML, as specified by the `content_type` field. |
| `subject` | string | No | The subject of the reply message, in plaintext. Typically null for channel message replies. |
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team that owns/hosts the channel. IMPORTANT: For shared channels, this must be the host team ID (the team that created the channel), not the team where you access the shared channel. If you receive a 404 'Channel does not belong to Team' error, you likely need to use the host team's ID instead. |
| `mentions` | array | No | List of entities (users, bots, teams, channels) mentioned in the reply. Each mention should include 'id' (numeric index), 'mentionText', and 'mentioned' (entity details). The 'id' corresponds to the 'id' attribute in HTML <at> tags in the message content. |
| `channel_id` | string | Yes | The unique identifier of the channel containing the message to reply to. Standard channels use format '19:{alphanumeric}@thread.tacv2'. For shared/private channels, the format may differ (e.g., '19:{guid}@thread.tacv2' or '19:{id}@unq.gbl.spaces'). The channel must belong to the team specified in team_id. |
| `importance` | string | No | Priority level of the reply message. Values: 'normal', 'high', or 'urgent'. If not specified, defaults to 'normal'. |
| `message_id` | string | Yes | The unique identifier of the specific message within the channel to which this reply is directed. |
| `attachments` | array | No | References to attached objects like files, tabs, meetings, or rich cards (e.g., adaptive cards). Each attachment should include 'id', 'contentType', 'contentUrl' or 'content', and optionally 'name' and 'thumbnailUrl'. |
| `content_type` | string | No | Specifies the format of the `content` field. Accepted values are 'text' for plain text content and 'html' for content with HTML formatting. Defaults to 'text' if not provided. |
| `hosted_contents` | array | No | Inline images or code snippets to embed in the reply. Each item requires a file and a temporary_id. Reference hosted content in the HTML body via <img src='../hostedContents/{temporary_id}/$value'> tags. Requires content_type to be 'html'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Provision channel email address

**Slug:** `MICROSOFT_TEAMS_PROVISION_CHANNEL_EMAIL`

Tool to provision an email address for a Microsoft Teams channel. Use when you need to enable email integration for a specific channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team that contains the channel. |
| `channel_id` | string | Yes | The unique identifier of the channel within the team to provision an email address for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove channel email address

**Slug:** `MICROSOFT_TEAMS_REMOVE_CHANNEL_EMAIL`

Tool to remove the email address of a channel in Microsoft Teams. Use when you need to disable email integration for a specific channel.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team that contains the channel. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `channel_id` | string | Yes | The unique identifier of the channel whose email address should be removed. Must be in thread format (e.g., '19:4889194729264b06aa92cadc3cbb8bf0@thread.tacv2'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove chat member

**Slug:** `MICROSOFT_TEAMS_REMOVE_CHAT_MEMBER`

Tool to remove a member from a Microsoft Teams chat. Use when you need to remove a user from a chat conversation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | The unique identifier of the chat from which to remove the member. |
| `if_match` | string | No | Optional ETag header value for conditional requests. Use this to ensure the member hasn't been modified since you last retrieved it. |
| `membership_id` | string | Yes | The unique identifier of the conversationMember to remove from the chat. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove team member

**Slug:** `MICROSOFT_TEAMS_REMOVE_TEAM_MEMBER`

Tool to remove a member from a Microsoft Teams team. Use when you need to remove a user from a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team from which to remove the member. |
| `if_match` | string | No | Optional ETag header value for conditional requests. Use this to ensure the member hasn't been modified since you last retrieved it. |
| `membership_id` | string | Yes | The unique identifier of the conversationMember to remove from the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove team members

**Slug:** `MICROSOFT_TEAMS_REMOVE_TEAM_MEMBERS`

Tool to remove multiple members from a Microsoft Teams team in bulk. Use when you need to remove one or more users from a team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `members` | array | Yes | List of members to remove from the team. Maximum 20 members can be removed in a single request. |
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team from which to remove members. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Teams files

**Slug:** `MICROSOFT_TEAMS_SEARCH_FILES`

Search files in Microsoft Teams using KQL syntax. Find files by name, type, content, author, and modification date across all Teams and channels. Supports boolean logic and date ranges. Examples: 'filetype:pdf AND lastmodifiedtime>=2024-10-01', 'contract AND budget', 'filename:report AND author:user@example.com'

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `size` | integer | No | The maximum number of file results to return per page. Use with from_index for pagination. |
| `query` | string | Yes | Search query for files in Teams. Supports keywords, filenames, and content search.  **Basic Syntax:** - Keywords: 'budget contract' - Exact phrases: '"project timeline"' - Filenames: 'report.pdf' or 'filename:contract' - File types: 'filetype:pdf' or 'filetype:docx' - Boolean: 'contract AND budget' or 'report OR summary'  **Property Filters:** - filename: File name - 'filename:contract' - filetype: File extension - 'filetype:pdf', 'filetype:docx', 'filetype:xlsx' - author: Creator - 'author:user@example.com' - lastmodifiedtime: Modified date - 'lastmodifiedtime>=2024-10-01'  **Date Filters:** - Exact: 'lastmodifiedtime:2024-10-01' - Greater/equal: 'lastmodifiedtime>=2024-10-01' - Range: 'lastmodifiedtime:2024-10-01..2024-10-31' - Relative: 'lastmodifiedtime>today-30'  **Complex Queries:** - 'contract AND filetype:pdf AND lastmodifiedtime>=2024-10-01' - '(budget OR financial) AND filetype:xlsx' - 'filename:report AND lastmodifiedtime>today-7' |
| `region` | string | No | Specifies the geographic region for the search request. ONLY required when using application permissions (S2S authentication). DO NOT use with delegated permissions (user authentication) - the API will reject the request. Valid values: 'NAM' (North America), 'EMEA' (Europe, Middle East, Africa), 'APAC' (Asia Pacific). Leave unset (None) for delegated permissions. |
| `from_index` | integer | No | The 0-based starting index for pagination. To paginate: check response['value'][0]['hitsContainers'][0]['moreResultsAvailable']. If true, call again with from_index += size (e.g., 0 → 25 → 50). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Teams messages

**Slug:** `MICROSOFT_TEAMS_SEARCH_MESSAGES`

Search Microsoft Teams messages using powerful KQL syntax. Supports sender (from:), date filters (sent:), attachments, and boolean logic. Works across all Teams chats and channels the user has access to. Examples: 'from:user@example.com AND sent>=2024-10-01', 'punchlist OR termination', 'sent>today-30 AND hasattachment:yes' NOTE: This action requires an organizational Microsoft 365 account (Azure AD/Entra ID). It does NOT work with personal Microsoft accounts (MSA) such as @outlook.com, @hotmail.com, or @live.com. If using a personal Microsoft account, this search will fail.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `size` | integer | No | The maximum number of search results to return per page. Use with from_index for pagination. |
| `query` | string | No | KQL (Keyword Query Language) search query string. Supports advanced syntax for precise searches.  **Basic Syntax:** - Simple keywords: 'budget report' - Exact phrases: '"quarterly review"' - Boolean operators: 'urgent AND deadline' or 'invoice OR receipt'  **Property Filters (prefix:value):** - from: Sender - 'from:user@example.com' or 'from:example.com' - sent: Date sent - 'sent:2024-10-01' or 'sent>=2024-10-01' - hasattachment: Has files - 'hasattachment:yes' or 'hasattachment:no'  **Date Operators:** - Exact: 'sent:2024-10-01' - Greater/equal: 'sent>=2024-10-01' - Less/equal: 'sent<=2024-10-31' - Range: 'sent:2024-10-01..2024-10-31' - Relative: 'sent>today-7' (last 7 days)  **Combining Filters:** - AND: 'from:user@example.com AND subject:budget' - OR: 'punchlist OR termination' - Complex: '(punchlist OR termination) AND sent>=2024-10-01'  Note: A search query is required. To return recent messages without a keyword filter, use a date range like 'sent>=2020-01-01'. Empty queries will default to 'sent>=2020-01-01' to return recent messages. |
| `region` | string | No | Specifies the geographic region for the search request. ONLY required when using application permissions (S2S authentication). DO NOT use with delegated permissions (user authentication) - the API will reject the request. Valid values: 'NAM' (North America), 'EMEA' (Europe, Middle East, Africa), 'APAC' (Asia Pacific). Leave unset (None) for delegated permissions. |
| `from_index` | integer | No | The 0-based starting index for pagination. To paginate: check response['value'][0]['hitsContainers'][0]['moreResultsAvailable']. If true, call again with from_index += size (e.g., 0 → 25 → 50). Message ID is in hits[]['hitId'], not hits[]['resource']['id']. |
| `enable_top_results` | boolean | No | If `true`, sorts results by relevance; otherwise, sorts by date in descending order (newest first). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Activity Notification to Recipients

**Slug:** `MICROSOFT_TEAMS_SEND_ACTIVITY_NOTIFICATION`

Tool to send activity notifications to specified recipients in Microsoft Teams. Use when you need to send custom notifications to users, team members, or channel members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `topic` | object | Yes | The topic of the notification, including source, value, and optional webUrl for deep linking. |
| `chainId` | integer | No | Optional chain ID for grouping related notifications together. |
| `recipients` | array | Yes | Array of recipients who will receive the notification. Each recipient must specify an @odata.type and corresponding ID fields. |
| `teamsAppId` | string | No | Optional Teams app ID if the notification is associated with a specific Teams app. |
| `previewText` | object | Yes | The preview text to display in the notification. |
| `activityType` | string | Yes | The type of activity being notified. This should match an activity type defined in the Teams app manifest. |
| `templateParameters` | array | No | Optional array of template parameters as key-value pairs for customizing the notification content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set My Preferred Presence (Deprecated)

**Slug:** `MICROSOFT_TEAMS_SET_ME_PREFERRED_PRESENCE`

DEPRECATED: Use MICROSOFT_TEAMS_SET_USER_PREFERRED_PRESENCE instead. Tool to set the preferred availability and activity status for the current authenticated user. Use when you need to update your own presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `activity` | string ("Available" | "Busy" | "DoNotDisturb" | "BeRightBack" | "Away" | "OffWork") | Yes | The supplemental information to availability. Must match the availability value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `availability` | string ("Available" | "Busy" | "DoNotDisturb" | "BeRightBack" | "Away" | "Offline") | Yes | The base presence information. Must match the activity value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `expiration_duration` | string | No | The expiration of the app presence session in ISO 8601 duration format (e.g., 'PT8H' for 8 hours). If not provided, default expiration applies: DoNotDisturb or Busy expire in 1 day, all others expire in 7 days. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set Presence

**Slug:** `MICROSOFT_TEAMS_SET_PRESENCE`

Tool to set the presence information for a user's application presence session. Use when you need to update a user's presence state in Microsoft Teams. Valid combinations: Available/Available, Busy/InACall, Busy/InAConferenceCall, Away/Away, or DoNotDisturb/Presenting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique identifier (GUID) of the user whose presence session to set. |
| `activity` | string ("Available" | "InACall" | "InAConferenceCall" | "Away" | "Presenting") | Yes | The supplemental information to availability. Must match valid combinations with availability. |
| `session_id` | string | Yes | The ID of the application's presence session. This should typically match the application ID (appId) from the OAuth token. |
| `availability` | string ("Available" | "Busy" | "Away" | "DoNotDisturb") | Yes | The base presence information. Valid combinations: Available/Available, Busy/InACall, Busy/InAConferenceCall, Away/Away, DoNotDisturb/Presenting. |
| `expiration_duration` | string | No | The expiration of the app presence session in ISO 8601 duration format. Valid range is PT5M to PT4H (5 minutes to 4 hours). If not provided, defaults to 5 minutes. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set Presence Automatic Location

**Slug:** `MICROSOFT_TEAMS_SET_PRESENCE_AUTOMATIC_LOCATION`

Tool to set the automatic presence location (office/remote/timeOff) for a specified user. Use when updating work location status in Microsoft Teams via automatic detection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `placeId` | string | No | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location. |
| `user_id` | string | Yes | The unique identifier (GUID) of the user whose automatic presence location will be set. |
| `workLocationType` | string ("unspecified" | "office" | "remote" | "timeOff" | "unknownFutureValue") | Yes | The work location type to set for the user's automatic presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set Presence Manual Location (Deprecated)

**Slug:** `MICROSOFT_TEAMS_SET_PRESENCE_MANUAL_LOCATION`

DEPRECATED: Use MICROSOFT_TEAMS_SET_USER_PRESENCE_MANUAL_LOCATION instead. Tool to set the manual presence location (office/remote/timeOff) for the authenticated user. Use when updating work location status in Microsoft Teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `placeId` | string | No | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location. |
| `user_id` | string | No | The user's unique identifier or principal name. Use 'me' for delegated authentication (authenticated user) or provide a specific user ID/email for application authentication. |
| `workLocationType` | string ("unspecified" | "office" | "remote" | "timeOff" | "unknownFutureValue") | Yes | The work location type to set for the user's presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set User Preferred Presence

**Slug:** `MICROSOFT_TEAMS_SET_USER_PREFERRED_PRESENCE`

Tool to set the preferred availability and activity status for a user. Use when you need to update a user's presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists for the user.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | Yes | The unique identifier (GUID) of the user whose preferred presence status will be set. |
| `activity` | string ("Available" | "Busy" | "DoNotDisturb" | "BeRightBack" | "Away" | "OffWork") | Yes | The supplemental information to availability. Must match the availability value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `availability` | string ("Available" | "Busy" | "DoNotDisturb" | "BeRightBack" | "Away" | "Offline") | Yes | The base presence information. Must match the activity value for valid combinations: Available/Available, Busy/Busy, DoNotDisturb/DoNotDisturb, BeRightBack/BeRightBack, Away/Away, or Offline/OffWork. |
| `expiration_duration` | string | No | The expiration of the app presence session in ISO 8601 duration format (e.g., 'PT8H' for 8 hours). If not provided, default expiration applies: DoNotDisturb or Busy expire in 1 day, all others expire in 7 days. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Set User Presence Manual Location

**Slug:** `MICROSOFT_TEAMS_SET_USER_PRESENCE_MANUAL_LOCATION`

Tool to set the manual presence location (office/remote/timeOff) for a specific user. Use when updating work location status for a user in Microsoft Teams.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `placeId` | string | No | Optional identifier of the place associated with the work location. This can be a GUID or other identifier representing a physical location. |
| `user_id` | string | Yes | The unique identifier of the user whose presence location should be set. Can be the user's ID or userPrincipalName. |
| `workLocationType` | string ("unspecified" | "office" | "remote" | "timeOff" | "unknownFutureValue") | Yes | The work location type to set for the user's presence. Choose 'office' if working from office, 'remote' if working remotely, 'timeOff' if on time off, or 'unspecified' to clear the location. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Share Team Schedule

**Slug:** `MICROSOFT_TEAMS_SHARE_TEAM_SCHEDULE`

Tool to share a Microsoft Teams schedule for a specified time range. Use when you need to make a team's schedule visible to members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team whose schedule to share. |
| `notifyTeam` | boolean | Yes | Whether to notify the entire team that the schedule has been shared, or only employees with assigned shifts. Required. |
| `endDateTime` | string | Yes | End date and time of the schedule period to share in ISO 8601 format (e.g., '2026-03-03T00:00:00.000Z'). Required. |
| `startDateTime` | string | Yes | Start date and time of the schedule period to share in ISO 8601 format (e.g., '2026-02-24T00:00:00.000Z'). Required. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Chat

**Slug:** `MICROSOFT_TEAMS_TEAMS_CREATE_CHAT`

Creates a new chat; if a 'oneOnOne' chat with the specified members already exists, its details are returned, while 'group' chats are always newly created. IMPORTANT: The authenticated user MUST be included as one of the members.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `topic` | string | No | Subject or title for the chat. REQUIRED for group chats. For 'oneOnOne' chats, this field is ignored and should be omitted. The following characters are NOT allowed and will be automatically removed: ~ # % & * { } + / \ : < > ? \| ' ". Topics cannot start with underscore (_) or period (.), and cannot end with a period. |
| `members` | array | Yes | List of members. IMPORTANT: The authenticated user MUST be included as one of the members. Each member must be unique - do not include the same user ID or email multiple times. For 'oneOnOne' chats, exactly two members are required (the authenticated user and one other person). For 'group' chats, at least two members are required and at least one member must have the 'owner' role. |
| `chatType` | string | Yes | Type of chat. If 'oneOnOne' for members with an existing chat, that chat's details are returned. |
| `installedApps` | array | No | Optional. A collection of Teams apps to install in the chat at creation time. Supports both one-on-one and group chats. Apps can be installed with or without resource-specific consent (RSC) permissions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Teams

**Slug:** `MICROSOFT_TEAMS_TEAMS_LIST`

Retrieves Microsoft Teams accessible by the authenticated user, allowing filtering, property selection, and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of teams to return per page (1-999). Used for pagination; see `next_link` in response. |
| `count` | boolean | No | When true, includes the total count of items in the @odata.count property in the response. The count is only returned in the first page of results. |
| `filter` | string | No | OData v4.0 filter string to refine results based on team properties (e.g., `startsWith(displayName,'A')`). Consult OData v4.0 documentation for syntax. |
| `select` | string | No | Comma-separated team properties to retrieve (e.g., 'id,displayName,description'). If empty or omitted, standard properties are returned. Supported properties include `id`, `displayName`, `description`, `visibility`. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List channel messages

**Slug:** `MICROSOFT_TEAMS_TEAMS_LIST_CHANNEL_MESSAGES`

Tool to list messages in a Teams channel when team_id and channel_id are known (no chat_id required). Use this to enumerate channel message history and obtain message_id for follow-on operations like listing replies or getting message details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of messages to return per page (1-50). Microsoft Graph enforces a maximum of 50 messages per request. |
| `expand` | string | No | Optional expansion parameter. Only 'replies' is supported, which includes message replies (up to 1,000 per message; use replies@odata.nextLink for more). |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. |
| `channel_id` | string | Yes | Unique identifier of the channel within the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List team channels

**Slug:** `MICROSOFT_TEAMS_TEAMS_LIST_CHANNELS`

Retrieves channels for a specified Microsoft Teams team ID (must be valid and for an existing team), with options to include shared channels, filter results, and select properties.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Show only the first n items. Use to limit the number of channels returned. |
| `skip` | integer | No | Skip the first n items. Use with 'top' for pagination. |
| `count` | boolean | No | Include count of items in the response. When true, adds @odata.count with total number of channels. |
| `expand` | string | No | Expand related entities. Comma-separated list of relationships to include inline in the response. |
| `filter` | string | No | OData v4 query string to filter channels (e.g., `startswith(displayName,'Sales')` or `membershipType eq 'private'`). |
| `search` | string | No | Search items by search phrases. Use OData search syntax to find channels matching search criteria. |
| `select` | string | No | Comma-separated channel properties to return (e.g., 'id,displayName,description'); empty for default properties. Common: `id`, `displayName`, `description`, `email`, `membershipType`, `webUrl`. |
| `orderby` | string | No | Order items by property values. Comma-separated list of properties with optional 'asc' or 'desc' (e.g., 'displayName asc'). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). Team names are not accepted. Use MICROSOFT_TEAMS_LIST_USER_JOINED_TEAMS to get team IDs. |
| `include_shared_channels` | boolean | No | If true, include channels shared with the team (uses allChannels endpoint). If false, exclude shared channels from results by filtering on membershipType. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List chat messages (Deprecated)

**Slug:** `MICROSOFT_TEAMS_TEAMS_LIST_CHAT_MESSAGES`

DEPRECATED: Use ListUserChatMessages instead. Retrieves messages (newest first) from an existing and accessible Microsoft Teams one-on-one chat, group chat, or channel thread, specified by `chat_id`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `top` | integer | No | Maximum number of messages to retrieve. Microsoft Graph enforces a maximum limit of 50 per request. |
| `filter` | string | No | OData filter expression for filtering messages by date range (do not include '$filter='). Supports filtering by 'lastModifiedDateTime' (with gt/lt operators) or 'createdDateTime' (with lt operator). You can only filter results if the request URL contains both $orderby and $filter query parameters configured for the same property; otherwise, the $filter query option is ignored. |
| `chat_id` | string | Yes | Unique Microsoft Graph chat identifier (GUID format). This is the chat ID returned by Graph API, not a channel thread ID. Use the Get All Chats action to retrieve valid chat IDs. |
| `orderby` | string | No | Property to sort results by. Currently supports 'lastModifiedDateTime' (default) and 'createdDateTime' properties in descending order. Ascending order is not supported. Format: 'propertyName desc'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Post message to Teams channel

**Slug:** `MICROSOFT_TEAMS_TEAMS_POST_CHANNEL_MESSAGE`

Posts a new text or HTML message to a specified channel in a Microsoft Teams team.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `content` | string | Yes | The content of the message to be sent. Can be plain text or HTML, determined by `content_type`. |
| `subject` | string | No | The subject of the chat message, in plaintext. Optional field typically used for channel messages. |
| `team_id` | string | Yes | The unique identifier of the Microsoft Teams team containing the channel. |
| `mentions` | array | No | List of entities mentioned in the chat message. Supported entities are: user, bot, team, and channel. Use with HTML content containing <at> tags. |
| `channel_id` | string | Yes | The unique identifier of the channel within the specified team where the message will be posted. |
| `importance` | string ("normal" | "high" | "urgent") | No | The importance of the chat message. Possible values: 'normal', 'high', 'urgent'. Defaults to 'normal' if not specified. |
| `attachments` | array | No | References to attached objects like files, tabs, meetings, etc. Each attachment is a chatMessageAttachment object. |
| `content_type` | string ("text" | "html") | No | The format of the message content. Defaults to 'text'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send message to Teams chat

**Slug:** `MICROSOFT_TEAMS_TEAMS_POST_CHAT_MESSAGE`

Sends a non-empty message (text or HTML) to a specified, existing Microsoft Teams chat; content must be valid HTML if `content_type` is 'html'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | Unique identifier for the Microsoft Teams chat to receive the message. |
| `content` | string | Yes | Message content, either plain text or HTML (see `content_type`). |
| `subject` | string | No | The subject of the chat message, in plaintext. |
| `mentions` | array | No | List of entities mentioned in the chat message. Supported entities are: user, bot, team, channel, chat, and tag. |
| `attachments` | array | No | References to attached objects like files, tabs, meetings, or cards. |
| `content_type` | string | No | Content format: 'text' (plain) or 'html'. |
| `hostedContents` | array | No | Content in a message hosted by Microsoft Teams - for example, inline images or code snippets. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unarchive channel

**Slug:** `MICROSOFT_TEAMS_UNARCHIVE_CHANNEL`

Tool to unarchive a channel in a Microsoft Teams team. Use when you need to restore an archived channel to active state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team that contains the channel to unarchive. |
| `channel_id` | string | Yes | The unique identifier of the channel to unarchive. Format: '19:<hash>@thread.tacv2'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unarchive group team channel

**Slug:** `MICROSOFT_TEAMS_UNARCHIVE_GROUP_TEAM_CHANNEL`

Tool to unarchive a channel in a Microsoft Teams group's team. Use when you need to restore an archived channel to active state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier (GUID) of the group that owns the team. This is the group ID, not the team ID. |
| `channel_id` | string | Yes | The unique identifier of the channel to unarchive. Format: '19:<hash>@thread.tacv2'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unarchive Teams team

**Slug:** `MICROSOFT_TEAMS_UNARCHIVE_TEAM`

Tool to unarchive a Microsoft Teams team. Use when you need to restore an archived team to active state.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team to unarchive. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unhide Chat For User

**Slug:** `MICROSOFT_TEAMS_UNHIDE_CHAT_FOR_USER`

Tool to unhide a chat for a specific user. Use when you need to make a hidden chat visible again in the user's chat list.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user` | object | Yes | TeamworkUserIdentity object containing the user information for whom to unhide the chat. |
| `chat_id` | string | Yes | The unique identifier of the chat to unhide. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unpin chat message

**Slug:** `MICROSOFT_TEAMS_UNPIN_MESSAGE`

Tool to unpin a message from a Microsoft Teams chat. Use when you need to remove a pinned message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chat_id` | string | Yes | The unique identifier of the Microsoft Teams chat containing the pinned message. |
| `if_match` | string | No | Optional ETag value for conditional request. If provided, the unpin operation will only succeed if the current ETag matches this value. |
| `pinned_message_id` | string | Yes | The unique identifier of the pinned message to unpin. This is a numeric timestamp string (milliseconds since epoch) that identifies the pinned message. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Call

**Slug:** `MICROSOFT_TEAMS_UPDATE_CALL`

Tool to update the navigation property calls in Microsoft Teams communications. Use when you need to modify properties of an existing call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `call_id` | string | Yes | The unique identifier of the call to update. |
| `subject` | string | No | The subject of the conversation. |
| `tenantId` | string | No | The tenant ID for the call. |
| `odata_type` | string | No | The OData type of the call entity. Must be '#microsoft.graph.call'. |
| `callChainId` | string | No | A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in a P2P call. |
| `callbackUri` | string | No | The callback URL on which callbacks will be delivered. Must be https. |
| `myParticipantId` | string | No | The ID of the participant that represents the bot or service application. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Call Operation

**Slug:** `MICROSOFT_TEAMS_UPDATE_CALL_OPERATION`

Tool to update the navigation property operations in communications. Use when you need to modify properties of an existing call operation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `status` | string | No | The operation status. Possible values are: notStarted, running, completed, failed. |
| `call_id` | string | Yes | The unique identifier of the call. |
| `result_info` | object | No | Information about the result of the operation. |
| `client_context` | string | No | Unique client context string that can have a maximum of 256 characters. |
| `comms_operation_id` | string | Yes | The unique identifier of the commsOperation. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Call Participant

**Slug:** `MICROSOFT_TEAMS_UPDATE_CALL_PARTICIPANT`

Tool to update a participant in a Microsoft Teams call. Use when you need to modify participant properties such as lobby status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `call_id` | string | Yes | The unique identifier of the call. |
| `isInLobby` | boolean | No | Whether the participant is in the lobby. Set to true to move participant to lobby or false to admit from lobby. |
| `participant_id` | string | Yes | The unique identifier of the participant to update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Teams channel

**Slug:** `MICROSOFT_TEAMS_UPDATE_CHANNEL`

Tool to update channel properties in a Microsoft Teams group. Use when you need to modify channel description, display name, or favorite settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `group_id` | string | Yes | The unique identifier of the group (team) containing the channel to update. |
| `channel_id` | string | Yes | The unique identifier of the channel to update. |
| `description` | string | No | Updated description for the channel. Maximum length is 1024 characters. |
| `display_name` | string | No | Updated display name for the channel. Maximum length is 50 characters. |
| `is_favorite_by_default` | boolean | No | Indicates whether the channel should be marked as recommended for all members of the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Teams channel message

**Slug:** `MICROSOFT_TEAMS_UPDATE_CHANNEL_MESSAGE`

Tool to update a message in a channel. Use when you need to modify an existing channel message after confirming channel and message IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model` | string | No | Payment model for metered API. Set to 'A' to use the metered payment model instead of evaluation mode. |
| `content` | string | No | Updated message content, either plain text or HTML. Required for delegated permissions mode. |
| `subject` | string | No | Updated message subject in plaintext. Can be updated in delegated permissions mode. |
| `team_id` | string | Yes | Unique identifier of the Microsoft Teams team. |
| `channel_id` | string | Yes | Unique identifier of the channel within the team. |
| `importance` | string ("normal" | "high" | "urgent") | No | Message importance level. Possible values: normal, high, urgent. Can be updated in delegated permissions mode. |
| `message_id` | string | Yes | Unique identifier of the channel message to update. |
| `content_type` | string ("text" | "html") | No | Format of the message content: 'text' or 'html'. |
| `policy_violation` | object | No | Defines properties of a policy violation set by a DLP application. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Chat

**Slug:** `MICROSOFT_TEAMS_UPDATE_CHAT`

Tool to update the properties of a chat. Use when you need to modify chat settings such as the topic.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `topic` | string | No | The new topic/title for the chat. Only applicable for group chats. For one-on-one chats, this property cannot be updated. |
| `chat_id` | string | Yes | The unique identifier of the chat to update. This can be obtained from the chat's URL or from other chat-related operations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Teams chat message

**Slug:** `MICROSOFT_TEAMS_UPDATE_CHAT_MESSAGE`

Tool to update a specific message in a chat. Use when you need to correct or modify a sent chat message.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model` | string | No | Query parameter for metered API usage. Set to 'A' to enable metered mode. If not specified, evaluation mode is used by default. |
| `chat_id` | string | Yes | Unique identifier of the Microsoft Teams chat. |
| `content` | string | Yes | Updated message content, either plain text or HTML. |
| `message_id` | string | Yes | Unique identifier of the chat message to update. |
| `content_type` | string | No | Format of the message content: 'text' or 'html'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Content Sharing Session

**Slug:** `MICROSOFT_TEAMS_UPDATE_CONTENT_SHARING_SESSION`

Tool to update a content sharing session in a Microsoft Teams call. Use when you need to modify the properties of an existing content sharing session.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Optional identifier for the content sharing session entity. |
| `call_id` | string | Yes | The unique identifier of the call. |
| `odata_type` | string | No | The OData type of the content sharing session. Must be '#microsoft.graph.contentSharingSession'. |
| `content_sharing_session_id` | string | Yes | The unique identifier of the content sharing session. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update schedule day note

**Slug:** `MICROSOFT_TEAMS_UPDATE_DAY_NOTE`

Tool to update an existing day note in a team's schedule. Use when you need to modify notes or reminders for a specific date in the team schedule.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the Microsoft Teams team containing the day note. |
| `dayNote_id` | string | Yes | The unique identifier of the dayNote to update. Typically starts with 'NOTE_' prefix. |
| `dayNoteDate` | string | No | The date for which the day note applies, in YYYY-MM-DD format (e.g., '2026-02-26'). Provide only if updating the date. |
| `draftDayNote` | object | No | Represents the content and format of a day note. |
| `sharedDayNote` | object | No | Represents the content and format of a day note. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update online meeting

**Slug:** `MICROSOFT_TEAMS_UPDATE_ONLINE_MEETING`

Tool to update the properties of an existing Microsoft Teams online meeting. Use when you need to modify meeting details such as subject, start time, or end time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `subject` | string | No | The subject or title for the online meeting. |
| `user_id` | string | Yes | The unique identifier (GUID) of the user who owns the online meeting. |
| `endDateTime` | string | No | The meeting end date and time in ISO 8601 format. When updating date/time, both startDateTime and endDateTime are required. |
| `participants` | object | No | The participants to update in the online meeting. Only attendees can be updated. |
| `startDateTime` | string | No | The meeting start date and time in ISO 8601 format. When updating date/time, both startDateTime and endDateTime are required. |
| `online_meeting_id` | string | Yes | The unique identifier of the online meeting to update. |
| `lobbyBypassSettings` | object | No | Specifies which participants can bypass the meeting lobby. |
| `recordAutomatically` | boolean | No | Indicates whether to record the meeting automatically. |
| `watermarkProtection` | object | No | Specifies whether the client application should apply a watermark to content. |
| `isEntryExitAnnounced` | boolean | No | Indicates whether to announce when callers join or leave. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update open shift

**Slug:** `MICROSOFT_TEAMS_UPDATE_OPEN_SHIFT`

Tool to update an existing open shift in a Microsoft Teams team schedule. Use when you need to modify open shift details such as times, theme, notes, or open slot count.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `openshift_id` | string | Yes | The unique identifier of the openShift to update. Use format 'OPNSHFT_{guid}' for openShift IDs. |
| `draftOpenShift` | object | No | Represents the draft version of an open shift that has not been shared with the team. |
| `sharedOpenShift` | object | No | Represents the shared version of an open shift that is visible to team members. |
| `schedulingGroupId` | string | No | The unique identifier of the scheduling group this open shift belongs to. Use format 'TAG_{guid}' for scheduling group IDs. |
| `isStagedForDeletion` | boolean | No | Indicates whether the open shift is staged for deletion. Set to true to mark for deletion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update scheduling group

**Slug:** `MICROSOFT_TEAMS_UPDATE_SCHEDULING_GROUP`

Tool to replace/update a scheduling group in a team's schedule. Use when you need to modify properties of an existing scheduling group such as display name, active status, code, or member list.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | Code or identifier for the scheduling group. This can be used for external system integration or quick reference. Must contain only alphanumeric characters (letters and numbers, no special characters or spaces). |
| `team_id` | string | Yes | Unique identifier (GUID/UUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `user_ids` | array | No | List of user IDs to include as members of this scheduling group. Each ID should be a valid GUID/UUID. This replaces the existing list of members. |
| `is_active` | boolean | No | Indicates whether the scheduling group is active and available for scheduling. Set to true to enable, false to disable. |
| `display_name` | string | No | Display name of the scheduling group. This is the name that will appear when managing schedules and shifts. |
| `scheduling_group_id` | string | Yes | The unique identifier of the scheduling group to update. This can be a GUID or a tag-based ID (e.g., 'TAG_dc93d488-40de-443e-ac7d-ce86f22bef80'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Teams channel tab

**Slug:** `MICROSOFT_TEAMS_UPDATE_TAB`

Tool to update the properties of a tab in a Microsoft Teams channel. Use when you need to modify tab display name, configuration, or web URL.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tab_id` | string | Yes | The unique identifier of the tab to update. |
| `team_id` | string | Yes | The unique identifier of the team containing the channel. |
| `web_url` | string | No | The deep link URL of the tab instance. |
| `channel_id` | string | Yes | The unique identifier of the channel containing the tab. |
| `display_name` | string | No | The updated display name for the tab. This is what users will see in the channel. |
| `configuration` | object | No | Configuration settings for the tab. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Team

**Slug:** `MICROSOFT_TEAMS_UPDATE_TEAM`

Tool to update the properties of a team. Use when you need to modify team settings such as member, messaging, or fun settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `team_id` | string | Yes | The unique identifier (GUID) of the team to update. |
| `visibility` | string ("private" | "public") | No | The visibility of the team. Can be 'private' or 'public'. |
| `description` | string | No | An optional description for the team. Maximum length: 1024 characters. |
| `displayName` | string | No | The name of the team. |
| `funSettings` | object | No | Settings that control fun features in the team. |
| `classSettings` | object | No | Settings specific to teams of type Class (education teams). |
| `guestSettings` | object | No | Settings that control what guests can do in the team. |
| `classification` | string | No | An optional label that describes the data or business sensitivity of the team. |
| `memberSettings` | object | No | Settings that control what members can do in the team. |
| `specialization` | string ("none" | "educationStandard" | "educationClass" | "educationProfessionalLearningCommunity" | "educationStaff" | "unknownFutureValue") | No | Indicates whether the team is intended for a particular use case (education, etc.). |
| `messagingSettings` | object | No | Settings that control messaging capabilities in the team. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update team member

**Slug:** `MICROSOFT_TEAMS_UPDATE_TEAM_MEMBER`

Tool to update a team member's roles or properties in Microsoft Teams. Use when you need to change a member's role (e.g., promote to owner or demote to member).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `roles` | array | No | The roles to assign to the member. Common values: 'owner', 'member', 'guest'. Pass an empty array to demote an owner to a regular member. |
| `team_id` | string | Yes | The unique identifier of the Microsoft Teams team. |
| `odata_type` | string | No | The OData type identifier. Must be '#microsoft.graph.aadUserConversationMember' for Azure AD users. |
| `display_name` | string | No | Optional display name for the member. |
| `conversation_member_id` | string | Yes | The unique identifier of the conversation member to update. |
| `visible_history_start_date_time` | string | No | Optional timestamp denoting how far back a conversation's history is shared with the member. ISO 8601 format. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update team schedule shift

**Slug:** `MICROSOFT_TEAMS_UPDATE_TEAM_SCHEDULE_SHIFT`

Tool to update an existing shift in a Microsoft Teams team schedule. Use when you need to modify shift details like times, assigned user, or notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | No | The unique identifier of the user assigned to this shift (GUID format). |
| `team_id` | string | Yes | The unique identifier of the team (GUID format). |
| `shift_id` | string | Yes | The unique identifier of the shift to update (e.g., 'SHFT_67bbbd0f-ad83-46a1-a94f-fe9d9f29fb84'). |
| `draftShift` | object | No | Represents the draft version of a shift that has not been shared with the team. |
| `sharedShift` | object | No | Represents the shared version of a shift that is visible to team members. |
| `schedulingGroupId` | string | No | The unique identifier of the scheduling group this shift belongs to. Set to null to remove from a scheduling group. |
| `isStagedForDeletion` | boolean | No | Indicates whether the shift is staged for deletion. Set to true to mark for deletion. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update time off

**Slug:** `MICROSOFT_TEAMS_UPDATE_TIME_OFF`

Tool to replace an existing timeOff entry in a team's schedule. Use when you need to update time off details including dates, reason, or status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `userId` | string | Yes | ID of the user assigned to this timeOff entry. Must be a valid user GUID (e.g., '43f0c14d-bca8-421f-b762-c3d8dd75be1f'). Required. |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `timeoff_id` | string | Yes | Unique identifier of the timeOff entry to replace. This is the ID of the timeOff resource in the team's schedule (e.g., 'SHFT_d3b1de89-60b8-4e61-81b7-c55ab222c1ab'). |
| `draftTimeOff` | object | No | Represents a version of the timeOff entry (shared or draft). |
| `sharedTimeOff` | object | No | Represents a version of the timeOff entry (shared or draft). |
| `isStagedForDeletion` | boolean | No | Indicates whether the timeOff is marked for deletion. This process is finalized when the schedule is shared. Optional. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update time off reason

**Slug:** `MICROSOFT_TEAMS_UPDATE_TIME_OFF_REASON`

Tool to update a time off reason in a team's schedule. Use when you need to modify the display name, icon, active status, or code of an existing time off reason.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `code` | string | No | An alphanumeric code to represent an external identifier for this time off reason. Must be unique within the team. Maximum 100 characters. |
| `team_id` | string | Yes | Unique identifier (GUID) of the Microsoft Teams team. Must be in UUID format (e.g., '87b0560f-fc0d-4442-add8-b380ca926707'). |
| `icon_type` | string ("none" | "car" | "calendar" | "running" | "plane" | "firstAid" | "doctor" | "notWorking" | "clock" | "juryDuty" | "globe" | "cup" | "phone" | "weather" | "umbrella" | "piggyBank" | "dog" | "cake" | "trafficCone" | "pin" | "sunny") | No | Supported icon types for time off reasons. |
| `is_active` | boolean | No | Whether the time off reason is active and can be used when creating or updating time off entries. Set to false to deactivate without deleting. |
| `display_name` | string | No | The name of the time off reason. This is what will be displayed in the schedule. |
| `time_off_reason_id` | string | Yes | Unique identifier of the time off reason to update. This is the ID of the timeOffReason resource in the team's schedule. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
