2026-11-11
Microsoft 365 Copilot Studio Plugins - Simply Explained

Show notes
The hardest part of Copilot Studio plugins is the vocabulary, not the code. Welcome to the M365 FM podcast, where we explore the people, ideas, and technologies shaping the future of work. In this episode of Simply Explained you will learn:
- Why Copilot Studio Plugins Sound Harder Than They Are
- What a Plugin Actually Is
- How Copilot Decides to Use a Plugin
- Connectors, Agents, and Where Copilot Studio Fits
- Building One Without Writing Much Code
- What It Looks Like in Real Work
- Common Mistakes and Honest Limits
- What It Costs and Who Controls It
- The One Thing to Remember About Copilot Studio Plugins
Simply Explained by M365.FM breaks down Microsoft 365, Azure and modern IT topics in clear, jargon-free language. Hosted by Mirko Peters. Become a supporter of this podcast: https://www.spreaker.com/podcast/m365-fm-microsoft-365-azure-cloud-power-platform-ai--6704921/support. This episode includes AI-generated content.
Host: Mirko Peters
Guests
Transcript
Read the full transcript
Welcome to the M365 FM podcast, where we explore the people, ideas and technologies shaping the future of work. Why Copilot Studio plugins sound harder than they are. The hardest part of Copilot Studio plugins is the vocabulary, not the code. Welcome to the M365 FM podcast where we explore the people, ideas and technologies shaping the future of work. By the end, you will be able to explain them to someone else in one sentence. A plugin is a package that gives copilot one new ability, like checking a budget or booking a room. The surprising part is how copilot decides to use it, because the whole thing comes down to matching your words to a short description. That one rule explains why plugins work, why they sometimes fail, and what it takes to build one. What a plugin actually is. Start with the plain version, because the technical version hides the simple part. A Microsoft three hundred sixty five copilot plugin is an installable package that brings together the abilities copilot needs for one specific job. It is not a new product you buy from a store, and it is not a single switch. You flip inside that bundle. You can put a few different things and you do not have to use all of them. You can include a small, focused assistant that carries its own instructions and knowledge. You can include a reusable skill which is a saved set of steps for a job you repeat, often. Adding a connector lets copilot reach content. Living outside Microsoft three hundred sixty five. You can also point the bundle at a tool server. Microsoft calls this an MCP server, and it is really just a service that offers a menu of jobs. Copilot can ask it to run a plugin, can use one of these pieces or several, and you can build new pieces or reuse ones that already exist. One distinction trips up almost everyone, and it is worth holding on to. The package is the box, and the action is the thing that actually does the work. A box on its own changes nothing, because copilot only gets value when it picks one action out of the box and runs it. That is why two very different jobs can share the same package and still behave nothing alike. A travel budget makes this concrete. A plugin for that budget can answer one kind of question, which is how much money is left. The same plugin can also do something quite different, which is charge a new expense to that budget. There is one more part of the plane version that matters. The package does not contain the outside service it talks to. It holds the connection details, the address and the permission settings while the service itself keeps running somewhere else. That separation helps because a team can update the outside service without repackaging the plugin. The package also carries a short description of itself, and that description does more work than it looks. Copilot reads it to decide whether the plugin is even relevant to your question. A clear description of a budget plugin says it can look up a budget and charge an expense. That is enough for copilot to know when to reach for it. Microsoft uses the word plugin in two ways, and the overlap confuses people. The package is one meaning, and the technical action that a focused assistant uses is the other. Keep the box and the action separate in your head and most of the jargon stops fighting you. How copilot chooses between all those actions is the part that makes the whole thing click. And that is exactly where we go next. How copilot decides to use a plugin. Now for the rule that runs underneath all of this, copilot reads a short description of each plugin, and when your words line up with that description, it reaches for the plugin. If nothing lines up, copilot answers on its own and the plugin never wakes up, that is the whole trigger. The flow looks like this. In practice, you type a question and copilot scans the plugins it is allowed to use. It maps the important parts of your question onto the inputs that one action expects. Then it asks you to allow it to send your words to that plugin. Once you agree, the plugin fetches a token. If the outside service needs one, it calls the service and it hands the result back to copilot. Copilot turns that result into an answer you can read. And the whole round trip can happen in a couple of seconds. Two small examples show how literal this matching is. Ask how much is left in the travel budget, and copilot finds the lookup action and returns a number. Ask it to charge five hundred dollars for Megan's plane ticket, and it finds the action that changes data and sends the charge through. The words you choose are doing real work here, because a vague question gives copilot nothing to match against. That is why a well-written description is not paper work. It is the thing that makes the plugin reachable. Permission is where the design earns trust. The first time copilot wants to send your data to a plugin, it asks you to confirm. After that, actions that only read data stop asking. While actions that change data keep asking every time. Developers can change those defaults. But the safe behavior is the one you get by default. So the plugin is not reading your budget in the background, and that matters when the data belongs to your company. There is a second layer worth knowing about. A tool server can update its own menu of jobs. Copilot can pick up the new jobs at runtime without anyone repackaging the agent. That is handy for a service that changes often because the plugin stays useful as the service grows. When a result needs to look richer than plain text, the plugin can send back a small card or widget. Copilot renders it as a table, a form, or a link. You have seen these as the tidy panels that appear inside a chat, and they belong to the plugin rather than the AI. Guessing at formatting connectors, agents and where Copilot Studio fits. Three words get mixed up constantly, and untangling them makes the rest of this easier. A connector brings knowledge in an action. Lets the agent do something out in the world. A plugin is the package that can carry either one or both. Begin with the connector because it is the one people meet first. A connector is a wrapper around an outside service, and it lets copilot pull in content or reach a system it could not see before. Some connectors are pre-built, so you pick the service and sign in. Others are custom, which means you build the wrapper yourself when no ready made one exists. Connectors also come in two levels of access. Standard connectors are included with every copilot studio plan, while premium connectors need a plan that covers them. That pricing line is worth remembering because a premium connector can decide which plan you need, an agent is the next piece. A declarative agent is Microsoft's name for this kind of focused assistant. You define it with a purpose its instructions, its knowledge, and the actions it is allowed to take. The agent is the character and the plugin is the backpack it carries. There is a second kind of agent for teams that want total control. A custom engine agent lets a developer own the orchestration, the model, the hosting, and the interface. That is more power and more work. Most beginners never need that level, and the declarative route covers a surprising amount. That is where Microsoft three. Sixty five Copilot Studio sits right in the middle. It is the Maker Room, a low code place where you build the agent and snap abilities onto it without starting from a blank code file. You still get real control over the agent's instructions, its knowledge, its variables, and the actions it can run. You just work through a visual canvas instead of a compiler. It helps to see where each product lives. The plugin idea runs inside Microsoft three hundred sixty five. Copilot, which is the copilot your colleagues already use every day. The building happens in Copilot Studio, which sits on top of Power Platform, the same family that holds Power apps Power Automate and Power BI. Azure shows up mostly on the edges, hosting outside services and running the billing meter for usage. If you want the simplest possible start, there is even a lightweight builder inside copilot itself for small teams, so you are not learning three unrelated worlds. You are learning one idea that happens to touch all three and building one without writing much code. If you have never built anything technical, this is the part that should reassure you. The low code path is real, and it starts from something that already works rather than a blank page. You pick a pre-built connector, or you build a custom connector from an existing description of an API. An API is just the way one program asks another program to do something. You can also attach a direct action to an API or a tool server. Most beginners start with the pre-built route because it skips the hardest questions. When you do need a custom connector, you rarely write it from nothing. You can hand the tool an existing description and let it build the wrapper for you. You might think that building one means writing code, but it is actually closer to filling in a form. You open your agent, go to the tools page and add a tool. You choose the service, create a connection and sign in with an account that has the right access. Then you decide which credentials the tool should use. And this is a decision people get wrong all the time. By default, the tool uses the credentials of the person asking. You can switch it to use the maker's credentials instead so every user shares one connection. That switch changes both who can reach the data and who gets billed for it. You test the whole thing in the chat panel, fix what looks off, and publish. The test panel is forgiving, which is exactly why it is the right place to learn. You can ask clumsy questions there. Watch which action fires and adjust the description until the matching works. There is one honest catch about testing. A trial license lets you build an agent and try it in the test panel, but it does not let you publish. You cannot hand it to real people yet you can still learn a lot inside that panel, which is why it is worth starting there before anyone brings up budgets and licenses. When you are ready to share, the work follows a familiar path. You plan the task, build or reuse the pieces, package and test the plugin, and then publish or share it. After that, you make it available under whatever rules your organization sets and you monitor and update it over time. That last step is the one everyone forgets and it is the one that keeps a plugin from going stale. Everything you have heard so far sounds tidy. The real world is messier than that, and the next section is where the mess lives. What it looks like in real work. Abstract pieces become obvious once you see them in a real job. Take an employee support assistant. It answers common policy questions from approved company content so it works from knowledge. A connector brought in. It does not invent answers from the open internet. And that is the everyday win. A new hire can get a straight answer without emailing three people. Then picture a support desk. A customer asks about an order, and the assistant pulls the current status from an outside system in the middle of the conversation. The knowledge did not sit inside copilot and it was never copied in the action. Asked the outside service for the latest answer and brought it back, which is exactly what a read action is for. The finance example is where a right action earns its place. Someone asks how much is left in a project budget and the assistant reads the number. Then they ask to charge a new expense to that budget, and the same assistant writes the change back through the service. That is the difference between a tool that can tell you things and a tool that can change things. It is why copilot asks permission before it sends anything that modifies a record. Common mistakes and honest limits. This is the part a lot of explainers skip and skipping it is how people get burned. The limits here come from Microsoft's own documentation, so none of this is guesswork. Most plugin failures are not the AI being weak. They are configuration licensing and permission problems. Wearing a costume. The first mistake is stuffing too many plugins into one agent with up to five plugins. Copilot always loads them into the conversation past five. It stops loading them all and starts matching on the plugin descriptions instead. That means a poorly written description can drop your plugin out of the running without any error message. Keep the plugin count small and the description sharp, and this problem mostly disappears. The second mistake is giving one plugin too many tools. Microsoft warns that response quality can drop once a plugin carries more than about ten functions or tools, everything has to fit inside a limited window. A plugin with forty tools sounds impressive and behaves worse than a plugin with five fewer clearer tools. Win. The third mistake is picking the wrong way to sign in. Some options only work for one kind of plugin, and An API key works for API plugins, but not for tool server plugins, and a newer automatic registration option works for tool server plugins, but not for API plugins. Pick a scheme the plugin type does not support and the connection fails for reasons that look mysterious until you know the rule. The fourth mistake is leaning on power automate flows as actions inside an agent. Microsoft says those flows may not run reliably and may not return results at all in some cases. A new flow does not even appear in the add action list. That is a real trap, because flows feel like the natural choice if you already use Power Automate. The fifth mistake is handing copilot an API shape. It cannot read nested objects inside a request. Certain combined schemas and API keys tucked into headers or query strings are simply not supported. A technically correct API can still be the wrong API for a plugin, and flattening the shape is the usual fix. The sixth mistake is assuming that a demo tenant means it works for everyone. A tenant is just your organization's private slice of Microsoft's cloud, and a demo one is a practice copy of it. Plenty of features need an active copilot license and the right permissions. And when they are missing, the failure is silent. The agent simply says it cannot respond with no clue about the real cause. The seventh mistake is expecting everything to feel instant. Agents can answer slowly or return a retry message when they search too many knowledge sources or lean on a heavier model. A smaller model and fewer sources usually speed things up, and some channels stream the answer, while others deliver it in one lump. The last mistake is about models. If an agent uses a third party model, it can return an agent blocked error until an administrator grants access to that model provider. In the European Union, that access is off by default. None of these limits make plug ins a bad idea. They mean the boring parts, the licenses, the permissions, and the descriptions are where the real work lives. What it costs and who controls it. Money and control are the two questions that decide whether a project ever leaves the whiteboard. The good news comes first, and it is that the maker license is free. You can be assigned a Copilot Studio user license at no charge. Your organization still needs a prepaid credit subscription in place before that license can be handed out. The trial is the true free path, and it lets you build and test without spending anything. As long as you accept that you cannot publish. That is a fair trade for learning because you can build real skills on a practice copy of the tools. When you do want real users, the currency is the copilot credit. Copilot studio sells credits in packs of twenty five thousand and a pack runs two hundred dollars per month. You can also pay as you go through an Azure subscription with no upfront commitment. A pre-purchase plan saves you up to twenty percent if you commit ahead of time. Credits measure effort, so a simple answer costs less than a complex action, and unused credits do not roll over to the next month. The name of the currency changed in September of twenty twenty five, when Microsoft moved from messages to copilot credits, the amounts per pack and the pay as you go rates stayed the same. If your company already has a Microsoft three hundred sixty five copilot license, the math changes in your favor. Building internal agents for use inside Microsoft three hundred sixty five can be covered at no extra cost, and some answer types are billed at zero. Prices change over time, so treat these numbers as a snapshot rather than a promise. Control is the other half of the story, and it sits with your administrators. Admins decide who can publish a plugin, who can use it, and which connectors are allowed at all. Microsoft has pulled much of this into one place a plugin registry, the discovery, publishing and governance of plugins live on a single page instead of being scattered across the tenant. That matters for a beginner, because it explains why your great idea might still need someone else's approval before it reaches a single user. The registry also means a plugin has a life cycle from planning to retirement, and someone has to own each stage. The one thing to remember about Copilot Studio plugins. So let us pull it back to the one idea worth keeping. A plugin is a bundle that gives copilot one new ability, and copilot reaches for it. When your words match its description, the action inside the bundle is what actually touches the outside service and permissions and licenses. Decide whether it ever gets that far. None of this was ever really about code. It was about clear descriptions, honest limits, and knowing who controls the switch. And once you have those three things, the rest is just configuration. The connectors, the credits, and the small print all sit around that one simple sentence. I have one question for you before we finish. What is one task in your week that you would hand to an assistant if it could reach the right system? If this made the topic feel less intimidating? Subscribe to M365 FM to master the tools and the mindset shaping the future of work.