
MCP Microsoft Teams Server
MCP server that integrates Microsoft Teams messaging (read, post, mention, list members and threads)
Tools
start_thread
Start a new thread with a given title and content
update_thread
Update an existing thread with new content
read_thread
Read replies in a thread
list_threads
List threads in channel with pagination
get_member_by_name
Get a member by its name
list_members
List all members in the team
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
Changelog
See CHANGELOG.md for a list of changes and version history.
Contributing
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
Security
For security concerns, please see our Security Policy.
License
This project is licensed under the Apache-2.0 file for details.
© 2025 INDUSTRIA DE DISEÑO TEXTIL S.A. (INDITEX S.A.)
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.