mcp-teams
An MCP (Model Context Protocol) server implementation for Microsoft Teams integration, providing capabilities to read messages, create messages, reply to messages, mention members.
claude mcp add --transport stdio inditextech-mcp-teams-server uvx mcp-teams-server
How to use
The MCP Teams Server provides a Python-based MCP implementation that integrates Microsoft Teams capabilities into your model context workflow. It enables you to read channel messages and thread replies, create and update messages with user mentions, and list channel members. This server uses the uv runner to host the Python module and exposes the Teams-related actions as MCP methods that can be invoked by your agents or orchestration layer. To start using it, ensure your environment is configured with the required Teams credentials and channel identifiers, then run the server and connect your MCP clients to the exposed endpoints to issue read/write operations against Teams channels and threads.
How to install
Prerequisites:
- uv package manager for Python
- Python 3.10
- Access to a Microsoft Teams account with the necessary permissions
Steps:
- Clone the repository:
git clone [repository-url]
cd mcp-teams-server
- Create and activate a Python virtual environment using uv:
uv venv
- Install dependencies via uv ( frozen/dev / extras as needed ):
uv sync --frozen --all-extras --dev
- Configure Microsoft Teams integration following the guidance in the documentation:
- Read the provided MS Teams setup document at doc/MS-Teams-setup.md
- Set required environment variables (see Usage) or provide a .env file with the following keys documented in the sample.env
- Start the server using the uv launcher:
uv run mcp-teams-server
Optional: Build and run via Docker following the docker instructions in the README if you prefer containerized deployment.
Additional notes
Notes and tips:
- Ensure TEAMS_APP_ID, TEAMS_APP_PASSWORD, TEAMS_APP_TYPE, TEAM_ID, and TEAMS_CHANNEL_ID are set as environment variables or provided in a .env file before starting the server.
- For integration tests, set TEST_THREAD_ID, TEST_MESSAGE_ID, and TEST_USER_NAME as environment variables.
- The pre-built Docker image can simplify deployment: docker pull ghcr.io/inditextech/mcp-teams-server:latest and run with appropriate environment variables.
- If you encounter connectivity or permission issues with Teams, verify your Azure app registration and permissions described in MS-Teams-setup.md.
- The llms-install.md document provides guidance on configuring language model integrations to use the MCP Teams Server with an LLM.
Related MCP Servers
web-eval-agent
An MCP server that autonomously evaluates web applications.
mcp-neo4j
Neo4j Labs Model Context Protocol servers
Gitingest
mcp server for gitingest
zotero
Model Context Protocol (MCP) server for the Zotero API, in Python
fhir
FHIR MCP Server – helping you expose any FHIR Server or API as a MCP Server.
unitree-go2
The Unitree Go2 MCP Server is a server built on the MCP that enables users to control the Unitree Go2 robot using natural language commands interpreted by a LLM.