Skip to content
VS Code

Microsoft 365 Teams for VS Code

io.github.mindstone/mcp-server-microsoft-teams

Microsoft 365 Teams via Graph: list chats, read/send messages, list teams/channels, presence.

client:VS Code transport:stdio runtime:npm

Install Microsoft 365 Teams in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "ms-client-id",
      "description": "MS_CLIENT_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ms-config-dir",
      "description": "MS_CONFIG_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ms-account-email",
      "description": "MS_ACCOUNT_EMAIL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ms-mcp-package-id",
      "description": "MS_MCP_PACKAGE_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "microsoft-request-timeout-ms",
      "description": "MICROSOFT_REQUEST_TIMEOUT_MS",
      "password": true
    }
  ],
  "servers": {
    "mcp-server-microsoft-teams": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@mindstone/mcp-server-microsoft-teams"
      ],
      "env": {
        "MS_CLIENT_ID": "${input:ms-client-id}",
        "MS_CONFIG_DIR": "${input:ms-config-dir}",
        "MS_ACCOUNT_EMAIL": "${input:ms-account-email}",
        "MS_MCP_PACKAGE_ID": "${input:ms-mcp-package-id}",
        "MICROSOFT_REQUEST_TIMEOUT_MS": "${input:microsoft-request-timeout-ms}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

Microsoft 365 Teams in other clients