Skip to main content
Cloud / Azure / Products / Microsoft 365 Agents SDK - Framework for Conversational Agents

Microsoft 365 Agents SDK - Framework for Conversational Agents

The Microsoft 365 Agents SDK is a development framework for conversational agents in C#, JavaScript and Python with channel abstraction and state management.

developer-tools
Pricing Model SDK; costs arise for the Azure and AI services used and for hosting
Availability Packages for .NET, JavaScript and Python; see official documentation
Data Sovereignty Depends on the hosting and AI services you choose
Reliability SLA per vendor of the services used / see official documentation SLA

What is the Microsoft 365 Agents SDK?

The Microsoft 365 Agents SDK is a development framework for building conversational agents, meaning software that can receive messages from users, process them and respond. Microsoft describes it as the plumbing layer between a user sending a message, whether in Teams, a website, Slack or elsewhere, and whatever logic you built to respond to that message. The SDK handles the mechanics of receiving and sending messages across different surfaces, so developers can focus on what the agent actually does.

The SDK provides an integrated environment purpose-built for agent development and is available for C#, JavaScript and Python. Microsoft does not mark the SDK documentation pages as preview.

Core Features

Channel abstraction: You write the agent logic once. The SDK translates incoming and outgoing messages to and from the format each channel expects, so adding a channel doesn’t require rewriting the agent’s core behavior.

AI agnosticism: The SDK provides the scaffolding for receiving messages, managing state and routing events, but doesn’t determine which AI service generates the response. Azure AI Foundry, OpenAI, Semantic Kernel and other libraries can be plugged in.

State and storage management: The SDK introduces the concept of a turn and tracks state across turns without requiring your own persistence layer.

Activity-based routing: Incoming messages are normalized into an Activity and routed to the appropriate handler, for example depending on whether it is a message or a user joining a conversation.

Tooling: The Microsoft 365 Agents Toolkit supports Visual Studio and Visual Studio Code, the Microsoft 365 Agents Playground enables local testing, and agents can be deployed to Azure and registered with Azure Bot Service.

Typical Use Cases

Agents in Microsoft 365: Conversational agents for Microsoft Teams and Microsoft 365 Copilot.

Agents outside Microsoft: Deployment on a company website or in channels such as Slack and Facebook Messenger.

Multi-channel strategy: One agent implementation serves several surfaces without per-channel integration code.

Changing AI landscape: The AI service in use can be swapped without rewriting large parts of the agent.

Benefits

  • One agent implementation for many channels instead of separate integrations per surface
  • No lock-in to a particular AI provider or orchestration library
  • Less boilerplate and fewer bugs in conversation flow logic thanks to built-in state management
  • Support for C#, JavaScript and Python with samples on GitHub
  • Local testing in the Microsoft 365 Agents Playground before deployment

Integration with innFactory

As a Microsoft Solutions Partner, innFactory supports you in building conversational agents with the Microsoft 365 Agents SDK: choosing language and hosting, connecting the right AI service, defining a channel strategy for Teams, Copilot and web, and deploying and operating on Azure.

Contact us for a no-obligation consultation on agent development on Microsoft platforms.

Typical Use Cases

Conversational agents for Microsoft Teams and Microsoft 365 Copilot
Agents on a company website or in third-party channels such as Slack
Reusing one agent implementation across multiple channels
Agents with multi-turn conversations and context carried across turns
Agents whose AI service may be swapped later

Technical Specifications

0th Supported languages: C# using the .NET 8.0 SDK, JavaScript using Node.js version 18 and later, Python using version 3.9 to 3.11
1st Channel abstraction: write your agent logic once, and the SDK translates incoming and outgoing messages to and from each channel's format
2nd AI-agnostic: the SDK makes no assumptions about what generates the response; Azure AI Foundry, OpenAI, Semantic Kernel or other libraries can be plugged in
3rd Built-in state and storage management with the concept of a turn as a single unit of work in a conversation
4th Flow when a message arrives: normalization into an Activity, routing to the appropriate handler, and sending the response back through the same channel
5th Developers write handlers for the activity types they care about; the SDK handles authentication, message format translation and channel connectivity
6th Tooling: Microsoft 365 Agents Toolkit for Visual Studio and Visual Studio Code, Microsoft 365 Agents Playground for local testing, deployment to Azure with registration in Azure Bot Service
7th References and samples for .NET, JavaScript and Python on GitHub

Frequently Asked Questions

What is the Microsoft 365 Agents SDK?

The Microsoft 365 Agents SDK is a development framework for building conversational agents, meaning software that can receive messages from users, process them and respond. Microsoft describes it as the plumbing layer between a user sending a message and whatever logic you built to respond to that message.

Which languages are supported?

The SDK supports C# using the .NET 8.0 SDK, JavaScript using Node.js version 18 and later, and Python using version 3.9 to 3.11.

Does the SDK dictate the AI service?

No. According to Microsoft, the SDK is AI-agnostic by design. It provides the scaffolding for receiving messages, managing state and routing events, but makes no assumptions about what generates the response. You plug in whatever AI services or orchestration libraries you prefer.

What is the Agents SDK explicitly not?

According to Microsoft, the Agents SDK isn't an AI model, an orchestration engine or a no-code builder, and it doesn't decide what an agent says. That is the job of whatever AI service or business logic the developer wires in. The SDK is the framework that gets messages to and from that logic reliably, across channels, with conversation state intact.

How does the SDK help with multiple channels?

The SDK provides a channel abstraction layer. You write your agent logic once, and the SDK translates incoming and outgoing messages to and from the format each channel expects. Adding a new channel doesn't require rewriting the agent's core behavior. Channels named include Microsoft Teams, Microsoft 365 Copilot, a company website and non-Microsoft tools such as Slack or Facebook Messenger.

How is conversation state managed?

The SDK provides built-in state and storage management. It introduces the concept of a turn, a single unit of work in a conversation, and tracks state across turns without requiring you to wire up your own persistence layer.

Note: All product information on this page has been compiled with care, but is provided without guarantee and may be outdated or incomplete. Cloud services evolve rapidly — features, pricing, SLAs, and availability change frequently. Authoritative and up-to-date information can only be found on the official product page of Azure (official documentation). This page does not represent an offer by Azure.

Quick Links

Microsoft Solutions Partner

innFactory is a Microsoft Solutions Partner. We provide expert consulting, implementation, and managed services for Azure.

Microsoft Solutions Partner Microsoft Data & AI

Ready to start with Microsoft 365 Agents SDK - Framework for Conversational Agents?

Our certified Azure experts help you with architecture, integration, and optimization.

Schedule Consultation