Microsoft Teams
An MCP (Model Context Protocol) server implementation for Microsoft Teams integration, providing capabilities to read messages, create messages, reply to messages, mention members.
What is Microsoft Teams?
Microsoft Teams is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to mcp (model context protocol) server implementation for microsoft teams integration, providing capabilities to read messages, create messages, reply to messages, mention members.
An MCP (Model Context Protocol) server implementation for Microsoft Teams integration, providing capabilities to read messages, create messages, reply to messages, mention members.
This server falls under the Communication category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- An MCP (Model Context Protocol) server implementation for Mi
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx mcp-microsoft-teams-serverConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Microsoft Teams
The MCP Microsoft Teams Server is a Python-based MCP integration built by InditexTech that connects AI agents to Microsoft Teams, enabling them to read channel messages, create new threads, post replies, and mention team members programmatically through a structured MCP interface. It authenticates via Azure's Bot Framework using an Entra ID application, making it suitable for enterprise deployments where Teams is the primary communication platform. This server allows AI coding assistants and automation agents to participate in or monitor Teams channels without a human in the loop, useful for automated reporting, incident notification, or knowledge-base queries surfaced directly in Teams.
Prerequisites
- Python 3.10 and uv package manager installed
- A Microsoft Azure account with permission to register an Entra ID (Azure AD) application
- A Microsoft Teams account with access to the target team and channel
- The target Team ID and Channel ID from your Teams environment
- An MCP-compatible client such as Claude Desktop or Claude Code
Register an Azure Bot / Entra ID application
In the Azure Portal, create an App Registration under Microsoft Entra ID. Note the Application (client) ID and create a client secret. Configure the bot as SingleTenant or MultiTenant and grant the required Microsoft Graph and Teams permissions.
Clone the repository and install dependencies
Clone the mcp-teams-server repository and install Python dependencies using uv.
git clone https://github.com/InditexTech/mcp-teams-server.git
cd mcp-teams-server
uv venv
uv sync --frozen --all-extras --devCreate a .env file with your credentials
Copy the sample .env file and fill in your Azure application credentials and Teams channel identifiers.
TEAMS_APP_ID=your-entra-app-uuid
TEAMS_APP_PASSWORD=your-client-secret
TEAMS_APP_TYPE=SingleTenant
TEAMS_APP_TENANT_ID=your-tenant-uuid
TEAM_ID=your-teams-group-id
TEAMS_CHANNEL_ID=your-channel-id-url-encodedStart the MCP server
Run the server using uv. It will read credentials from the .env file and start listening for MCP connections.
uv run mcp-teams-serverOr deploy with Docker
Use the pre-built Docker image from GitHub Container Registry for a self-contained deployment without Python setup.
docker pull ghcr.io/inditextech/mcp-teams-server:latest
docker run --env-file .env -it ghcr.io/inditextech/mcp-teams-server:latestMicrosoft Teams Examples
Client configuration
Claude Desktop configuration for the Microsoft Teams MCP server. The env block must contain all required Azure and Teams credentials.
{
"mcpServers": {
"teams": {
"command": "uv",
"args": ["run", "mcp-teams-server"],
"env": {
"TEAMS_APP_ID": "your-entra-app-uuid",
"TEAMS_APP_PASSWORD": "your-client-secret",
"TEAMS_APP_TYPE": "SingleTenant",
"TEAMS_APP_TENANT_ID": "your-tenant-uuid",
"TEAM_ID": "your-teams-group-id",
"TEAMS_CHANNEL_ID": "your-url-encoded-channel-id"
}
}
}
}Prompts to try
Example tasks you can ask your AI agent to perform in Microsoft Teams once the server is connected.
- "Read the last 10 messages from the general channel"
- "Create a new thread in the channel with the title 'Deploy update v2.4' and summarize the changes"
- "Reply to the latest thread and mention @john.doe"
- "List all members of the team"
- "Post a status update to the channel saying the nightly build completed successfully"Troubleshooting Microsoft Teams
Authentication fails with 401 Unauthorized
Verify that TEAMS_APP_ID and TEAMS_APP_PASSWORD match your Azure App Registration exactly. If using SingleTenant, confirm TEAMS_APP_TENANT_ID is the correct tenant UUID. Ensure the client secret has not expired in the Azure Portal.
TEAMS_CHANNEL_ID is not found or returns 404
The channel ID must be URL-encoded because Teams channel IDs contain special characters. Copy the channel ID from the Teams web URL and URL-encode it, or use the Microsoft Graph Explorer to retrieve the correct encoded ID.
Server starts but no messages can be read from the channel
Ensure the Azure app has been granted and admin-consented the required Microsoft Graph API permissions (ChannelMessage.Read.All, ChannelMessage.Send, TeamMember.Read.All). Check the Azure Portal under API permissions for your app registration.
Frequently Asked Questions about Microsoft Teams
What is Microsoft Teams?
Microsoft Teams is a Model Context Protocol (MCP) server that mcp (model context protocol) server implementation for microsoft teams integration, providing capabilities to read messages, create messages, reply to messages, mention members. It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Microsoft Teams?
Follow the installation instructions on the Microsoft Teams GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Microsoft Teams?
Microsoft Teams works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Microsoft Teams free to use?
Yes, Microsoft Teams is open source and available under the Apache 2.0 license. You can use it freely in both personal and commercial projects.
Microsoft Teams Alternatives — Similar Communication Servers
Looking for alternatives to Microsoft Teams? Here are other popular communication servers you can use with Claude, Cursor, and VS Code.
Slack
★ 86.1kEnables interaction with Slack workspaces through comprehensive channel management, messaging, user management, file uploads, and Block Kit formatting. Features secure credential storage via macOS Keychain and supports all major Slack operations incl
LibreChat
★ 37.3kEnhanced ChatGPT Clone: Features Agents, MCP, DeepSeek, Anthropic, AWS, OpenAI, Responses API, Azure, Groq, o1, GPT-5, Mistral, OpenRouter, Vertex AI, Gemini, Artifacts, AI model switching, message search, Code Interpreter, langchain, DALL-E-3, OpenA
Note Gen
★ 11.9kA cross-platform Markdown AI note-taking software.
DeepChat
★ 5.8k🐬DeepChat - A smart assistant that connects powerful AI to your personal world
WhatsApp MCP
★ 5.7kConnects AI assistants to the official Meta WhatsApp Cloud API for managing conversations and sending various message types through natural language. It provides tools for media management, template messages, and real-time webhook processing without
Apple
★ 3.1kEnables interaction with Apple apps like Messages, Notes, and Contacts through the MCP protocol to send messages, search, and open app content using natural language.
Browse More Communication MCP Servers
Explore all communication servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Microsoft Teams in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Microsoft Teams?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.