Integrate AI with Microsoft Teams Communications
MCP server for Microsoft Teams integration that enables reading messages, creating threads, replying with mentions, and listing channel members.
Why it matters
Enable AI assistants to seamlessly interact with Microsoft Teams, allowing them to read messages, create and reply to threads, mention users, and manage team communications.
Outcomes
What it gets done
Create and update threads with mentions
Read channel messages and replies
List team members within a channel
Manage communication secrets securely
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-microsoft-teams | bash Capabilities
Tools your agent gets
Create a new thread in a channel with title, content, and mention users.
Update an existing thread with replies and mention users.
Read all replies in a thread.
List all team members in a channel.
Read messages from a channel.
Overview
Microsoft Teams MCP Server
What it does
MCP server implementation that provides Microsoft Teams integration capabilities including message reading, thread creation, replies with mentions, and member listing
How it connects
When you need to integrate Model Context Protocol capabilities with Microsoft Teams channels for reading and writing messages, managing threads, and working with team members
Source README
MCP Teams Server
An MCP (Model Context Protocol) server implementation for
Microsoft Teams integration, providing capabilities to
read messages, create messages, reply to messages, mention members.
Features
https://github.com/user-attachments/assets/548a9768-1119-4a2d-bd5c-6b41069fc522
- Start thread in channel with title and contents, mentioning users
- Update existing threads with message replies, mentioning users
- Read thread replies
- List channel team members
- Read channel messages
Prerequisites
- uv package manager
- Python 3.10
- Microsoft Teams account with proper set-up
Installation
- Clone the repository:
git clone [repository-url]
cd mcp-teams-server
- Create a virtual environment and install dependencies:
uv venv
uv sync --frozen --all-extras --dev
Teams configuration
Please read this document to help you to configure Microsoft Teams and required
Azure resources. It is not a step-by-step guide but can help you figure out what you will need.
Usage
Set up the following environment variables in your shell or in an .env file. You can use sample file
as a template:
| Key | Description |
|---|---|
| TEAMS_APP_ID | UUID for your MS Entra ID application ID |
| TEAMS_APP_PASSWORD | Client secret |
| TEAMS_APP_TYPE | SingleTenant or MultiTenant |
| TEAMS_APP_TENANT_ID | Tenant uuid in case of SingleTenant |
| TEAM_ID | MS Teams Group Id or Team Id |
| TEAMS_CHANNEL_ID | MS Teams Channel ID with url escaped chars |
Start the server:
uv run mcp-teams-server
Development
Integration tests require the set-up the following environment variables:
| Key | Description |
|---|---|
| TEST_THREAD_ID | timestamp of the thread id |
| TEST_MESSAGE_ID | timestamp of the message id |
| TEST_USER_NAME | test user name |
uv run pytest -m integration
Pre-built docker image
There is a pre-built image hosted in ghcr.io.
You can install this image by running the following command
docker pull ghcr.io/inditextech/mcp-teams-server:latest
Build docker image
A docker image is available to run MCP server. You can build it with the following command:
docker build . -t inditextech/mcp-teams-server
Run docker image
Basic run configuration:
docker run -it inditextech/mcp-teams-server
Run with environment variables from .env file:
docker run --env-file .env -it inditextech/mcp-teams-server
Setup LLM to use MCP Teams Server
Please follow instructions on the following document
Security
For security concerns, please see our Security Policy.
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.