mcp-teams mcp

v1.1.0 · MCP Tool · communication · registry.pascalai.org

Microsoft Teams via Graph API. Actions: me, teams, team, channels, channel, create_channel, messages, message, send_message, reply, chats, chat, chat_messages, send_chat, members, add_member, remove_member, tabs, files, create_team. Auth via TEAMS_TOKEN env var (Bearer token from Azure AD OAuth2).

teamsmicrosoftchatmessagingoffice365graph-apicommunication

Input Parameters

ParameterTypeDescription
actionrequired string Action to perform. Auth token is read from TEAMS_TOKEN env var. One of: me, teams, team, channels, channel, create_channel, messages, message, send_message, reply, chats, chat, chat_messages, send_chat, members, add_member, remove_member, tabs, files, create_team.
teamIdoptional string Team ID. Required for: team, channels, channel, create_channel, messages, message, send_message, reply, members, add_member, remove_member, tabs, files.
channelIdoptional string Channel ID. Required for: channel, messages, message, send_message, reply, tabs.
messageIdoptional string Message ID. Required for: message, reply.
chatIdoptional string Chat ID. Required for: chat, chat_messages, send_chat.
memberIdoptional string Membership ID. Required for remove_member.
userIdoptional string User ID or UPN (e.g. user@tenant.com). Required for add_member.
contentoptional string Message body text. Required for send_message, reply, send_chat.
contentTypeoptional string Content type for messages. Default: text. One of: text, html. Default: text.
nameoptional string Channel or team display name. Required for create_channel and create_team.
descriptionoptional string Description for create_channel or create_team.
displayNameoptional string Display name for add_member or create_team owner.
limitoptional integer Max items to return. Default: 50. Default: 50.
topoptional integer OData $top for pagination (overrides limit).
skipoptional string OData $skipToken for pagination (from previous response).

Output Fields

FieldTypeDescription
me object
teams object
team object
channels object
channel object
messages object
message object
reply object
chats object
chat object
members object
member object
tabs object
files object
removed boolean

Examples

Send a message to a Teams channel

// Input
{
  "action": "send_message",
  "teamId": "19:abc123...",
  "channelId": "19:xyz456...",
  "content": "Deployment complete! All systems green.",
  "contentType": "text"
}

// Output
{
  "message": {
    "id": "msg789"
  }
}

List teams the bot/user belongs to

// Input
{
  "action": "teams",
  "limit": 20
}

// Output
{
  "teams": {
    "value": []
  }
}

List channels in a team

// Input
{
  "action": "channels",
  "teamId": "19:abc123..."
}

// Output
{
  "channels": {
    "value": []
  }
}

Reply to a channel message

// Input
{
  "action": "reply",
  "teamId": "19:abc123...",
  "channelId": "19:xyz456...",
  "messageId": "msg789",
  "content": "Thanks for the update!"
}

// Output
{
  "reply": {
    "id": "reply001"
  }
}

Send a direct message in a chat

// Input
{
  "action": "send_chat",
  "chatId": "19:chat123...",
  "content": "Hey, are you available for a quick call?"
}

// Output
{
  "message": {
    "id": "dm001"
  }
}

Install & Discovery

Install

ppm install mcp-teams

Get JSON Schema

GET /v1/packages/mcp-teams/1.1.0/schema

Discover by keyword

GET /v1/mcp/discover?q=teams
Discovery hint: Install with ppm install mcp-teams or invoke remotely via POST /v1/invoke/mcp-teams on the MCP Service.