Microsoft Teams MCP 服务器参考

重要提示

你需要是边境预览计划的一部分,才能提前访问 Microsoft Agent 365。 边界将你直接与Microsoft最新的 AI 创新联系起来。 边境预览版受客户协议现有预览条款的约束。 由于这些功能仍在开发中,其可用性和功能可能会随时间而变化。

概述

服务器 ID 显示名称 范围 Description
mcp_TeamsServer Microsoft Teams MCP 服务器 McpServers.Teams.All Microsoft Teams Graph MCP 服务器来管理聊天、频道和用户或邮件。 将此 MCP 服务器用于 Teams作,例如创建、更新和检索聊天和聊天消息、管理团队和频道,以及执行与这些作相关的管理任务。

聊天工具

mcp_graph_chat_addChatMember

终结点: POST /v1.0/chats/{chat-id}/members

使用 user@odata.bind和 @odata.type可选角色(成员、所有者)将成员添加到聊天中。 如果成员已存在,则返回 409;对于无效用户引用,则返回 400;如果策略限制添加,则返回 403。

必需参数:chat-id、、user@odata.bind@odata.typeroles

mcp_graph_chat_createChat

终结点: POST /v1.0/chats

使用 chatType 创建新的 Teams 聊天(oneOnOne 需要两个参与者,组需要两个以上的参与者)和成员。 如果 oneOnOne 具有错误的成员计数,则返回 400;如果同一参与者已有聊天,则返回 400;如果调用方缺少权限,则返回 403。

必需参数: chatType、成员

mcp_graph_chat_deleteChat

终结点: DELETE /v1.0/chats/{chat-id}

软删除聊天。 如果权限缺失,则返回 403;如果已删除,则返回 404,并且受租户保留策略的约束。

必需参数: chat-id

mcp_graph_chat_deleteChatMessage

终结点: POST /v1.0/users/{user-id}/chats/{chat-id}/messages/{chatMessage-id}/softDelete

删除聊天消息。 返回 403 没有 Chat.ReadWrite,404 表示无效的 ID,但仍可能保留消息以符合性。

必需参数: user-id、chat-id、chatMessage-id

mcp_graph_chat_getChat

终结点: GET /v1.0/chats/{chat-id}

按 ID 检索聊天,并返回类型和主题等元数据。 如果聊天不存在或不可见,则返回 404;如果权限被拒绝,则返回 403。

必需参数: chat-id

mcp_graph_chat_getChatMessage

终结点: GET /v1.0/chats/{chat-id}/messages/{message-id}

按 ID 检索聊天消息。 如果消息不存在或隐藏或隐藏,则返回 404;如果没有适当的权限,则返回 403。

必需参数: chat-id、message-id

mcp_graph_chat_listChatMembers

终结点: GET /v1.0/chats/{chat-id}/members

列出聊天参与者 返回角色(成员/所有者/来宾)。 如果未找到聊天,则返回没有读取权限的 403 或 404。

必需参数: chat-id

mcp_graph_chat_listChatMessages

终结点: GET /v1.0/chats/{chat-id}/messages

列出聊天中具有可选$top、$filter和$orderby的消息。 返回分页结果;合规性可能会隐藏内容。 错误包括 400 个错误查询和 429 个限制。

必需参数: chat-id

可选参数: $top、$filter、$orderby

mcp_graph_chat_listChats

终结点: GET /v1.0/chats

列出具有可选$top、$filter、$expand和$orderby的呼叫者的聊天。 仅返回可见聊天;隐藏或系统聊天可能被排除。 对于无效的排序表达式,返回 400。

可选参数: $top、$orderby、$expand、$filter

mcp_graph_chat_postMessage

终结点: POST /v1.0/chats/{chat-id}/messages

在聊天中发布新的纯文本消息。 需要聊天 ID 和非空正文。content;仅支持文本。 如果缺少权限,则返回 429,如果权限缺失,则返回 403;如果聊天无效,则返回 404。 不是幂等的 - 避免盲次重试。

必需参数: chat-id、body

mcp_graph_chat_updateChat

终结点: PATCH /v1.0/chats/{chat-id}

更新聊天属性,例如仅群组聊天的主题。 如果在一对一聊天上使用 400,则失败;如果没有权限,则为 403;如果未找到聊天,则为 404。

必需参数: chat-id、topic

mcp_graph_chat_updateChatMessage

终结点: PATCH /v1.0/chats/{chat-id}/messages/{message-id}

使用新的纯文本内容更新聊天消息。 某些系统或符合性消息可能会阻止编辑。 如果不允许编辑,则返回 403 或 400;如果冲突不允许编辑,则返回 409。

必需参数: chat-id、message-id

频道和团队工具

mcp_graph_teams_addChannelMember

终结点: POST /v1.0/teams/{team-id}/channels/{channel-id}/members

将成员添加到具有 user@odata.bind、 @odata.type可选角色(所有者或为空)的专用或共享频道。 在标准通道上失败,如果成员已存在,则返回 409;如果缺少权限,则返回 403。

必需参数:team-id、channel-id、displayName、roles、、 user@odata.bind@odata.type

mcp_graph_teams_createChannel

终结点: POST /v1.0/teams/{team-id}/channels

在团队中创建一个频道,其中包含 displayName、可选说明、membershipType(标准、专用、共享)和可选成员。 专用或共享通道需要显式成员;重复或无效的成员身份导致 400 或 409。

必需参数: team-id、displayName

可选参数: 说明、membershipType、成员

mcp_graph_teams_createPrivateChannel

终结点: POST /v1.0/teams/{team-id}/channels

使用 membershipType:private 创建专用频道。 需要创建成员,包括至少一个所有者。 如果缺少成员,则返回 400;对于重复名称,返回 409;如果没有权限,则返回 403。

必需参数: team-id、displayName、members

mcp_graph_teams_getChannel

终结点: GET /v1.0/teams/{team-id}/channels/{channel-id}

检索具有可选$select和$filter的通道。 如果未找到通道或调用方缺少访问权限,则返回 404;如果权限不足,则返回 404;对于不支持的筛选器,则返回 400。

必需参数: team-id、channel-id

可选参数: $select、$filter

mcp_graph_teams_getTeam

终结点: GET /v1.0/teams/{team-id}

检索具有可选$select和$expand的团队属性。 如果无法访问团队,则返回 403 或 404。

必需参数: team-id

可选参数: $select、$expand

mcp_graph_teams_listChannelMembers

终结点: GET /v1.0/teams/{team-id}/channels/{channel-id}/members

列出特定Microsoft Teams 频道的所有成员,并返回有关每个成员的元数据,例如标识、角色和成员身份状态。 对于审核通道参与、在角色更新之前验证成员身份或确保合规性非常有用。

必需参数: team-id、channel-id

可选参数: $top、$expand

mcp_graph_teams_listChannelMessages

终结点: GET /v1.0/teams/{team-id}/channels/{channel-id}/messages

列出频道中具有可选$top和$expand的消息(例如答复)。 分页通过 @odata.nextLink。 对于无效的查询选项,返回 403(没有读取权限)或 400。

必需参数: team-id、channel-id

可选参数: $top、$expand

mcp_graph_teams_listChannels

终结点: GET /v1.0/teams/{team-id}/allChannels

列出具有可选$select或$filter的团队中的频道。 仅当调用方是成员时,才返回专用通道和共享通道。 如果调用方在无效的 OData 查询中缺少读取权限或 400,则失败并出现 403。

必需参数: team-id

可选参数: $select、$filter

mcp_graph_teams_listTeams

终结点: GET /v1.0/users/{user-id}/joinedTeams

列出特定用户的已加入团队。 仅返回该用户的成员身份,而不是所有租户团队。 如果调用方无法查询用户,则返回 403;如果 ID 无效,则返回 404。

必需参数: user-id

mcp_graph_teams_postChannelMessage

终结点: POST /v1.0/teams/{team-id}/channels/{channel-id}/messages

将纯文本消息发布到频道。 需要 team-id、channel-id 和 body.content。 返回没有 ChannelMessage.Send 的 403;如果未找到通道,则返回 404;如果缺少内容,则返回 400。

必需参数: team-id、channel-id、body

mcp_graph_teams_replyToChannelMessage

终结点: POST /v1.0/teams/{team-id}/channels/{channel-id}/messages/{message-id}/replies

回复包含 body.content 的通道中的消息。 仅支持纯文本。 如果未找到父消息,则返回 404;如果没有权限,则返回 404;如果内容无效,则返回 400。

必需参数: team-id、channel-id、message-id、body

mcp_graph_teams_updateChannel

终结点: PATCH /teams/{team-id}/channels/{channel-id}

使用新的 displayName 或说明更新频道。 限制可能适用于常规等特殊通道。 对于无效输入,返回 403 个没有权限、409 个重复名称或 400。

必需参数: team-id、channel-id

可选参数: displayName、description

mcp_graph_teams_updateChannelMember

终结点: PATCH /teams/{team-id}/channels/{channel-id}/members/{membership-id}

通过更改角色更新成员在专用或共享频道中的角色。 标准频道从团队继承角色,通常拒绝更新。 如果在标准通道上尝试,则返回 400;如果未授权,则返回 403;如果未找到成员,则返回 404。

必需参数: team-id、channel-id、membership-id、roles

支持的操作

  1. 聊天管理(创建、读取、更新、删除)
  2. 消息作(发送、检索、编辑、删除)
  3. 频道管理(创建、配置、列出)
  4. 成员管理(添加、更新、列表)
  5. 团队作(检索、列出)

主要功能

  1. 聊天和频道的完整 CRUD作
  2. 支持专用、共享和标准频道
  3. 消息线程处理和答复
  4. 用户角色管理
  5. OData 查询对筛选和分页的支持