NestDaddy

Microsoft Teams API

io.github.Maxim-Mazurok/teams-api ยท v1.10.1

AI-native Microsoft Teams integration โ€” read chats, send messages, search people

Connect Runs on your machine

Terminal
claude mcp add teams-api -e TEAMS_EMAIL=<TEAMS_EMAIL> -e TEAMS_AUTO=<TEAMS_AUTO> -e TEAMS_HEADLESS=<TEAMS_HEADLESS> -e TEAMS_LOGIN=<TEAMS_LOGIN> -e TEAMS_TOKEN=<TEAMS_TOKEN> -e TEAMS_REGION=<TEAMS_REGION> -e TEAMS_BEARER_TOKEN=<TEAMS_BEARER_TOKEN> -e TEAMS_SUBSTRATE_TOKEN=<TEAMS_SUBSTRATE_TOKEN> -e TEAMS_DEBUG=<TEAMS_DEBUG> -e TEAMS_TELEMETRY=<TEAMS_TELEMETRY> -e TEAMS_TELEMETRY_PATH=<TEAMS_TELEMETRY_PATH> -e TEAMS_IMAGE_DESCRIPTION_API_KEY=<TEAMS_IMAGE_DESCRIPTION_API_KEY> -e TEAMS_IMAGE_DESCRIPTION_MODEL=<TEAMS_IMAGE_DESCRIPTION_MODEL> -e TEAMS_IMAGE_DESCRIPTION_BASE_URL=<TEAMS_IMAGE_DESCRIPTION_BASE_URL> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "teams-api": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "TEAMS_EMAIL": "<TEAMS_EMAIL>",
        "TEAMS_AUTO": "<TEAMS_AUTO>",
        "TEAMS_HEADLESS": "<TEAMS_HEADLESS>",
        "TEAMS_LOGIN": "<TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<TEAMS_TOKEN>",
        "TEAMS_REGION": "<TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<TEAMS_TELEMETRY_PATH>",
        "TEAMS_IMAGE_DESCRIPTION_API_KEY": "<TEAMS_IMAGE_DESCRIPTION_API_KEY>",
        "TEAMS_IMAGE_DESCRIPTION_MODEL": "<TEAMS_IMAGE_DESCRIPTION_MODEL>",
        "TEAMS_IMAGE_DESCRIPTION_BASE_URL": "<TEAMS_IMAGE_DESCRIPTION_BASE_URL>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "teams-api": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "TEAMS_EMAIL": "<TEAMS_EMAIL>",
        "TEAMS_AUTO": "<TEAMS_AUTO>",
        "TEAMS_HEADLESS": "<TEAMS_HEADLESS>",
        "TEAMS_LOGIN": "<TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<TEAMS_TOKEN>",
        "TEAMS_REGION": "<TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<TEAMS_TELEMETRY_PATH>",
        "TEAMS_IMAGE_DESCRIPTION_API_KEY": "<TEAMS_IMAGE_DESCRIPTION_API_KEY>",
        "TEAMS_IMAGE_DESCRIPTION_MODEL": "<TEAMS_IMAGE_DESCRIPTION_MODEL>",
        "TEAMS_IMAGE_DESCRIPTION_BASE_URL": "<TEAMS_IMAGE_DESCRIPTION_BASE_URL>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "teams-api": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "TEAMS_EMAIL": "<TEAMS_EMAIL>",
        "TEAMS_AUTO": "<TEAMS_AUTO>",
        "TEAMS_HEADLESS": "<TEAMS_HEADLESS>",
        "TEAMS_LOGIN": "<TEAMS_LOGIN>",
        "TEAMS_TOKEN": "<TEAMS_TOKEN>",
        "TEAMS_REGION": "<TEAMS_REGION>",
        "TEAMS_BEARER_TOKEN": "<TEAMS_BEARER_TOKEN>",
        "TEAMS_SUBSTRATE_TOKEN": "<TEAMS_SUBSTRATE_TOKEN>",
        "TEAMS_DEBUG": "<TEAMS_DEBUG>",
        "TEAMS_TELEMETRY": "<TEAMS_TELEMETRY>",
        "TEAMS_TELEMETRY_PATH": "<TEAMS_TELEMETRY_PATH>",
        "TEAMS_IMAGE_DESCRIPTION_API_KEY": "<TEAMS_IMAGE_DESCRIPTION_API_KEY>",
        "TEAMS_IMAGE_DESCRIPTION_MODEL": "<TEAMS_IMAGE_DESCRIPTION_MODEL>",
        "TEAMS_IMAGE_DESCRIPTION_BASE_URL": "<TEAMS_IMAGE_DESCRIPTION_BASE_URL>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
TEAMS_EMAIL
Optional
Corporate email address for Teams authentication
TEAMS_AUTO
Optional
Set to "true" to use auto-login (macOS + FIDO2)
TEAMS_HEADLESS
Optional
Set to "true" to run FIDO2 auto-login without a visible browser
TEAMS_LOGIN
Optional
Set to "true" to use interactive browser login (all platforms)
TEAMS_TOKEN
Optional, secret
Pre-existing Skype token for direct authentication
TEAMS_REGION
Optional
API region (required with TEAMS_TOKEN, auto-detected otherwise)
TEAMS_BEARER_TOKEN
Optional, secret
Middle-tier bearer token for profile resolution
TEAMS_SUBSTRATE_TOKEN
Optional, secret
Substrate bearer token for people/chat search
TEAMS_DEBUG
Optional
Set to "true" to use Chrome debug session for token capture
TEAMS_TELEMETRY
Optional
Set to "true" to enable full debug telemetry logging (contributor use; logs all inputs and outputs locally)
TEAMS_TELEMETRY_PATH
Optional
Override the telemetry output file path (default: platform-appropriate ~/Library/... or ~/.local/share/...)
TEAMS_IMAGE_DESCRIPTION_API_KEY
Optional, secret
API key for the OpenAI-compatible vision endpoint used by teams_describe_image
TEAMS_IMAGE_DESCRIPTION_MODEL
Optional
Model name for teams_describe_image (defaults to gpt-4o-mini)
TEAMS_IMAGE_DESCRIPTION_BASE_URL
Optional
OpenAI-compatible base URL for teams_describe_image

Details

Package[email protected] (NPM, stdio)
First published26 Oct 2026
Last updated26 Oct 2026
Registry nameio.github.Maxim-Mazurok/teams-api

More communication servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.