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.12 - Microsoft Teams account with proper set-up Installation 1. Clone the repository: 2. Create a virtual environment and install dependencies: 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_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: The default MCP transport is stdio. You can also use streamable-http for HTTP deployments: The legacy sse transport is still available for older clients. 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 | Pre-built docker image There is a pre-built image hosted in ghcr.io. You can install this image by running the following command Build docker image A docker image is available to run MCP server. You can build it with the following command: Run docker image Basic run configuration: Run with environment variables from .env file: Run with Streamable HTTP transport: Setup LLM to use MCP Teams Server