Teams MCP Server
by dockndevaiio.github.dockndevai/mcp-teamsv0.2.0
Read Microsoft Teams teams, channels, chats and messages, and post/reply/send, safe by default.
context tax
queued
security
queued
cold start
queued
freshness
Active10d ago
Install Teams MCP server
Install in Claude Code
claude mcp add teams -e TEAMS_CLIENT_SECRET='<teams-client-secret>' -e TEAMS_TOKEN='<teams-token>' -- npx -y @dockndevai/mcp-teamsInstall in Cursor
{
"mcpServers": {
"teams": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-teams"
],
"env": {
"TEAMS_CLIENT_SECRET": "<teams-client-secret>",
"TEAMS_TOKEN": "<teams-token>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"teams": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-teams"
],
"env": {
"TEAMS_CLIENT_SECRET": "<teams-client-secret>",
"TEAMS_TOKEN": "<teams-token>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"teams": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-teams"
],
"env": {
"TEAMS_CLIENT_SECRET": "<teams-client-secret>",
"TEAMS_TOKEN": "<teams-token>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"teams": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-teams"
],
"env": {
"TEAMS_CLIENT_SECRET": "<teams-client-secret>",
"TEAMS_TOKEN": "<teams-token>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| TEAMS_CLIENT_ID | — | — | Entra (Azure AD) app (client) id. For browser sign-in, register a public client with redirect URI http://localhost. |
| TEAMS_TENANT_ID | — | — | Directory tenant: a tenant id, or common | organizations | consumers (default common). |
| TEAMS_CLIENT_SECRET | — | yes | App secret for app-only (client-credentials) auth. Omit to use interactive browser sign-in. |
| TEAMS_TOKEN | — | yes | A pre-obtained Microsoft Graph bearer token (alternative to browser or app-only auth). |
| TEAMS_MODE | — | — | Access mode: read-only | read-write | admin. Starts read-only; writes need read-write. |
| TEAMS_ALLOW_SEND | — | — | Set true to permit posting messages (channel/chat send & reply). Off by default. |
Freshness
Active — last maintenance signal 10d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-09-29 · 11d ago · GitHub
Latest release
2026-09-29 · 11d ago · GitHub · v0.2.0
Package published
no data · npm/PyPI
Registry entry updated
2026-09-29 · 10d ago · official registry · v0.2.0
FAQ
›How do I install the Teams MCP server in Claude Code?
Run: claude mcp add teams -e TEAMS_CLIENT_SECRET='<teams-client-secret>' -e TEAMS_TOKEN='<teams-token>' -- npx -y @dockndevai/mcp-teams. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Teams require an API key?
Yes. It expects TEAMS_CLIENT_SECRET, TEAMS_TOKEN, of which 2 are secrets.
›Can I use Teams as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Teams in the official MCP registry?
Yes, as io.github.dockndevai/mcp-teams.
Alternatives to Teams
Other communication MCP servers.