skillfed

microsoft-teams-apps

The app package for a Microsoft Teams agent

microsoft-teams-apps v2.0.15 721.3K downloads/30d#5,231 on PyPI
Permissive license MIT Active released

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-apps

uv

uv add microsoft-teams-apps

poetry

poetry add microsoft-teams-apps

Installing 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

microsoft teams bot frameworkteams app developmentteams activity routingteams oauth authenticationmicrosoft graph integration teamsteams bot with graph apiteams application framework
teams-botoauthgraph-api

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

microsoft-teams-api

HTTP client library for Microsoft Teams Bot…

permissive · top 5,000 on PyPI

microsoft-teams-common

Provides shared utilities for Microsoft Teams…

permissive · top 5,000 on PyPI

microsoft-agents-hosting-teams

Provides Teams-specific handlers and utilities…

permissive · top 15,000 on PyPI

microsoft-agents-activity

Provides core types and schemas implementing…

permissive · top 5,000 on PyPI

microsoft-agents-hosting-core

Provides the core hosting infrastructure for…

permissive · top 5,000 on PyPI

microsoft-teams-cards

Provides Pydantic-based models for building…

permissive · top 5,000 on PyPI

microsoft-agents-hosting-aiohttp

Provides HTTP hosting integration for Microsoft…

permissive · top 15,000 on PyPI

office365-rest-python-client

Python client library for Microsoft 365 and…

permissive · top 5,000 on PyPI

microsoft-agents-authentication-msal

Provides MSAL-based authentication for…

permissive · top 15,000 on PyPI

dagster-msteams

A Microsoft Teams integration resource for…

permissive · top 15,000 on PyPI