NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #5580 most downloaded on PyPI
Cards package for Microsoft Teams
Last release 18 days ago
16 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Most releases are documented
notes for 7 of 8 stable releases
Nothing withdrawn
no release was ever pulled
1 years old
32 releases · first in 2025
One column per month.
Fix Windows encoding in SDK import test by Aamir Jawaid (@heyitsaamir) in #541
ctx.state, App(state=...)) and wire into dispatch by Lily Du (@lilyydu) in #554Full Changelog: v2.1.0a2...v2.1.0
Preview release on the 2.1 train. Ports the channelData hotfix from 2.0.16.
Preview release on the 2.1 train. Ports the channelData hotfix from 2.0.16.
The Teams service can send nested channelData objects as empty ({}). Because fields like AppInfo.id were required, Pydantic raised a ValidationError and the entire activity was rejected, so affected bots silently stopped responding to messages.
This release makes those inbound-only fields optional so the SDK degrades gracefully: AppInfo.id, ChannelInfo.id, TeamInfo.id, TenantInfo.id, ChannelDataSettings.selected_channel, Attachment.content_type, and EntityBase.type.
Relaxing EntityBase.type also means an entity type introduced after this SDK version no longer drops the message.
This is a preview release, published to PyPI under the next tag. Install with pip install microsoft-teams-apps==2.1.0a2.
Fixes #563. Thanks to jerbob92 for the report.
Full Changelog: v2.1.0a1...v2.1.0a2
v2.1.0a1 is the first 2.1 alpha, introducing Agent 365 identity, lifecycle, proactive messaging, and observability support. It includes the shared 2.0
v2.1.0a1 is the first 2.1 alpha, introducing Agent 365 identity, lifecycle, proactive messaging, and observability support. It includes the shared 2.0 maintenance baseline documented in v2.0.15; those changes are not repeated here.
Alpha: This prerelease is intended for evaluation and early integration. APIs may change before the stable 2.1 release.
AgenticUser, AgenticAppInstance, and AgenticBlueprint while retaining service wire compatibility (#524) — Aamir Jawaid (@heyitsaamir).AgenticIdentity as the operation scope for requests, proactive sends, and scoped API clients (#533) — Aamir Jawaid (@heyitsaamir).agentLifecycle activity models, parsing, routing, and per-variant handlers (#492) — Aamir Jawaid (@heyitsaamir).streamSequence data from final streamed messages (#539) — Corina (@corinagum).The Agent 365 work was integrated through #464 — Aamir Jawaid (@heyitsaamir).
pip install --pre --upgrade "microsoft-teams-apps==2.1.0a1"Hotfix for a regression introduced in 2.0.15 .
Hotfix for a regression introduced in 2.0.15.
The Teams service can send nested channelData objects as empty ({}). Because fields like AppInfo.id were required, Pydantic raised a ValidationError and the entire activity was rejected, so affected bots silently stopped responding to messages.
This release makes those inbound-only fields optional so the SDK degrades gracefully: AppInfo.id, ChannelInfo.id, TeamInfo.id, TenantInfo.id, ChannelDataSettings.selected_channel, Attachment.content_type, and EntityBase.type.
Relaxing EntityBase.type also means an entity type introduced after this SDK version no longer drops the message.
If you are on 2.0.15, upgrading is recommended.
Fixes #563. Thanks to jerbob92 for the report.
Full Changelog: v2.0.15...v2.0.16
Deprecated skip_auth in favor of the unauthenticated-request option ( #501 ) and removed typed extras from message activity input ( #507 ) — Aamir Jaw…
v2.0.15 is a stable maintenance release with API, authentication, streaming, invoke, and HTML widget improvements. It also refreshes examples, documentation, dependencies, and release-pipeline reliability.
application/search invoke support across the API and Apps packages (#523) — Corina (@corinagum).reply_to_id (#529) — Lily Du (@lilyydu).skip_auth in favor of the unauthenticated-request option (#501) and removed typed extras from message activity input (#507) — Aamir Jawaid (@heyitsaamir).ChannelData (#504) — Mehak Bindra (@MehakBindra).activityId from the reply POST URL (#521) — Corina (@corinagum).conversationUpdate parsing tolerant of channel-member and unknown event types (#522) — Corina (@corinagum).extendedmarkdown as public preview (#517) — Kavin (@singhk97).pyasn1 (#525), and Tab Web dependencies (#518, #519, #527) — Dependabot (@dependabot).pip install --upgrade "microsoft-teams-apps==2.0.15"fix(apps): resolve streaming error handling for 2-minute timeout & content stream not allowed by WERCK Ayrton (@Athosone) in #453
Full Changelog: v2.0.13...v2.0.14
Nothing published for this version
Quoted Replies and Threaded Replies in the Teams SDK
Full Changelog: v2.0.11...v2.0.12
fix(http-stream): wait for in-flight flush before sending final close message by Corina (@corinagum) in #419
This release jumps microsoft-teams-* packages from 2.0.0 to 2.0.11 as a one-time alignment with @microsoft/teams.* (npm). Going forward, the two SDKs progress on a shared 2.0.x patch cadence.
Full Changelog: v2.0.0...v2.0.11
Deprecate ai, openai, mcpplugin, and a2a packages by Aamir Jawaid (@heyitsaamir) in #406
app.get_app_graph + ctx.*_graph to sovereign endpoints via cloud.graph_scope by Corina (@corinagum) in #402Full Changelog: v2.0.0a58...v2.0.0
Nothing published for this version
feat: add workspace dep versioning via hatch-teams-build plugin by Aamir Jawaid (@heyitsaamir) in #378
Full Changelog: v2.0.0a49...v2.0.0a58
Nothing published for this version
fix: ensure copilot agent ends with the action plan by @heyitsaamir in https://github.com/microsoft/teams.py/pull/353
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a31...v2.0.0a49
Bump picomatch from 4.0.3 to 4.0.4 in /examples/tab/Web by @dependabot[bot] in https://github.com/microsoft/teams.py/pull/328
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a20...v2.0.0a31
Upgrade transitive deps to resolve 8 known vulnerabilities
Breaking Changes
Features
Bug Fixes
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a10...v2.0.0a20
Nothing published for this version
Nothing published for this version
[Fix] streaming: do not reset timeout for each emit, do not wait forever on close stream by @MehakBindra in https://github.com/microsoft/teams.py/pull
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a8...v2.0.0a9
We are updating the namespace of the package to go from microsoft.teams.* to microsoft_teams.*. For the duration of alpha, we'll continue to support t
microsoft.teams.* to microsoft_teams.*. For the duration of alpha, we'll continue to support the previous and issue a warning. But post alpha, we'll remove microsoft.teams support.Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a6...v2.0.0a7
Nothing published for this version
[feat] Add BotBuilder Plugin package, sample and tests by @MehakBindra in https://github.com/microsoft/teams.py/pull/190
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a5...v2.0.0a6
Temporary: skip streaming tests by @MehakBindra in https://github.com/microsoft/teams.py/pull/200
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a4...v2.0.0a5
Update openai package to 2.4.0 and fix breaking changes by @Copilot in https://github.com/microsoft/teams.py/pull/181
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a3...v2.0.0a4
[Bug] conversationId in tab sample should be camelCase as it is consumed by React App by @MehakBindra in https://github.com/microsoft/teams.py/pull/17
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a2...v2.0.0a3
Tab apps and functions integration
Full Changelog: https://github.com/microsoft/teams.py/compare/v2.0.0a1...v2.0.0a2
[common]: expose ConsoleLoggerOptions in init by @lilyydu in https://github.com/microsoft/teams.py/pull/144
Full Changelog: https://github.com/microsoft/teams.py/compare/v0.0.1a5...v2.0.0a1
Unpack App Options by @heyitsaamir in https://github.com/microsoft/teams.py/pull/127
Full Changelog: https://github.com/microsoft/teams.py/compare/v0.0.1a4...v0.0.1a5
[api/tests]: add message_reaction and sent_activity tests by @lilyydu in https://github.com/microsoft/teams.py/pull/117
Full Changelog: https://github.com/microsoft/teams.py/compare/v0.0.1a3...v0.0.1a4
Update notes for creating new package by @heyitsaamir in https://github.com/microsoft/teams.py/pull/113
Full Changelog: https://github.com/microsoft/teams.py/compare/v0.0.1a2...v0.0.1a3
[cards]: additional actions by @lilyydu in https://github.com/microsoft/teams.py/pull/111
Full Changelog: https://github.com/microsoft/teams.py/compare/v0.0.1a1...v0.0.1a2
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →