Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
作者による説明(英語の原文)
AI-native Microsoft Teams integration — read chats, send messages, search people
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
TEAMS_EMAIL, TEAMS_AUTO, TEAMS_HEADLESS, TEAMS_LOGIN, TEAMS_TOKEN, TEAMS_REGION, TEAMS_BEARER_TOKEN, TEAMS_SUBSTRATE_TOKEN, TEAMS_DEBUG, TEAMS_TELEMETRY, TEAMS_TELEMETRY_PATH, TEAMS_IMAGE_DESCRIPTION_API_KEY, TEAMS_IMAGE_DESCRIPTION_MODEL, TEAMS_IMAGE_DESCRIPTION_BASE_URL「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"teams-api": {
"command": "npx",
"args": [
"-y",
"teams-api",
"teams-api-mcp"
],
"env": {
"TEAMS_EMAIL": "your-value",
"TEAMS_AUTO": "your-value",
"TEAMS_HEADLESS": "your-value",
"TEAMS_LOGIN": "your-value",
"TEAMS_TOKEN": "your-value",
"TEAMS_REGION": "your-value",
"TEAMS_BEARER_TOKEN": "your-value",
"TEAMS_SUBSTRATE_TOKEN": "your-value",
"TEAMS_DEBUG": "your-value",
"TEAMS_TELEMETRY": "your-value",
"TEAMS_TELEMETRY_PATH": "your-value",
"TEAMS_IMAGE_DESCRIPTION_API_KEY": "your-value",
"TEAMS_IMAGE_DESCRIPTION_MODEL": "your-value",
"TEAMS_IMAGE_DESCRIPTION_BASE_URL": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add teams-api --env TEAMS_EMAIL=your-value --env TEAMS_AUTO=your-value --env TEAMS_HEADLESS=your-value --env TEAMS_LOGIN=your-value --env TEAMS_TOKEN=your-value --env TEAMS_REGION=your-value --env TEAMS_BEARER_TOKEN=your-value --env TEAMS_SUBSTRATE_TOKEN=your-value --env TEAMS_DEBUG=your-value --env TEAMS_TELEMETRY=your-value --env TEAMS_TELEMETRY_PATH=your-value --env TEAMS_IMAGE_DESCRIPTION_API_KEY=your-value --env TEAMS_IMAGE_DESCRIPTION_MODEL=your-value --env TEAMS_IMAGE_DESCRIPTION_BASE_URL=your-value -- npx -y teams-api teams-api-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"teams-api": {
"command": "npx",
"args": [
"-y",
"teams-api",
"teams-api-mcp"
],
"env": {
"TEAMS_EMAIL": "your-value",
"TEAMS_AUTO": "your-value",
"TEAMS_HEADLESS": "your-value",
"TEAMS_LOGIN": "your-value",
"TEAMS_TOKEN": "your-value",
"TEAMS_REGION": "your-value",
"TEAMS_BEARER_TOKEN": "your-value",
"TEAMS_SUBSTRATE_TOKEN": "your-value",
"TEAMS_DEBUG": "your-value",
"TEAMS_TELEMETRY": "your-value",
"TEAMS_TELEMETRY_PATH": "your-value",
"TEAMS_IMAGE_DESCRIPTION_API_KEY": "your-value",
"TEAMS_IMAGE_DESCRIPTION_MODEL": "your-value",
"TEAMS_IMAGE_DESCRIPTION_BASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"teams-api": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"teams-api",
"teams-api-mcp"
],
"env": {
"TEAMS_EMAIL": "your-value",
"TEAMS_AUTO": "your-value",
"TEAMS_HEADLESS": "your-value",
"TEAMS_LOGIN": "your-value",
"TEAMS_TOKEN": "your-value",
"TEAMS_REGION": "your-value",
"TEAMS_BEARER_TOKEN": "your-value",
"TEAMS_SUBSTRATE_TOKEN": "your-value",
"TEAMS_DEBUG": "your-value",
"TEAMS_TELEMETRY": "your-value",
"TEAMS_TELEMETRY_PATH": "your-value",
"TEAMS_IMAGE_DESCRIPTION_API_KEY": "your-value",
"TEAMS_IMAGE_DESCRIPTION_MODEL": "your-value",
"TEAMS_IMAGE_DESCRIPTION_BASE_URL": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
TEAMS_EMAIL envTEAMS_AUTO envTEAMS_HEADLESS envTEAMS_LOGIN envTEAMS_REGION envTEAMS_DEBUG envTEAMS_TELEMETRY envTEAMS_TELEMETRY_PATH envTEAMS_IMAGE_DESCRIPTION_MODEL envTEAMS_IMAGE_DESCRIPTION_BASE_URL envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Maxim-Mazurok で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:TEAMS_TOKEN, TEAMS_BEARER_TOKEN, TEAMS_SUBSTRATE_TOKEN, TEAMS_IMAGE_DESCRIPTION_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.10.1)がレジストリに届いたのは12 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Vexa, emailmd, MCP WhatsApp Cloud
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
AI-native Microsoft Teams integration — read conversations, send messages, and manage members via the Teams Chat Service REST API.
Designed for autonomous AI agents that need to interact with Teams: read messages, reply to people, monitor conversations, and participate in team workflows.
[!NOTE]
This project was AI-generated using Claude Opus 4.6 with human guidance and review.
teams-api can be used in three ways:
npx, which all MCP and CLI commands use.The quickest way to get started is to click one of the install badges above, or follow the instructions for your editor below.
VS Code / VS Code Insiders
Option 1 — One-click install:
Option 2 — CLI:
macOS / Linux:
# VS Code
code --add-mcp '{"name":"teams","command":"npx","args":["-y","-p","teams-api@latest","teams-api-mcp"],"env":{"TEAMS_LOGIN":"true"}}'
code-insiders --add-mcp '{"name":"teams","command":"npx","args":["-y","-p","teams-api@latest","teams-api-mcp"],"env":{"TEAMS_LOGIN":"true"}}'
Windows (PowerShell):
# VS Code
code --add-mcp '{"name":"teams","command":"npx","args":["-y","-p","teams-api@latest","teams-api-mcp"],"env":{"TEAMS_LOGIN":"true"}}'
code-insiders --add-mcp '{"name":"teams","command":"npx","args":["-y","-p","teams-api@latest","teams-api-mcp"],"env":{"TEAMS_LOGIN":"true"}}'
Windows (CMD):
rem VS Code
code --add-mcp "{\"name\":\"teams\",\"command\":\"npx\",\"args\":[\"-y\",\"-p\",\"teams-api@latest\",\"teams-api-mcp\"],\"env\":{\"TEAMS_LOGIN\":\"true\"}}"
rem VS Code Insiders code-insiders --add-mcp "{\"name\":\"teams\",\"command\":\"npx\",\"args\":[\"-y\",\"-p\",\"teams-api@latest\",\"teams-api-mcp\"],\"env\":{\"TEAMS_LOGIN\":\"true\"}}"
Option 3 — Manual config:
Add to your VS Code MCP config (.vscode/mcp.json or User Settings):
{
"mcpServers": { "teams": { "command": "npx", "args": ["-y", "-p", "teams-api@latest", "teams-api-mcp"], "env": { "TEAMS_LOGIN": "true" } } } }
Cursor
Or add to ~/.cursor/mcp.json:
{
"mcpServers": { "teams": { "command": "npx", "args": ["-y", "-p", "teams-api@latest", "teams-api-mcp"], "env": { "TEAMS_LOGIN": "true" } } } }
Claude Desktop
Add to claude_desktop_config.json (how to find it):
{
"mcpServers": { "teams": { "command": "npx", "args": ["-y", "-p", "teams-api@latest", "teams-api-mcp"], "env": { "TEAMS_LOGIN": "true" } } } }
Claude Code
claude mcp add teams -- npx -y -p teams-api@latest teams-api-mcp
Then set the environment variable TEAMS_LOGIN=true in your shell before starting Claude Code. The server will ask for your email interactively on first use.
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "teams": { "command": "npx", "args": ["-y", "-p", "teams-api@latest", "teams-api-mcp"], "env": { "TEAMS_LOGIN": "true" } } } }
[!TIP]
On macOS with a FIDO2 passkey, replace
TEAMS_LOGINwithTEAMS_AUTOfor fully unattended auth. See Authentication for details.
You can also use the CLI directly without installing anything:
npx -y -p teams-api@latest teams-api auth --login
npx -y -p teams-api@latest teams-api list-conversations --login --limit 20
If you use the CLI often, a global install is optional:
npm install -g teams-api
teams-api auth --login
Compatible coding agents can install the optional teams-api skill to learn when and how to use the CLI or SDK:
npx -y skills add Maxim-Mazurok/teams-api --skill teams-api
The installer detects supported agents and asks whether to install the skill for the current project or globally. Once installed, the agent loads it automatically for relevant Teams tasks.
Manual token usage, debug-session auth, and programmatic Node.js usage are covered later in this README.
| Feature | macOS | Windows / Linux |
|---|---|---|
| Interactive login | Full support | Full support |
| Auto-login (FIDO2) | Full support | Not supported |
| Debug session | Full support | Full support |
| Direct token | Full support | Full support |
| Token caching | macOS Keychain | Windows DPAPI / Linux secret-tool |
| CLI & MCP server | Full support | Full support |
| Programmatic API | Full support | Full support |
[!NOTE]
Windows Defender false positive: Older versions of this package used inline PowerShell to call the Windows DPAPI — a pattern that Windows Defender flags as ransomware-like behavior. This has been replaced with native Windows Credential Manager storage via keytar. If you hit issues on an older version, upgrade and re-run
teams-api auth --login. See SECURITY.md for details.
Most users do not need to manage tokens manually.
If you use interactive login, auto-login, or a Chrome debug session, teams-api captures the full token bundle automatically from Teams web traffic. That includes the base skypeToken plus the extra bearer tokens used for profile resolution and reliable people/chat/channel search.
Those flows also detect the Teams chat region automatically from the intercepted request URLs, so most users do not need to set --region or TEAMS_REGION.
On macOS, prefer auto-login when you have a platform authenticator / FIDO2 passkey set up. On other platforms, use interactive login.
Direct token usage is the advanced/manual path.
| Method | Description | Automation | Platform |
|---|---|---|---|
| Auto-login | Playwright launches system Chrome and captures the full token bundle | Fully unattended | macOS |
| Interactive login | Opens a browser window and captures skype, middle-tier, and Substrate tokens | One-time manual | All |
| Debug session | Connects to a running Chrome instance and captures the full token bundle | Semi-manual | All |
| Direct token | Provide a previously captured token or token bundle explicitly | Manual | All |
Requires macOS with a platform authenticator (e.g. Intune Company Portal) and a FIDO2 passkey enrolled. Fully unattended — no browser window appears.
The easiest cross-platform option. A browser window opens, you log in with any method your organization supports (password, MFA, passkey, etc.), and the token is captured automatically:
teams-api auth --login
Optionally pre-fill your email:
teams-api auth --login --email you@example.com
[!NOTE]
Interactive login prefers an installed browser (Edge or Chrome) when available, and falls back to Playwright's bundled Chromium.
Debug session — start Chrome with --remote-debugging-port=9222, navigate to Teams and log in, then run:
teams-api auth --debug-port 9222
Direct token — advanced/manual only. Extract x-skypetoken from browser DevTools (Network tab) and pass it directly:
teams-api list-conversations --token "<paste-token-here>" --region emea
If you want reliable people/chat/channel lookup and profile resolution on the direct-token path, also pass the extra bearer tokens captured from Teams requests:
teams-api find-people \
--token " " \ --bearer-token " " \ --substrate-token " " \ --region emea \ --query "Jane Doe"
[!TIP]
Skip this section if you are using
--login,--auto,TEAMS_LOGIN, orTEAMS_AUTO. Those modes captur
冒頭だけを表示しています。続きはリポジトリで読めます