mc

mcp-teams-server

MCP server that integrates Microsoft Teams messaging (read, post, mention, list members and threads)

Publishermcp-teams-server
Submitted date4/13/2025

๐Ÿš€ Unleash the Power of LLMs with MCP Teams Server: Seamless Integration for Microsoft Teams

The Model Context Protocol (MCP) revolutionizes how Large Language Model (LLM) applications interact with external data sources and tools. The MCP Teams Server is a powerful implementation of the MCP, designed to seamlessly integrate with Microsoft Teams, unlocking a new realm of possibilities for AI-driven workflows.

โœจ Key Features

This integration empowers you to:

  • Initiate Engaging Threads: Start new conversations in Teams channels with compelling titles and content, effortlessly mentioning relevant users.
  • Dynamic Thread Updates: Enrich existing discussions by adding message replies, ensuring the right people are notified with user mentions.
  • Comprehensive Thread Insights: Retrieve and analyze complete thread replies for deeper understanding and context.
  • Effortless User Discovery: Easily list all members within a Teams channel for streamlined collaboration.
  • Real-time Message Access: Read channel messages to stay informed and leverage data for AI-driven insights.

๐Ÿ› ๏ธ Prerequisites

Before you begin, ensure you have the following:

  • uv Package Manager: A modern and fast package installer.
  • Python 3.10+: The foundation for the server.
  • Microsoft Teams Account: With the necessary configurations.

โš™๏ธ Installation

Get started in a few simple steps:

  1. Clone the Repository:

    git clone [repository-url] cd mcp-teams-server
  2. Create a Virtual Environment and Install Dependencies:

    uv venv uv sync --frozen --all-extras --dev

๐Ÿข Microsoft Teams Configuration

Refer to the comprehensive MS Teams Setup Guide for detailed instructions on configuring Microsoft Teams and the required Azure resources.

๐Ÿš€ Usage

Configure the following environment variables. You can use the sample file as a template:

KeyDescription
TEAMS_APP_IDUUID for your MS Entra ID application ID
TEAMS_APP_PASSWORDClient secret
TEAMS_APP_TYPESingleTenant or MultiTenant
TEAMS_APP_TENANT_IDTenant uuid in case of SingleTenant
TEAM_IDMS Teams Group Id or Team Id
TEAMS_CHANNEL_IDMS Teams Channel ID with url escaped chars

Start the server:

uv run mcp-teams-server

๐Ÿ’ป Development

For integration tests, set up these environment variables:

KeyDescription
TEST_THREAD_IDtimestamp of the thread id
TEST_MESSAGE_IDtimestamp of the message id
TEST_USER_NAMEtest user name

Run integration tests:

uv run pytest -m integration

๐Ÿณ Docker Support

Pre-built Image

A pre-built Docker image is available on ghcr.io:

docker pull ghcr.io/inditextech/mcp-teams-server:latest

Build Your Own Image

Build the Docker image with:

docker build . -t inditextech/mcp-teams-server

Run the Docker Image

Basic run:

docker run -it inditextech/mcp-teams-server

Run with environment variables from .env:

docker run --env-file .env -it inditextech/mcp-teams-server

๐Ÿค– LLM Integration

Follow the instructions in the LLM Installation Guide to set up your LLM to use the MCP Teams Server.

๐Ÿ“œ Changelog

Stay up-to-date with the latest changes and version history in CHANGELOG.md.

๐Ÿค Contributing

We welcome contributions! Please review CONTRIBUTING.md for our code of conduct and submission process.

๐Ÿ”’ Security

For security concerns, please consult our Security Policy.

Visit More

View All