mcp-teams-reader
v1.0.1
Published
MCP Server for Microsoft Teams - search, read and summarize messages
Maintainers
Readme
teams-mcp-server
MCP Server for Microsoft Teams — search, read and summarize messages via Claude / AI assistants.
Features
- List joined Teams and channels
- Read channel messages (with time range filter)
- List and read 1:1 / group chats
- Search messages by keyword across chats and channels
- Deep links to open messages in Teams
Quick Start
npx mcp-teams-readerSetup
1. Register an Azure AD App
- Go to Azure Portal → App registrations → New registration
- Set Supported account types to your org (single tenant)
- Under Authentication, enable Allow public client flows (for Device Code Flow)
- Under API permissions, add these Delegated permissions for Microsoft Graph:
Chat.ReadChannelMessage.Read.AllTeam.ReadBasic.AllChannel.ReadBasic.AllUser.Read
- Click Grant admin consent (or ask your admin)
2. Configure MCP Client
Add to your MCP client config (e.g. Claude Code settings.json or claude_desktop_config.json):
{
"mcpServers": {
"teams": {
"command": "npx",
"args": ["mcp-teams-reader"],
"env": {
"TEAMS_CLIENT_ID": "your-azure-app-client-id",
"TEAMS_TENANT_ID": "your-azure-tenant-id"
}
}
}
}3. Authenticate
On first use, any tool call will return a Device Code login prompt. Open the URL in your browser, enter the code, and sign in. The token is cached locally for future use.
Available Tools
| Tool | Description |
|------|-------------|
| list_my_teams | List all Teams you've joined |
| list_channels | List channels in a team |
| get_channel_messages | Get channel messages (with optional time filter) |
| list_my_chats | List recent 1:1 and group chats |
| get_chat_messages | Get messages from a chat |
| search_messages | Search messages by keyword across chats |
| search_channel_messages | Search messages by keyword in a channel |
Development
git clone <repo-url>
cd teams-mcp-server
npm install
cp .env.example .env # fill in your Client ID and Tenant ID
npm run devLicense
MIT
