NewCost control: a token allowance a month for each model choice — when one runs out, the cheaper one answers.See how it works
memtro
MCP server · Email, calendar and chat

Microsoft Teams MCP server

Microsoft Teams in any MCP client, through Memtro: Microsoft Teams does not publish this server. Memtro's Microsoft Teams connector reads Microsoft Teams through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.

What the model can do

The teams, channels, channel conversations, chats and message search of a Microsoft Teams user (shares the Microsoft OAuth app with Outlook); can also post to a channel or thread, send a chat — opening it with the people named when there is not one yet — react to a message, and rewrite or delete a message it sent, when you ask it to.

Reads

  • msteams_teamsTeams the user belongs to, each with its channels.
  • msteams_chatsThe user's Teams chats — 1:1, group and meeting — most recently active first, each with who is in it and its id.
  • msteams_channel_messagesRecent top-level posts in a channel, newest first (replies are not included; use msteams_replies with a post id).
  • msteams_repliesA channel post with all its replies, oldest first.
  • msteams_searchSearch messages across all Teams chats and channels the user can see (Microsoft Search KQL: words, "exact phrase", from:name, sent>=2025-01-01).

Acts, when you ask

These change something in Microsoft Teams. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.

  • msteams_send_messagePosts a message in a Teams channel, or a reply in a thread when reply_to is a post id.
  • msteams_send_chatSends a Teams chat message under the connected user's own name — into a chat that exists, by chat_id, or to the people named in "to"…
  • msteams_reactPuts an emoji reaction on a Teams message as the connected user, or takes theirs off again with remove true.
  • msteams_edit_messageRewrites a message the connected user already sent, in a channel, a thread or a chat.
  • msteams_delete_messageDeletes a message the connected user sent, in a channel, a thread or a chat.

Connect it

First connect Microsoft Teams on Dashboard → Connections, then add Memtro to your client once. The Microsoft Teams tools appear alongside the tools of everything else you have connected; nothing is configured per connector.

Claude Code

One command registers the server; the tools are then available in every session.

claude mcp add --transport http memtro https://platform.memtro.com/api/mcp \
  --header "Authorization: Bearer sk-memtro-..."

Cursor

Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.

{
  "mcpServers": {
    "memtro": {
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Claude Desktop

Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…

OpenCode

A remote server in opencode.json.

{
  "mcp": {
    "memtro": {
      "type": "remote",
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Any other client

Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.

Who may use it

The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared Microsoft Teams connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.

Ask it like this

  • › What was decided in the #platform channel this week?
  • › Find the Teams message where Sam shared the pricing sheet
  • › Show the replies to the incident post in the Ops team
  • › Which teams am I in that discuss onboarding?

Questions

Is this an official Microsoft Teams MCP server?
No. It is Memtro's MCP server with Memtro's Microsoft Teams connector behind it: the connector reads Microsoft Teams through its API with the credentials you connect on Dashboard → Connections, and Microsoft Teams publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
What does it cost?
Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
Can it change anything in Microsoft Teams?
Only when you ask, and only what it has been granted: post a message in a channel, or a reply in one of its threads, as you; send a chat message as you, opening the 1:1 or group chat when there is not one; react to a message with an emoji, or take your reaction off again; rewrite a message you sent, in a channel or a chat; delete a message you sent, in a channel or a chat. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
Which clients work?
Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.

Other MCP servers · Email, calendar and chat