Agentic Msteams
БесплатноНе проверенA self-hosted Microsoft Teams MCP server that serves as an agnostic human-in-the-loop gateway for AI agents.
Описание
A self-hosted Microsoft Teams MCP server that serves as an agnostic human-in-the-loop gateway for AI agents.
README
A self-hosted Microsoft Teams MCP server that serves as an agnostic human-in-the-loop gateway for AI agents.
Overview
This project implements a dual-surface architecture to allow AI agents to interact with humans via Microsoft Teams without requiring the agent to have direct Graph API access or complex bot logic.
v0.4.0 Feature: Human-in-the-Loop & Approvals
v0.4.0 provides a comprehensive suite of tools for agents to interact with humans via Microsoft Teams, including notifications, asynchronous questions, and formal approval workflows.
msteams_send_notification: Sends one-way alerts.msteams_ask_user: Poses structured questions; returnsrequest_id.msteams_get_user_reply: Tracks responses to asks.msteams_request_approval: Requests a formal binary decision (Approve/Reject).msteams_get_approval: Checks the state of an approval request.
Core Architecture
1. The MCP Surface (Stdio)
The primary interface for AI agents. It exposes a strictly limited toolset of six tools:
msteams_health_check: Verifies server connectivity.msteams_send_notification: Sends one-way alerts to allowlisted users/channels.msteams_ask_user: Requests information from an allowlisted user.msteams_get_user_reply: Checks the state of a requested reply.msteams_request_approval: Initiates a formal approval request.msteams_get_approval: Retrieves the decision for an approval request.
2. The Teams Surface (HTTP)
A lightweight FastAPI app that acts as the webhook receiver for Microsoft Teams. It is designed to be hosted behind a proxy/gateway.
Security Model (Secure-by-Design)
Closed-World Toolset
The server explicitly denies any arbitrary Graph API operations. All interactions are gated through specific, high-level tools.
Fail-Closed Allowlist
Notifications and Asks are only delivered to IDs defined in the MSTEAMS_ALLOWED_USER_IDS or MSTEAMS_ALLOWED_CHANNEL_IDS environment variables. If an ID is not listed, the request is rejected immediately.
Audit Logging
Every attempt to notify or ask a user is logged to a local audit file (MSTEAMS_AUDIT_LOG_PATH).
- Privacy: Log entries contain metadata and fingerprints but NEVER include the actual message or question body.
- Stability: Uses SHA-256 deterministic fingerprinting for audit evidence.
Dry-Run Mode
By default, MSTEAMS_NOTIFICATION_DRY_RUN=True. In this mode, the server validates all requests and logs them to audit but does not actually call the Microsoft Graph API. NOTE: Real Teams/Graph delivery is currently not implemented; dry-run is the intended safe default for current versions.
Installation & Configuration
Environment Variables
| Variable | Default | Description |
|---|---|---|
SERVER_HOST |
127.0.0.1 |
Bind address for the HTTP surface. |
SERVER_PORT |
8000 |
Port for the HTTP surface. |
MSTEAMS_ALLOWED_USER_IDS |
"" |
Comma-separated list of allowlisted User IDs (Required). |
MSTEAMS_ALLOWED_CHANNEL_IDS |
"" |
Comma-separated list of allowlisted Channel IDs. |
MSTEAMS_NOTIFICATION_DRY_RUN |
True |
If true, no real Graph API calls are made. |
MSTEAMS_AUDIT_LOG_PATH |
data/audit.log |
Path to the append-only audit log file. |
Running the Server
The server provides two distinct modes:
1. MCP Stdio Mode (for AI Agents)
python -m agentic_msteams_mcp.main --mcp
2. HTTP Surface Mode (for Teams Webhooks)
python -m agentic_msteams_mcp.main --http
Deployment
The server is provided as a Docker image for consistent runtime environments.
docker build -t agentic-msteams-mcp .
docker run -p 8000:8000 -e MSTEAMS_ALLOWED_USER_IDS="user1,user2" agentic-msteams-mcp --http
Установить Agentic Msteams в Claude Desktop, Claude Code, Cursor
unyly install agentic-msteams-mcpСтавит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.
Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh
Или настроить вручную
Выполни в терминале:
claude mcp add agentic-msteams-mcp -- uvx --from git+https://github.com/hdyrawan/agentic-msteams-mcp agentic-msteams-mcpFAQ
Agentic Msteams MCP бесплатный?
Да, Agentic Msteams MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Agentic Msteams?
Нет, Agentic Msteams работает без API-ключей и переменных окружения.
Agentic Msteams — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Agentic Msteams в Claude Desktop, Claude Code или Cursor?
Открой Agentic Msteams на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Gmail
Read, send and search emails from Claude
автор: GoogleSlack
Send, search and summarize Slack messages
автор: SlackRunbear
No-code MCP client for team chat platforms, such as Slack, Microsoft Teams, and Discord.
Discord Server
A community discord server dedicated to MCP by [Frank Fiegel](https://github.com/punkpeye)
Compare Agentic Msteams with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории communication
