A few days ago I published something about GitHub Copilot. Today I want to talk about its less-understood but equally powerful cousin: Microsoft 365 Copilot. The core difference is that GitHub Copilot lives in your IDE and helps you write code, while Microsoft 365 Copilot lives inside Word, Excel, PowerPoint, Outlook, Teams, and SharePoint, and works with real business data. For those of us who build software, that opens up a massive extensibility surface that marketing announcements never fully explain. This post aims to give an accurate picture of what you can build today, which tools to use, and what technical decisions you'll need to make.
The fundamental split: declarative agents vs custom engine agents
Microsoft has two ways to extend Copilot, and choosing the right one is the most important decision in any project.
A declarative agent is a customized version of Microsoft 365 Copilot. You don't bring your own model or orchestration: you use Copilot's orchestrator, foundation models, and infrastructure, but you declare specific instructions, additional knowledge, and actions it can take. In practice, it's a JSON file — the manifest — that tells Copilot how to behave for a specific scenario. It requires no self-hosting, inherits all of Microsoft 365's security and compliance, and feels like Copilot because it runs inside the same interface.
A custom engine agent is the opposite in terms of control. You bring your own orchestrator, choose the model (Azure OpenAI, another Foundry model, whatever fits), use frameworks like Semantic Kernel or LangChain, and deploy it to multiple channels: Microsoft 365 Copilot, Teams, web, custom apps. It requires self-hosting on Azure, you pay for it, and you're responsible for compliance and responsible AI policies.
The practical rule I follow: if the goal is to answer questions based on organizational data with a specific tone and rules, declarative agent. If you need complex multi-step workflows, proactive messages without user input, custom UI with interactive Adaptive Cards, or users without a Copilot license, custom engine agent.
What changed significantly in 2026
Official MCP support in declarative agents. Until recently, connecting your agent to an external service meant writing an OpenAPI spec, manually configuring authentication, and hoping the orchestrator would invoke it correctly. With MCP, you pass the URL of your MCP server to the Agents Toolkit, the toolkit discovers the available tools, generates the plugin spec, and connects everything. The barrier to integrating an external service dropped from a week of configuration to a few minutes.
MCP Apps and OpenAI Apps SDK. You can now add interactive UI widgets to your declarative agents by extending MCP server-based actions. Widgets render inline or full-screen inside Microsoft 365 Copilot. This resolves one of the biggest historical limitations of declarative agents, which were text-only.
Microsoft 365 Agents Toolkit plugin for Claude Code and GitHub Copilot CLI, part of the microsoft/work-iq package. It lets you scaffold, configure, and deploy a complete declarative agent (including MCP server, authentication, and widget) using natural language in the terminal. It's in preview and requires admin consent, but it fundamentally changes the dev loop.
TeamsFx SDK is being deprecated. Full deprecation is planned for July 2026. If you're starting a new project, don't use TeamsFx — use the Microsoft 365 Agents SDK directly.
The tools you'll use
Microsoft 365 Agents Toolkit is the extension for Visual Studio Code and Visual Studio. It's the evolution of what was formerly called Teams Toolkit. It includes scaffolding, debugging, deployment, integration with Microsoft 365 Agents SDK, Azure AI Foundry, and TypeSpec for Copilot. If you're going pro-code, this is the entry point.
Microsoft 365 Agents SDK is the framework for building full-stack, multi-channel custom engine agents. It's model-agnostic, so you can combine Azure OpenAI, open-source Foundry models, or whatever you need. The official repository is at github.com/microsoft/Agents.
Copilot Studio is the low-code option. It runs as managed SaaS, so you don't need to manage infrastructure, and it's ideal when the team isn't all developers or when you want to iterate quickly. It supports both declarative agents and custom engine agents.
Microsoft 365 Agents Playground is a web-based sandbox environment for testing agents locally without needing a developer tenant or tunneling services. It solves a long-standing pain point in Teams development.
A mental framework for making decisions
Before choosing tooling, it's worth answering four questions in order.
Do your users have Microsoft 365 Copilot licenses? If not for a significant portion, declarative agents are limited or completely off the table, and you'll move to custom engine agents where costs are measured by Azure consumption.
Do you need a specific model different from what Copilot uses? If yes, custom engine. If Copilot's built-in models are sufficient, declarative simplifies everything.
Does the agent need to initiate conversations on its own or execute actions without user input? If yes, custom engine, because declarative agents are always user-initiated.
Does the agent need to run outside the Microsoft 365 ecosystem? If you need custom portals, public web, or external channels, custom engine supports that; declarative doesn't.
When all four answers point to declarative, declarative wins without question: it's faster to build, cheaper, and inherits all of Microsoft 365's security without you having to design any of it.
Now, the costs...
Declarative agents don't incur additional hosting costs because they run on Copilot's infrastructure. Users without a Copilot license can access custom engine agents in Microsoft 365 Copilot Chat, but may incur pay-as-you-go charges if the agent interacts with tenant data, based on Copilot Studio meters.
Custom engine agents run with your own orchestration and models, so you pay Azure AI Services for inference, Azure App Service or equivalent for hosting, and optionally Azure Bot Service if you publish to multiple channels. Total cost varies with orchestration complexity and inference volume.
For builders building declarative agents: you don't need a Copilot Studio license if you're only building agents. If you want grounding on organizational data, you need a license or consumption metering on the tenant.
Which stack to choose today based on your situation
If you're starting from scratch and your agent lives inside the Microsoft 365 ecosystem, open Visual Studio Code with the Microsoft 365 Agents Toolkit extension, choose declarative agent, connect it to an MCP server if you need external integrations, and deploy. It's the fastest path.
If you need to integrate custom models or complex logic, use Microsoft 365 Agents SDK with TypeScript or Python, deploy it on Azure App Service with Azure AI Foundry as the model backend, and publish it to Microsoft 365 Copilot, Teams, and whatever channels you need. The SDK already includes components for state, storage, and activity handling.
If the team isn't all developers but the use case is clear, Copilot Studio takes you from zero to production without writing much code. It's especially powerful for conversational agents with defined flows.
"Microsoft 365 Copilot isn't just a productivity tool — it's an extensibility platform. The developer layer is where the serious work happens."
- Carlos José Castro Galante
To wrap up
Most articles you read online stay at the end-user layer, showing how Copilot summarizes meetings or drafts emails. The developer layer is where the serious work happens: agents that connect line-of-business data, automate workflows that previously required complex engineering, and expose AI capabilities within the natural flow of work.
For those of us coming from the Azure AI world, this represents a logical continuity. The AI-102 and upcoming AI-103 certifications cover exactly this territory: how to orchestrate AI in real business scenarios. And Microsoft 365 Copilot is one of the most concrete places where that orchestration translates into immediate value.
Official Microsoft 365 Copilot documentation on Microsoft Learn

