Microsoft Community Insights Podcast
Welcome to the Microsoft Community Insights Podcast, where we explore the world of Microsoft Technologies. Interview experts in the field to share insights, stories, and experiences in the cloud.
if you would like to watch the video version you can watch it on YouTube below
https://youtube.com/playlist?list=PLHohm6w4Gzi6KH8FqhIaUN-dbqAPT2wCX&si=BFaJa4LuAsPa2bfH
Hope you enjoy it
Microsoft Community Insights Podcast
Episode 49 - Dataverse MCP with Copilot Studio with Nathan Rose
Build an agent that understands intent, finds the right data, and takes action across your CRM—without wiring a maze of connectors. We sit down with Microsoft MVP and functional architect Nathan Rose to explore how Dataverse and Model Context Protocol in Copilot Studio turn instructions into outcomes, shrinking complexity and unlocking reliable, low‑code automation.
Today we have a special topic called Data Force MTP in Copal Studio. And we have a special guest called Nathan Rose. Can you please introduce yourself?
SPEAKER_03:Sure. So good to see you, Nicholas. Thanks so much for having me on. So nice. Hello everyone. I'm Nathan Rose. I am a Microsoft MVP and I'm a functional architect at HSO based here in beautiful Auckland, New Zealand.
SPEAKER_00:Okay. I'm curious to know what's I never heard a top title functional architect. So what do you day-to-day conferences of?
SPEAKER_03:That's a great question. I was once asked how that's different from a non-functional architect. And I said, well, you know, non-functional architects don't do shit. But um seriously, um the idea is um I I come from a low-code background, right? So I I don't code um the way some more traditional solution architects would. So I I architect the solution, but very much from that functional point of view. Um so so your background as a functional consultant. Um yeah, so that's that's kind of the difference, I guess, if that makes sense.
SPEAKER_00:Okay, so anything that's functional working that needs to be working?
SPEAKER_03:Yeah, so in terms of of what the solution's gonna do, um functionality, all of that, that's that's what I do. Um when it comes down to kind of nitty-gritty, what you know, I I would make the decision whether we're gonna do it with code or not, but then once we're once we've decided, hey, we're gonna achieve this by writing writing some C sharp or some JavaScript, I'm gonna hand that off to to a dev or or a more technical architect to to fulfill the requirement.
SPEAKER_00:Okay, so your day-to-day conversions of like designing it, like the requirement within your team or leading team as well.
SPEAKER_03:Yeah, yeah, exactly.
SPEAKER_00:Okay, so today we our theme of this episode is databurst in Kapat Studio. I I know a couple of months ago it was released on Microsoft at night, database MTP. Uh, do you want to uh just give us an introduction of what Databurst?
SPEAKER_03:Yeah, absolutely. So so for those of you who don't come from the BizApp's business applications background, Dataverse is that shared data layer. That is really the magic behind what makes Dynamics 365 and Power Platform so powerful. Because we don't have to go writing point-to-point integrations anymore. We just build apps on top of the shared data layer and things like accounts and contacts and cases and all that good stuff can be shared between applications naturally without having to build integrations and service buses and things like we would have had to do in the past. So that's what Dataverse is. And then the product team have released Model Context Protocol for Dataverse to work in Copilot Studios. So you may have heard the term model context protocol, MCP. It was kind of the the hot topic of 2025. And you've probably heard it described as USB-C. The idea is that we can plug and play our uh large language models with our existing apps and data and things like that. And so Dataverse MCP makes it really easy to connect an agent in Copilot Studio to Dataverse, and it comes with a bunch of preset tools, things that will let you search, things that will let you update records, create records, and things like that. And you can do that all through um the Dataverse MCP tool. Now, where it gets really cool is I literally just have to write instructions for my agents. So I've got agents that can do stuff in my system that all I have to do is write instructions. So I don't have to go doing a lot of config, I don't have to do coding or anything like that. So I'll give you an example. Um, last year I demoed an agent for a government scenario, and this came from a real life scenario with clients that I've worked with here in New Zealand. Um, and a common common scenario for government is they've got contact centers where they're using, say, Dynamics 365 customer service to manage cases, say citizens are contacting them for questions to fix things, to that type of thing. And you've you've got a common issue where you've got a lot more cases being created, people calling this contact center, then they have agents to deal with them. And when they've analyzed their data, they found that a lot of them can be answered from a lot of the cases can be answered from existing knowledge that they have on their website because a lot of government departments have really detailed websites.
unknown:Yeah.
SPEAKER_03:People just haven't bothered to look. And the other thing is that there's an interesting subset of cases where you don't really need a human to respond to it. And this actually came out of we were looking at how do we mask profanity. So somebody's having a really bad day and they've gone to the website and they've logged a case and they've used abusive language. And, you know, you don't want to have to read that all day, right? Nobody wants to have to wade through that. And um, so there's this subset of cases where somebody's just having a bad day and they just want to complain to somebody. You know, they don't have a question that can be answered. There's not something that they actually want you to do. They just, you know, they're they're just having a bad day inventing. You know, I had, you know, I went to the swimming pool and the water was too cold, and so now I'm really grumpy and complaining about it. Okay, you know, what do you expect us to do about that? And so what you can do with those is you can automatically generate an empathetic response to the person. You don't need a human in the loop doing that. So I built an agent that did these things, right? It would basically look at an incoming email request and it would determine what does this person want? Do they have a question I can answer? Do they need to create a case? Maybe they're reporting something that's broken.
unknown:Yeah.
SPEAKER_03:Or do they are they just having a bad day and complaining, right? And once it made that determination, it would either answer the question based on knowledge and send a response, create a case for the user, or um just send an empathetic response to them. Now, the first iteration of this agent that I built pre-MCP had five different connectors that I had to create, as well as a knowledge source.
SPEAKER_00:So are those custom connectors that you built on Dataverse?
SPEAKER_03:So they were they were out-of-the-box ones from Microsoft, but they were still, you know, so I was using Outlook and Dataverse connectors, but I still had to go configure all of these connectors individually, as well as give the agent instruction sets. With MCP, those five connectors and knowledge sources went down to two connectors. One MCP for Dataverse, one for Outlook. And so the agent became a lot simpler. I simply gave it an instruction set and said, This is what I want you to do. And then I hooked it up to Dataverse MCP. I hooked it up to Outlook MCP when it needed to email. And so it got a lot simpler. And so this is becoming increasingly low and no code with tools like MCP. So that's why this is really exciting.
SPEAKER_00:Yeah, because more agents you add to it, the more it becomes like a multi-agent MCP.
SPEAKER_03:Yeah, yeah. So um, so yeah, so MCP is is a is a huge step forward in terms of giving our agents the ability to go solve problems. When I was playing with Dataverse MCP, just to give you an idea of how cool this is, um, I got a question on my YouTube channel about whether or not it could update choice columns. So um you have you know you have a drop-down on your form. And so I so I tried it out and um I I I um yeah, so I was playing with it and I tried to get it to do it. And the agent, the agent was was, and I'm doing this in um from memory, I think I was doing it in Claude Desktop um with Dataverse MCP. And it was it said, okay, let me try to update this this column. Um oh, I couldn't do that. Um, the data type is navcarmax. Let me update and try to do that again. That didn't work. All right, let me look through other choice columns in the system because I've got access to all the tables. Let me look through other choice columns in the system so I can get an idea of how this data is formatted and try again. Oh, um, you were too lazy to set any of these in your dev system. So now I'm gonna go to the SDK and see what I can learn. And long story short, it wasn't able to do it, but watching it attack the problem the way a human would, right? Let me try this, let me look at relevant data, let me look at the SDK. Like, this is the way you and I would try to solve this problem. Yeah, it's quite smart. Yeah, this is very, very cool. So yeah.
SPEAKER_00:Yeah, it's it's like your assistant buddy, so not a personage. So have you been using database MCP as a POC or in production, or you just test your purposes now?
SPEAKER_03:So it just went GA in November at Ignite. So it's still relatively early days. I have not used it in production yet. Most of pretty much everything I've built has been a POC. Um, yeah, yes. But um, I would say for production scenarios, the ones that I would be looking at is the the read and query capabilities are really good. Um, and so where you've got say dynamic um um data sources where you've got lots of tables perhaps being added, or um you need to give the agent more flexibility to answer questions for users, then MCP is the way to go because it's gonna figure out what to do based on what it knows. Whereas with a more traditional connector, you're gonna say, I'm gonna hook you up to cases and you can look at cases, but let's say it you know it needs to look at something else, it needs to look at a contact or an account. Um, if you haven't given it access to that, it can't do it. Whereas with MCP, the world's its oyster.
SPEAKER_00:Okay. I take it you can hook up databurse mcp to other, like you what you mean cloud desktop, or can it does with does it work with uh Microsoft Foundry as well?
SPEAKER_03:Or um it should do. I I have not been hands-on with Foundry yet, so I am I'm very much left tenant low code, so copilot studio is my jam. Um so I do need to get hands-on with foundry just so I can set the AB100 exam that everybody has been passing recently. Um so I do need to spend a bit of time with it. But um, you you can use it in Cloud Desktop, you can use it in um GitHub Copilot, um, copilot studio. Um, and that's just that's just the official one from Microsoft. There are lots of Dataverse MCP servers out there. You can go on GitHub. There's one that I'm told has 70 different tools. Um yeah, and you so you could you could create your own. So if if the uh this is not something I've tried yet, but you could go and create your own Dataverse MCP server um to do exactly what you want it to do. Um I would say a word of caution. Um, if you are downloading anything created by someone else, just be really careful, make sure you're absolutely certain you know what that thing is doing before you hook it up to your data. Um, because somebody could stick something in there where it's you know doing something behind the scenes that that you're not aware of.
SPEAKER_00:Otherwise, you just do it for internal uses in your company, like for HO or anything else.
SPEAKER_02:Yeah.
SPEAKER_00:So you say you want to show us like a preview of data press MCP?
SPEAKER_03:Yeah, let me let me take you through it. Let me share my screen.
SPEAKER_00:Sure.
SPEAKER_03:I went GA in November at Ignite. So it's still relatively early days. I have not used it in production yet. Most of pretty much everything I've built has been a POC. Um but um I would say for production scenarios, the ones that I would be looking at is the the read and query capabilities are really good. Um, and so where you've got say dynamic um um data sources where you've got lots of tables perhaps being added, or um, you need to give the agent more flexibility to answer questions for users, then MCP is the way to go because it's gonna figure out what to do based on what it knows. Whereas with a more traditional connector, you're gonna say, I'm gonna hook you up to cases and you can look at cases, but let's say it you know it needs to look at something else, it needs to look at a contact or an account. Um, if you haven't given it access to that, it can't do it. Whereas with MCP, the world's its oyster.
SPEAKER_00:Okay. I take it you can hook up DataForce MCP to other, like you what you mean Cloud Desktop, or can it does with does it work with uh Microsoft Foundry as well?
SPEAKER_03:Or um it should do. I I have not been hands-on with Foundry yet, so I am I'm very much Lieutenant Low Code, so copilot studio is my jam. Um so I do need to get hands-on with Foundry just so I can set the AB100 exam that everybody has been passing recently. Um so I do need to spend a bit of time with it. But um, you you can use it in Cloud Desktop, you can use it in um GitHub Copilot, um, copilot studio. Um, and that's just that's just the official one from Microsoft. There are lots of Dataverse MCP servers out there. You can go on GitHub. There's one that I'm told has 70 different tools. Um yeah, and you so you could you could create your own. So if if the uh this is not something I've tried yet, but you could go and create your own Dataverse MCP server um to do exactly what you want it to do. Um I would say a word of caution. Um, if you are downloading anything created by someone else, just be really careful, make sure you're absolutely certain you know what that thing is doing before you hook it up to your data. Um, because somebody could stick something in there where it's you know doing something behind the scenes that that you're not aware of.
SPEAKER_00:Otherwise you just do it for internal uses in your company, like for H or anything else.
SPEAKER_02:Yeah.
SPEAKER_00:So your use case that you think could be useful for it for using Dataverse MCP?
SPEAKER_03:Yeah, yeah. Um, I mean, you could, I mean, I would really say the limit is your imagination at this point. Yeah. Um you can yeah. Um, I mean, I think so. The thing I've been challenging myself with is if we come to this list of tools, I I feel like I've been too deterministic with this, right? Go create the create the record, go look up the record. Where this gets really exciting is with things like say creating a table. Um let's say it determines, hey, I need a table to keep track of you know whatever it is you're asking, and for it to go and do that on the fly, that's where this starts to get really exciting. And so um I've been kind of challenging myself to come up with some ideas.
SPEAKER_00:I'm still not there yet, but coming up with ideas for yeah, you can have an agent, you can have an agent to perform the action, one agent to read only and does things and delete.
SPEAKER_03:Yeah, so I have played with I did try with multi-agent late last year, um, and I was running into some issues with it. So I did have a demo, so la uh not last year, the year before last, 2024. Um, we did a demo using semantic kernel and copilot studio to create um basically, we basically created a CPQ where you'd say I need five of these and six of those and that type of thing, and it would go and create an order for you with those those things on it. I was able to replicate it using MCP, um, but I was limited to a single product, and so I tried to break it into a multi-agent um experience, but I I was running into some difficulties with it. So it's still something I'm working on. Um but yeah, um, it it does get really exciting when you think multi-agent and and what you could do with it. You've got one that's gonna determine this is what I need to do, one will go off and create records, one will go off and um um run prompts or do other things. So yeah, there's yeah, there's some really exciting things.
SPEAKER_00:Yeah, because you couldn't probably have one agent that only deletes stuff and to race stuff in production, those things if you want to go that side.
SPEAKER_03:Yeah, yeah. So um, so yeah, you could definitely break it up. And and I would recommend doing it because um what I've what I'm finding is my agent journey is very similar to my power automate journey. My early power automates were um monolithic, right? These huge flows that did everything. And over time you learn to break it up into a more modular design. And I think with agents, we need a similar experience where you've got smaller pieces, smaller, smaller agents handling a piece of the puzzle because what you'll find in Copilot Studio is if you try to get it to do too much, you will start running up against generative AI orchestration limits.
SPEAKER_00:Yeah, so yeah, don't do it like four agents at a time, do it like maybe one or two or three, just keep going up once you like understand what you're gonna do.
SPEAKER_03:So yeah, yeah, exactly. And it just makes them easier to triage, to troubleshoot, and to update as time goes on.
SPEAKER_00:That's great. Is there do you currently do you as at the moment do you just use in uh dataverse at your workplace as POC, or are you looking at something else?
SPEAKER_03:Um so Dataverse has been in production for quite some time. So we use Dataverse in all of our projects. Um Dataverse MCP is very new to being generally available, and so it's something that that we are looking at with with agents, but everything that I've built agent-wise with with model context protocol is is still still a POC.
SPEAKER_00:Excellent. And you can see how easily to to learn about database MCP is just low-code, drag and drop, and it you even get like the agent to write the instruction for you. So all you need to do is just configure it and get it working.
SPEAKER_03:It's literally that easy. Yep.
SPEAKER_00:So anyone can do that. So, how can someone get access to to Dynamics? Do they need a license? So they should have one once you got 365 license to play around with it.
SPEAKER_03:You do need a license, but you can set up a free trial. So if you just go and search on setting up a free trial for Dynamics 365, um, there's lots of options to do that. And then you can get started with Copilot Studio and Dataverse MCP and have a play with it.
SPEAKER_00:So that the first MCP, is that currently in uh dynamics at the moment, or is it like a you have to is that like a preview form you have to sign up for to get it there?
SPEAKER_03:Nope, it's it's it's there, it's ready and available in Copilot Studio now.
SPEAKER_00:Okay, brilliant. Yeah, uh yeah, so as aside from this episode, we love to know to guests. So anything, uh so what aside from like doing your amazing community works, uh do what do you normally do? Do you have any hobbies?
SPEAKER_03:Or um yeah, so I um I as you see behind me a I loved playing the piano. I've been playing for about three years now and I've taught myself how to play piano and that's that's kind of my thing that I do in my spare time. Um also very involved with uh with my local church and and um do quite a quite a lot of lot of work there in my spare time as well. So yeah, that's pretty much me when I'm not not doing my power platform thing.
SPEAKER_00:Uh yeah, so can you so you you know to play the piano? You've been playing for quite a long time, or you just start with it.
SPEAKER_03:Three years I I uh yeah it's something I I've been um so you can learn any Nicholas, you can learn anything on YouTube, and so that's literally how I learned. Yeah. Um and um yeah, so I I I I I just play chords, I don't do anything fancy, but but I do I do enjoy it.
SPEAKER_00:Yeah, and I see you're wearing the MVP t-shirt because you're gonna be at MVP Summit.
SPEAKER_03:The 2024 MVP Summit one.
SPEAKER_00:So oh okay, there's a color one, yeah. I don't remember.
SPEAKER_02:Um, so okay. Yeah, so this first one is.
SPEAKER_00:Yeah, next should be good. Should be a good one. So I hope to see you at Redbin, Nathan.
SPEAKER_03:So yeah, I can't wait.
SPEAKER_00:Yeah, so yeah, thanks for joining this episode. So hopefully uh some you guys learn about how easily you can set up DataPress MCP. And if you want to chew out, you can just get a trial license and play around with it. Any question, you can just pop uh ping names the roads on social media. Thank you. Bye.
Podcasts we love
Check out these other fine podcasts recommended by us, not an algorithm.
The Azure Podcast
Cynthia Kreng, Kendall Roden, Cale Teeter, Evan Basalik, Russell Young and Sujit D'Mello
The Azure Security Podcast
Michael Howard, Sarah Young, Gladys Rodriguez and Mark Simos