Your Copilot agent options for Microsoft 365

When it comes to deciding on your approach to AI development, there are numerous options to consider, including Microsoft 365 Copilot extensibility options and Azure AI solutions. This guide aims to streamline your journey through the options for Microsoft 365, assisting you in identifying the most suitable solution aligned with your specific needs and goals.

Extend Copilot's models or build a custom engine agent?

When you're looking to create a fully customized end-to-end AI product to cater to your business needs, you typically choose language models and orchestration for your Retrieval-Augmented Generation (RAG) solutions.

However, with Microsoft 365 Copilot, you also have a choice of extending Copilot's private instances of Large Language Models (LLMs) and the Azure OpenAI service. Copilot's LLM is grounded in each tenant's Microsoft 365 content so it can work with the documents, messages, and other business context people use every day. When you extend Copilot, you can utilize the orchestration layer representing the interface between foundation LLMs, to select and execute the right content from the right plugin.

📍 Your first decision is whether to extend Microsoft 365 Copilot by using the existing orchestrator to build a declarative agent, or whether to use your own custom orchestrator to build a custom engine agent.

A diagram that helps you to decide which Microsoft 365 extensibility options are best for you. Read the article on this page for the details.

📍 If you want to use agentic AI to run complex, multi-step workflows, including proactive triggers, long-running tasks, and asynchronous processing, choose to build custom engine agents.

Now, let's determine which type of agent you should build:

Extend Microsoft 365 Copilot if any of the following apply:

  • You want to build a service on top of Microsoft 365 Copilot, utilizing Copilot's model and orchestrator
  • You have previously built an API plugin (so that you can now plug it into your agent)
  • You have prior experience in building a Teams message extension (so that you can just update it as a plugin)

Build a custom agents if any of the following apply:

  • You want to use specific models, either LLM or small language model (SLM), for your service
  • You need agentic support
  • You want your service to be independent from Microsoft 365 Copilot, accessible to all Microsoft 365 users regardless of their Copilot licensing status

Pick your option

  • 🎯 If you want to extend Microsoft Copilot, go to the next section, Option 1!
    • 🎯 Then, you have choices for agents; build declarative agents, plugins, or connectors. Find out about extensibility types
  • 🎯 Otherwise, jump to Option 2 to build your own custom agents!


Option 1. Extending Microsoft 365 Copilot

Okay, you want to leverage the Copilot orchestrator! Let's have a quick grasp—Microsoft 365 Copilot is designed for enterprise users with Microsoft 365 Copilot subscription, to enhance productivity within Microsoft 365 applications.

By extending Microsoft 365 Copilot for enterprise users,

  • Your service can be a part of the Microsoft ecosystem, enabling your users to benefit from the user experience of Microsoft products and allowing you to reach millions of users
  • You can build an AI solutions for organizations to boost employee productivity across businesses
  • You can apply people-centric data with Microsoft Graph to provide more personalized experience for your users
  • You can use Graph Connector, SharePoint site library, or Dataverse table that is used in the workflow as your RAG data source

Tip

Are you a business decision maker? Check out the Microsoft Copilot Scenario Library

Types of Microsoft 365 Copilot extensibility

Now, it's important to understand the variety of methods available for applying the capabilities of external services, apps, and data. Let's find out which extensibility options are for you—

Declarative agents

🎯 Declarative agents are designed to enhance the user experience by allowing the creation of personalized chat experiences to provide tailored interactions and responses, with a similar look-and-feel with Microsoft Copilot interface in Business Chat, also as a 1:1 chat in Teams. Build a declarative agent if you want a specific agent for particular tasks and domain knowledge.

A fictional declarative agent UI.

When & why to use declarative agents:

  • Layer on top of the full capability ​of Microsoft 365 Copilot​
  • Scenario that requires ​focus or specialization
  • Scope to specific data sources including domain knowledge​
  • Custom instructions to enable nuanced interpretation of data received from sources like plugins​ and connectors

Connectors

Use connectors to ingest external data to your agents.

🎯 Graph connectors enable data ingestion from various sources to Microsoft Graph, facilitating unified data access and insights across Microsoft 365 and other services. They can work either standalone, or with declarative agents.

🎯 Power Platform connectors enable Power Platform applications to interact with external services and data sources in real-time.

Plugins

Plugins add skills and actions to Microsoft 365. Plugins have a few different types that are built differently. There are the growing number of agents you build. Your options include:

  • 🎯 API plugins can work with declarative agents by calling REST APIs via OpenAPI service.
  • 🎯 Teams Message Extensions for Teams are the search and action capability for Teams that now work as a standalone plugins too.
  • 🎯 Actions in Copilot Studio, which connects Microsoft 365 and the Power Platform environment. Actions include Prompts, Flows, and Connectors. If you prefer developing without much coding, these options are for you.

Note

Currently, API plugins are only available as actions that works within declarative agents. They don't work as standalone plugin at this moment.

Tip

If you've built message extensions for Teams before, you can immediately see the value of Copilot extensibility, but if you want to build the latest and greatest, try building API plugins and Graph Connectors!

Tool options: Pro-code or low-code?

Your journey varies based on your desired outcomes and your coding expertise. Whether you're a seasoned coder or prefer low-code or no-code solutions, there's a suite of tools tailored to your development style.

How you build and which tools you use are up to you. Your choices are:

  • 🎯 Pro-code options are declarative agents, API plugins, message extensions, and Graph connectors. Teams Toolkit for Visual Studio Code extension would be your best friend for the development to tailor your agents.

  • 🎯 Low-code or no-code options are declarative agents, all Copilot Studio actions, and Power Platform connectors as knowledge source. You can develop rapidly with user-friendly interface on Copilot Studio.

A diagram that shows various developer options.

Option 2: Building a custom engine agent for Microsoft 365

With Azure AI services, you can craft a custom AI chatbot for Teams and Microsoft 365 applications. If you’re seeking a custom bot solution on Teams chat, then building your own agents is the perfect fit for you.

A diagram that explains how a custom engine agent in Teams work

How does it differ from extending Copilot?

This diagram provides a comparison between Copilot extensions (Connectors, plugins, and declarative agents) and building custom engine agents:

This diagram compares options between extending Copilot and custom engine agents for M365

Custom engine agents are based on a bring your own model (BYOM) premise. With custom engine agents, your agent is independent of Microsoft 365 Copilot and its LLM and orchestrator.

By using custom engine agents, you can achieve:

  • Deterministic workflows
  • Custom citations and authoritative sources to the responses
  • Tenant-specific intent

🎯 Learn more on building your own custom engine agents.

Tool options: Pro-code or low-code?

How you build and which tools you use are up to you. Your choices are:

Next step

Learn prerequisites for building connectors and plugins:

See also