From microsoft-teams
Microsoft Teams messaging, meetings, channels, polls, and file operations. Use when asked to send messages, schedule meetings, manage channels, create polls, or interact with Teams in any way.
How this skill is triggered — by the user, by Claude, or both
Slash command
/microsoft-teams:teamsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Activate this skill when the user:
Activate this skill when the user:
Use teams_send_message with the chat ID. Messages support markdown:
**text***text*`code`[text](url)- item or 1. itemUse teams_reply_to_message when you need to reply in a thread, providing both the chat/channel ID and the parent message ID.
Use teams_react_to_message to add reactions. Supported reaction types:
like, angry, sad, laugh, heart, surprisedUse teams_send_adaptive_card for rich, interactive messages. Common card patterns:
{
"type": "AdaptiveCard",
"version": "1.4",
"body": [
{ "type": "TextBlock", "text": "Title", "size": "Large", "weight": "Bolder" },
{ "type": "TextBlock", "text": "Description text", "wrap": true },
{ "type": "FactSet", "facts": [
{ "title": "Status", "value": "Active" },
{ "title": "Priority", "value": "High" }
]}
]
}
{
"type": "AdaptiveCard",
"version": "1.4",
"body": [
{ "type": "TextBlock", "text": "Approval Required", "weight": "Bolder" },
{ "type": "TextBlock", "text": "PR #23 needs your review", "wrap": true }
],
"actions": [
{ "type": "Action.OpenUrl", "title": "View PR", "url": "https://..." },
{ "type": "Action.Submit", "title": "Approve", "data": { "action": "approve" } }
]
}
Use teams_schedule_meeting with:
2026-03-05T14:00:00Z)teams_get_presenceUse teams_create_channel with:
standard (visible to all) or privateUse teams_create_poll for quick team feedback:
teams_get_user_info — get profile details (name, email, title, department)teams_get_presence — check availability (Available, Busy, DoNotDisturb, Away, Offline)teams_list_members — list members of a team or chatteams_send_message — Send message to a chat (1:1 or group)teams_reply_to_message — Reply to a specific message threadteams_react_to_message — Add emoji reaction to a messageteams_create_post — Create a post in a channel (with optional subject)teams_send_adaptive_card — Send an Adaptive Card to a chatteams_list_chats — List user's chats (find chat IDs)teams_get_chat_messages — Get recent messages from a chatteams_list_teams — List teams the user belongs toteams_list_channels — List channels in a teamteams_get_channel_info — Get channel details and membersteams_get_channel_messages — Get recent posts in a channelteams_get_channel_message_replies — Get replies to a channel postteams_list_members — List members of a chat or teamteams_get_user_info — Get user profile by ID or UPNteams_get_presence — Check user's online statusteams_schedule_meeting — Schedule a meeting with online linkteams_list_meetings — List upcoming meetingsteams_get_meeting_details — Get full meeting detailsteams_create_channel — Create a new channel in a teamteams_create_poll — Create a poll via Adaptive Cardteams_share_file — Share a OneDrive/SharePoint file in a chatWhen sending direct messages by name or email, teams_send_message requires the actual Teams chat ID (format: 19:[email protected]), not display names or emails.
Discovery workflow:
teams_list_chats() — get all available chatsteams_list_members({ chatId: "..." }) — check each one-on-one chat to find the target userteams_send_message({ chatId: "found-chat-id", content: "message" }) — send to the identified chatteams_share_fileCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub joshuacastanedaah/sean-mcp-servers --plugin microsoft-teams