Episode Details

Back to Episodes
Building Custom Copilot Plugins for Microsoft 365

Building Custom Copilot Plugins for Microsoft 365

Published 6 months, 2 weeks ago
Description
If your project data lives in ten different places across Microsoft 365, how do you get a single, clear status update without wasting half your day clicking around? Imagine asking Copilot, "Where are we on Project Apollo?" and getting one accurate answer instantly—no spreadsheets, no manual reports. Today, I’ll show you exactly how to build the plugin that makes that possible… starting from zero.You’ll see the real API calls, the manifest that tells Copilot what to do, and how to wire up secure access. The result? One question in, one answer out—every time.Where Project Data Hides in Microsoft 365Most project managers think they know exactly where their updates live—until that dreaded Friday afternoon report request lands. You start pulling together the numbers and suddenly you’re digging through tools you haven’t opened in weeks. Tasks hiding in Planner. Milestones buried in a SharePoint list someone swore they’d keep updated. Conversations in Teams channels that contain half the context for why a deadline just slipped. It’s all there somewhere; it’s just not in one place, and it’s definitely not talking to each other without your help. Within Microsoft 365, project data scatters itself more than most people expect. Planner is great for action items—dates, assignments, checklists—but it doesn’t store client approvals. That’s often handled in a SharePoint list, maybe with a Power Automate workflow wrapped around it. Meanwhile, the real discussions about resource changes or scope shifts are happening inside a Teams channel, where the chat lives in an entirely different data store. Each of these tools thrives in its own lane, and none of them are naturally built to merge their information streams without extra work. The problem is simple enough to describe, but painful to live with. Your manager, or maybe your client, doesn’t ask for a Planner view, a SharePoint table, and a Teams transcript. They ask for an answer: “How’s the project going?” But behind that question is a mess of API structures, each with their own way of representing and delivering data. Planner’s API wraps data in nested objects you have to unwrap. SharePoint’s REST endpoints demand list IDs and column names you have to know ahead of time. And Teams? Threads, replies, reactions—all formatted differently again. Picture a typical project. The development tasks are tracked in Planner buckets. Every milestone approval—design sign-off, budget confirmation—is stored in a SharePoint list maintained by the PMO. Resource allocation discussions are in Teams messages, often with key details like “John can’t join next sprint” buried three replies deep. When a stakeholder asks for a status update, you’re either exporting data from three interfaces or manually piecing it together in Excel. By the time you finish, you can’t be sure all of it is even current. That’s where the risk kicks in. Manual reporting isn’t just slow—it raises the chance that outdated or inaccurate information slips through. Maybe a planner task got marked complete fifteen minutes ago, but you pulled data an hour earlier. Or an approval got logged in SharePoint after you’d already snapshot the list. Inconsistent timestamps, different refresh behaviors, and mismatched field names mean you’re spending more time reconciling the sources than analyzing anything. One thing that surprises a lot of people: even inside the same Microsoft 365 environment, these services don’t share a single authentication model or query syntax. Some endpoints work fine with delegated permissions; others demand application-level permissions with admin consent. Filter parameters can vary from OData queries in Graph to CAML-style conditions for certain SharePoint operations. You’re constantly switching mental gears just to talk to the data you own. You might think, “I’ll just plug it all into Power BI.” And yes, that can help with visualization after you’ve done the heavy lifting. But the real win would be making Copilot itself capa
Listen Now

Love PodBriefly?

If you like Podbriefly.com, please consider donating to support the ongoing development.

Support Us