microsoft-teams-apps
The app package for a Microsoft Teams agent
Decision gist · record as of 2026-08-14
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.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- 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.
- Low install friction with a pure Python wheel.
License · maintenance · safety
MIT (permissive) — MIT license (permissive) allows commercial and private use with minimal restrictions.
last release 2026-08-04 (10 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 721,299 downloads/mo, #5,231 on PyPI
Alternatives
Verify before relying
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()- 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
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 on it.
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
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.
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.
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()
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 packagescryptographydependency-injectorfastapimicrosoft-teams-apimicrosoft-teams-commonmsalpydantic-settingspyjwtpython-dotenvuvicorn |
| 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
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “microsoft teams bot framework”
- microsoft-teams-appsFramework for building Microsoft Teams applications with…
- microsoft-teams-apiHTTP client library for Microsoft Teams Bot Framework APIs, providing…
- microsoft-agents-hosting-teamsProvides Teams-specific handlers and utilities for building Microsoft…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also microsoft-teams-api · microsoft-teams-common · microsoft-agents-hosting-teams · microsoft-agents-activity · microsoft-agents-hosting-core · microsoft-teams-cards · microsoft-agents-hosting-aiohttp · office365-rest-python-client · microsoft-agents-authentication-msal · dagster-msteams