Microsoft Teams MCP integration for agent-to-human notifications and bi-directional communication. Use when agents need to post progress updates, request approvals, or read user responses via Teams channels and chats.
68
81%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
URL: https://mcp.microsoft365.com/mcp. Auth: OAuth 2.0 (Azure AD, scopes: Chat.ReadWrite, ChannelMessage.Send).
Covers chats, messages, channels, members, and settings.
Post a progress update:
// tool: teams_messages_create
{ "channel_id": "channel-xyz", "body": "🔄 TAS-42 — In progress — implementing unit tests\nFiles: 3 (PriceFilter.tsx, test, index)" }Read replies in thread:
// tool: teams_messages_list_replies
{ "channel_id": "channel-xyz", "thread_id": "thread-abc", "limit": 50 }// tool: teams_messages_create
{ "channel_id": "channel-xyz", "body": "⏳ Approval Required\nTask: TAS-42 — Run migration on production\nReply: Approve or Reject", "threading": { "start_thread": true } }
// → { "message_id": "msg-123", "thread_id": "thread-abc" }If post fails: retry once; if still failing, fall back to asking in chat only.
const replies = await teams_messages_list_replies({ channel_id: channelId, thread_id: threadId, limit: 50 });
for (const r of replies || []) {
if (/\b(approve|yes)\b/i.test(r.body)) return 'approved';
if (/\b(reject|no)\b/i.test(r.body)) return 'rejected';
}
// Retry after 5s; timeout after 5 min → post escalation messageUse Adaptive Cards when structured inputs or buttons are required; otherwise post a simple threaded message.
fa0c341
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.