microsoft-teams-apps
The app package for a Microsoft Teams agent
What it is and what it does
microsoft-teams-apps is a high-level framework for building Microsoft Teams applications in Python. It provides decorator-based routing for different activity types (messages, etc.), built-in OAuth flow handling for user authentication, and type-safe access to Microsoft Graph via user_graph and app_graph properties. The framework sits on top of fastapi and uvicorn, handling the HTTP server and activity dispatch.
The package targets Python 3.11+ and includes an extensible plugin system. Graph functionality is optional and requires additional dependencies installed via the [graph] extra; if not installed, Graph access raises ImportError. For local development, JWT validation can be disabled via a flag or environment variable. The framework is newly released and actively maintained.
Use it for:
- Build a Teams bot that routes incoming messages to handler functions using decorators and responds in real time.
- Implement OAuth-based sign-in flows so users can authenticate and access their own Microsoft Graph data within Teams.
- Access Microsoft Graph on behalf of the app to query organizational data or perform admin operations.
- Extend the framework with custom plugins to add domain-specific functionality to Teams applications.
- Develop and test Teams applications locally with JWT validation disabled for faster iteration.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Framework for building Microsoft Teams applications with decorator-based activity routing, OAuth authentication, and Microsoft Graph integration.
Yes, if you are building Microsoft Teams applications in Python. Low install friction, permissive license, active maintenance, and no known vulnerabilities. The framework is newly released so production readiness and community adoption are not yet established; verify that its API stability and feature set match your requirements before committing to production deployment.
Install
microsoft-teams-apps on PyPI
pip
pip install microsoft-teams-appsuv
uv add microsoft-teams-appspoetry
poetry add microsoft-teams-appsInstalling microsoft-teams-apps
Before you install
Low install friction with a pure Python wheel. Active maintenance status (released 2026-08-04, 10 days old). Depends on 10 runtime packages including fastapi, uvicorn, and Microsoft-specific libraries.
License in practice
MIT license (permissive) allows commercial and private use with minimal restrictions.
Quickstart
pip install microsoft-teams-apps
from microsoft_teams.apps import App, ActivityContext
from microsoft_teams.api import MessageActivity
app = App()
@app.on_message
async def handle_message(ctx: ActivityContext[MessageActivity]):
await ctx.send(f"You said: {ctx.activity.text}")
await app.start()
Requires Python 3.11 or later. Graph functionality requires optional dependencies installed via [graph] extra; without them, user_graph and app_graph raise ImportError when accessed.
Verify before relying
- Whether the plugin system is documented with examples for extending the framework
- Performance characteristics under high message volume or concurrent activity handling
- Compatibility guarantees with specific Microsoft Teams API versions
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4.0,>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 10 — cryptography, dependency-injector, fastapi, microsoft-teams-api, microsoft-teams-common, msal, pydantic-settings, pyjwt, python-dotenv, uvicorn |
| Maintenance | actively maintained — 10 days since the last release |
| First released | |
| Downloads | 721,299/month — #5,231 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: microsoft_teams_apps-2.0.15-py3-none-any.whl
Keywords: agents, ai, bot, microsoft, teams
Tags
More Application Frameworks packages
FastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
textualTextual is a Python framework for building…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
mcpBuild and connect to Model Context Protocol…
permissive · top 1,000 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
microsoft-teams-apiHTTP client library for Microsoft Teams Bot…
permissive · top 5,000 on PyPI
microsoft-teams-commonProvides shared utilities for Microsoft Teams…
permissive · top 5,000 on PyPI
microsoft-agents-hosting-teamsProvides Teams-specific handlers and utilities…
permissive · top 15,000 on PyPI
microsoft-agents-activityProvides core types and schemas implementing…
permissive · top 5,000 on PyPI
microsoft-agents-hosting-coreProvides the core hosting infrastructure for…
permissive · top 5,000 on PyPI
microsoft-teams-cardsProvides Pydantic-based models for building…
permissive · top 5,000 on PyPI
microsoft-agents-hosting-aiohttpProvides HTTP hosting integration for Microsoft…
permissive · top 15,000 on PyPI
office365-rest-python-clientPython client library for Microsoft 365 and…
permissive · top 5,000 on PyPI
microsoft-agents-authentication-msalProvides MSAL-based authentication for…
permissive · top 15,000 on PyPI
dagster-msteamsA Microsoft Teams integration resource for…
permissive · top 15,000 on PyPI