PluginBench
MCP Server
Active
MIT

Microsoft Teams API MCP Server

io.github.Maxim-Mazurok/teams-api

What is the Microsoft Teams API MCP server?

AI-native Microsoft Teams integration — read chats, send messages, search people

How to install Microsoft Teams API

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • TEAMS_EMAIL

    Corporate email address for Teams authentication

  • TEAMS_AUTO

    Set to "true" to use auto-login (macOS + FIDO2)

  • TEAMS_LOGIN

    Set to "true" to use interactive browser login (all platforms)

  • TEAMS_TOKEN
    secret

    Pre-existing Skype token for direct authentication

  • TEAMS_REGION

    API region (required with TEAMS_TOKEN, auto-detected otherwise)

  • TEAMS_BEARER_TOKEN
    secret

    Middle-tier bearer token for profile resolution

  • TEAMS_SUBSTRATE_TOKEN
    secret

    Substrate bearer token for people/chat search

  • TEAMS_DEBUG

    Set to "true" to use Chrome debug session for token capture

  • TEAMS_TELEMETRY

    Set to "true" to enable full debug telemetry logging (contributor use; logs all inputs and outputs locally)

  • TEAMS_TELEMETRY_PATH

    Override the telemetry output file path (default: platform-appropriate ~/Library/... or ~/.local/share/...)

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "teams-api": {
      "command": "npx",
      "args": [
        "-y",
        "teams-api",
        "-y",
        "-p",
        "teams-api-mcp"
      ],
      "env": {
        "TEAMS_EMAIL": "<YOUR_TEAMS_EMAIL>",
        "TEAMS_AUTO": "<YOUR_TEAMS_AUTO>",
        "TEAMS_LOGIN": "<YOUR_TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<YOUR_TEAMS_TOKEN>",
        "TEAMS_REGION": "<YOUR_TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<YOUR_TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<YOUR_TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<YOUR_TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<YOUR_TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<YOUR_TEAMS_TELEMETRY_PATH>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "teams-api": {
      "command": "npx",
      "args": [
        "-y",
        "teams-api",
        "-y",
        "-p",
        "teams-api-mcp"
      ],
      "env": {
        "TEAMS_EMAIL": "<YOUR_TEAMS_EMAIL>",
        "TEAMS_AUTO": "<YOUR_TEAMS_AUTO>",
        "TEAMS_LOGIN": "<YOUR_TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<YOUR_TEAMS_TOKEN>",
        "TEAMS_REGION": "<YOUR_TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<YOUR_TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<YOUR_TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<YOUR_TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<YOUR_TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<YOUR_TEAMS_TELEMETRY_PATH>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "teams-api": {
      "command": "npx",
      "args": [
        "-y",
        "teams-api",
        "-y",
        "-p",
        "teams-api-mcp"
      ],
      "env": {
        "TEAMS_EMAIL": "<YOUR_TEAMS_EMAIL>",
        "TEAMS_AUTO": "<YOUR_TEAMS_AUTO>",
        "TEAMS_LOGIN": "<YOUR_TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<YOUR_TEAMS_TOKEN>",
        "TEAMS_REGION": "<YOUR_TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<YOUR_TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<YOUR_TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<YOUR_TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<YOUR_TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<YOUR_TEAMS_TELEMETRY_PATH>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "teams-api": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "teams-api",
        "-y",
        "-p",
        "teams-api-mcp"
      ],
      "env": {
        "TEAMS_EMAIL": "<YOUR_TEAMS_EMAIL>",
        "TEAMS_AUTO": "<YOUR_TEAMS_AUTO>",
        "TEAMS_LOGIN": "<YOUR_TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<YOUR_TEAMS_TOKEN>",
        "TEAMS_REGION": "<YOUR_TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<YOUR_TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<YOUR_TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<YOUR_TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<YOUR_TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<YOUR_TEAMS_TELEMETRY_PATH>"
      }
    }
  }
}
Claude Code
claude mcp add teams-api --env TEAMS_EMAIL=<YOUR_TEAMS_EMAIL> --env TEAMS_AUTO=<YOUR_TEAMS_AUTO> --env TEAMS_LOGIN=<YOUR_TEAMS_LOGIN> --env TEAMS_TOKEN=<YOUR_TEAMS_TOKEN> --env TEAMS_REGION=<YOUR_TEAMS_REGION> --env TEAMS_BEARER_TOKEN=<YOUR_TEAMS_BEARER_TOKEN> --env TEAMS_SUBSTRATE_TOKEN=<YOUR_TEAMS_SUBSTRATE_TOKEN> --env TEAMS_DEBUG=<YOUR_TEAMS_DEBUG> --env TEAMS_TELEMETRY=<YOUR_TEAMS_TELEMETRY> --env TEAMS_TELEMETRY_PATH=<YOUR_TEAMS_TELEMETRY_PATH> -- npx -y teams-api -y -p teams-api-mcp

Related MCP servers

Give your AI agent stealth web scraping with Cloudflare bypass and CSS selection, powered by Scrapling.

67k
Python
BSD-3-Clause
View repository →

Give your AI coding agent full control of a live Chrome browser for automation, debugging, and performance analysis.

45k
TypeScript
Apache-2.0
View repository →

Let AI agents manage your Puter files, websites, and serverless workers over MCP.

43k
TypeScript
AGPL-3.0
View repository →

Browser automation for AI agents via MCP, powering ByteDance's Agent TARS hybrid GUI/DOM browser control.

37k
TypeScript
Apache-2.0
View repository →

Run arbitrary shell commands from an MCP-connected AI agent.

37k
TypeScript
Apache-2.0
View repository →

Filesystem access MCP server from ByteDance's UI-TARS/Agent TARS ecosystem.

37k
TypeScript
Apache-2.0
View repository →