Work with your Dynamics 365 CE data from Copilot using Dataverse MCP

If you are already using Copilot via an M365 Copilot license and it is helping you in productivity already – you might want to take it a step further and enable it to also bring in your Dynamics 365 CE data together – be in Project Operations, Field Service, Sales, Customer Service etc.

Examples: Copilot is helping me with my emails, SharePoint files – summarizing and triaging information. But have to still log into Dynamics 365 to get work done. Well, by default this is not enabled for organizations and ready to use but your Admin team can help you enable this.
Make sure the users who will use this have an M365 Copilot license assigned to them and you have the right Admin privileges across M365, Power Platform Admin Center, Azure and Teams Development Portal.

Let’s see it how and make it work!

Step 1 – Register an App in Microsoft Entra

Give you have the right access to Azure with permissions, you need to create a new App Registration and follow the steps along –

  1. Add a new App Registration in Azure Portal.

  2. Then, enter the Name and select Web in the Redirect URI [https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect]

  3. Once the App is registered. Save the App Registration ID and Tenant ID.
  4. Then, navigate to the Certificates & secrets. And add a new Client Secret there.


  5. Now, store the value before you refresh the page. You’ll need the Secret Value.
  6. Now, go to API Permissions as below.

  7. Select Dynamics 365 CRM and mcp.tools as Delegated access.
    Then, grant the permissions.





    And finally, Grant the permissions as below.


    And check that the Permission is granted.

Step 2 – Allow the App on the Dataverse MCP Server using Power Platform Admin Center

  1. Given you have Dynamics 365 Admin privileges, navigate to Power Platform Admin Center. Navigate to your environment and look for Features under Settings.


  2. Then, navigate to Data Model Context Protocol and make sure Allow MCP clients to interact with Dataverse MCP server (GA version) is enabled. [Based on when you are reading this blog, the mention of version might change]

    Click on Advanced Settings which will take you in Dynamics CE to.

  3. Click on new MCP Client.

  4. You already have the Application ID from Azure’s App Registration. Copy it as you’ll need it here.
    Then, enter register the App Registration as an MCP Client here. Give it a suitable name, but also make sure to add prefix yourself. I just added “new_”
    Set Is Enabled to Yes. Save the record.


    This is set now.

Step 3 – Register the OAuth Connection in Teams Developer Portal

You need to register the OAuth Endpoint here.

  1. Navigate to Tools as shown and then select OAuth Registration.

  2. Register a new client. This will be similar to App Registrations you’ve used to doing before. Just that the information is to be borrowed from the App Registration on Azure we did above.
    Click Register client.
  3. Fill in the details as asked

  4. Once created, copy the Reg ID. You’ll need this in the Reference ID asked in the Microsoft Copilot Portal below.


    Here, you are now ready to consume this to create a new Custom Connector in M365 Admin Center’s Copilot area. Let’s see ahead.

Step 3 – Create the Connector in Microsoft 365 Admin Center

Given that you are an M365 Global Administrator, you need to now deploy this as a Custom Connector in M365 Admin Center under Copilot –

  1. Go to M365 Admin Center [https://admin.cloud.microsoft/]. Then, expand Copilot on the left hand pane and look for Connectors.

  2. Register your Connector. Enter the name and the info like the URL, and Description which are mandatory.

  3. Further, add more details as asked and the copied Reference ID from Teams Developer Portal app is to be pasted here. Refer Step 3 and point #3 from above.
    Now, click Authorize.

  4. Then, click Authorize again. It should go through and show as below. Then click, Create at the bottom.


    Once created, it’ll be available like this.


    Now, let’s roll it out to the users!

Step 5 – Roll it out to your Users

Now, let’s roll it out to the users. Follow the steps below –

  1. Navigate to the Copilot area in the the left hand pane. Look for Connectors, under Your Connections, wait for a bit for the list to refresh. You’ll find yours there. Click on the three dots and then click Add Staging.

    It takes a few mins for this to be available to the selected users.

Step 6 – Connect from Copilot Chat

Now, let’s test!

  1. In your Copilot Chat, look for the gear icon next to your profile, then navigate to Settings.

  2. Look for Sources, you’ll see list of Connectors available.


  3. Search for your Connector there and it’ll show up. Once you find it, click Connect on the Connector. It’ll authenticate you in.

  4. Click Continue and you should be connected in a moment.

  5. Then, you can also look at what tools are available for you to use.

    And you are all set. Let’s test.

Query your CRM data here!

Now, you can start by querying your CRM data here – just ask anything from the environment and validate if it is returning correct answers. Involve System Admins and the ones who deployed if you need to further fine tune your Connector.

Hope this was helpful!

Here are some more Dataverse and Copilot posts you want to check out –

  1. Code Apps for Dataverse – Part 1
  2. Code Apps for Dataverse – Part 2
  3. Finding Indexed Columns in Dataverse Search
  4. Time and Expense Agent [Production Ready Preview] – Part 1
  5. Enable Copilot for Dynamics 365 Sales environment
  6. Create Project Plan using Copilot in Project Operations
  7. Environment Groups in Power Platform Admin Center

And some popular Power Automate posts –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Call a Flow from Canvas Power App and get back response | Power Platform
  4. Parsing Outputs of a List Rows action using Parse JSON in a Flow
  5. Asynchronous HTTP Response from a Flow | Power Automate
  6. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

AI in Business: Starting Your Automation Journey [A Preface]

So in 2026 as I write this, AI is intrusive to the point that everyone in Management want it because it is believe to work 10x and reduce costs or because everyone is implementing so must we.

And the predicament doesn’t stop there – it continues expand to a point where plans are chalked out to run a department entirely. And organizers scramble to solve the problem directly by introducing AI as a form of “automation” rather than “augmentation”. I pondered on this a lot and this is what I think of it as it stands today.

Although most organizations are way ahead with working AI solutions already and are monitoring for production performance and tuning. But this blog is focussed on someone who’s just arrived to AI conversations and have burnt their fingers in some POCs maybe. Here are my two cents –

Foundation of AI for Business Applications

Here’s how you start – and it’s not building your first agent directly. But are the systems hygienic for your first AI agent to not struggle? Here’s what I mean by that –

  1. Clean your data – Make sure missing Sales or Operations data isn’t cluttering your system, giving unclean and unreliable reporting. Does management completely trust the reports you run today? Get the data right.
  2. Connect your systems – Integrate systems together for not everything – but enough to make sure you don’t duplicate, miss data or rely on manual labor prone to making mistakes. If integrated, make sure integrations work well.

Now extrapolate this at the Org level and you already are starting on a high-trust metadata and data at your org for any AI agents to make sense on.

How to introduce it?

Now that data is clean and systems are connected –

  1. Start small – introduce AI in micro-tasks of your workflows. Use it to generate what your team does obviously. The routine, mundane updates. Repeating tasks which can draw patterns.
  2. With those patterns – form the knowledge base of the AI. Improve AI to feed off of the knowledge base itself. It could be a structured prompt engine or a library that the model has to traverse, process the documents and make sense.
  3. Don’t use it for decision making – use it yourself so you can make a decision – just quicker.

Why do we feel it is not what it is meant to be?

I started off by thinking in a straight line –

  1. I want to get to point B from point A – so, let me implement it and give it to the tech team to do it with some instructions.
  2. Well, it does work – most times. But I’m still not happy with it. And here is the reason –
    1. No matter how perfect the answer is.
    2. Your judgement in that moment will override always — a confirmation bias or a change in situation suitable at that point in time will make more sense.
    3. You tend to take your decision overriding what AI has to offer for you (or rather recommend).
  3. And you dismiss it saying – “It doesn’t work”.

Well, it does work – but it’s giving you an opinion so you could extend yours. It’s not meant to give you your answer, yet. And this is true for most cases if not all.

It’ll be interesting to see how this blog either ages like milk or like wine in coming years. 😊

With this, I kick-start my AI Thought Leadership as a new section and running commentary as I work to get our customers and partners ready and thriving on AI in coming years.

Hope this was helpful!

Thank you

Tools to perform actions in Custom Copilots | Copilot Studio

If you are new to modifying existing Copilots and creating some of your own, here’s how you can use Actions in Copilots to ‘perform an operation’ rather that using AI to only ‘query’ information

Tools in Custom Copilots

Given that you are building a Custom Copilot (or even editing an existing one), here’s where you can add Tools from –

  1. You can see that Tools is also a section in your custom copilot.

  2. When you click on Add Tool, you’ll be able to select from a variety of readymade connectors available and you can even select from a Connector to an MCP server.
    For simplicity of this example, let’s select a readymade Microsoft Dataverse tool

  3. Just like in Power Automate, this tool will let you select one of the operations supported by Tool in Copilots.
    We’ll select a simple one – Add a row

  4. And it’ll ask you for permission to connect to your environment.

  5. Once you click on Add and configure, it’ll simply give you the configuration page to go ahead and configure the tool.
    I’ll select the parameters as I don’t want to leave it to AI yet.

  6. And then, you can test this once you Save the tool. You’ll see that with the right query, the Tool is hitting the connector as you test.

  7. It’ll ask you for some required fields and finally permission as you are running it for the first time.

  8. Once it successfully creates the record, it’ll respond based on the preferences set in the tool.


  9. This will then create an Account in your environment.

Usage

While interacting with the tool, your Custom Copilot will detect that you are attempting to create a record and it’ll invoke the right tool to do so – which will perform the said operations on your behalf.

Now, this is a simple example but it can extrapolate to larger use cases where you can build meaningful tools for your use cases.

Hope this was useful!

Thank you!

Deploy Copilot for Sales in your organization – Part 1 | Provisioning

Here’s how you can setup Copilot for Sales in your organization given that you have the correct privileges –

  1. Make sure Copilot for Sales license is assigned to the User who will be using it.

  2. Then, in the Admin Center, go to Integrated Apps under Settings and look for Get Apps.


  3. Search for Copilot for Search in the box on the top right and Copilot For Sales will show up as follows.

  4. Once you click Get it now, you’ll need to confirm the same.

  5. It’ll then continue to setup and show the App that is getting deployed which is part of the Apps setup in M365 itself.

  6. It’ll also let you either select the Entire Organization or select the Users whom you want to deploy this to.

  7. Finally, Accept the permissions listed in case of no objections based on your orgs’ policies.

  8. You’ll need to re-authenticate with the Admin User you are using to set this up with.

  9. Once done, you’ll see that the permissions are accepted.


  10. And finally you can Finish the deployment.

  11. This is when the Deployment is completed.

  12. And you can confirm that the App is now enabled for the said user.

In the next post [Releasing on 8th May 2025], we’ll see how you can setup Copilot for Sales under it’s own Settings through a Tenant Administrator!

Hope this was useful!

Thank you!

Deploy Custom Copilot to Teams as an App

Here’s how you can deploy a Custom Copilot to a Teams Chat given that your Custom Copilot is ready and Published.

In case you are also looking to create your first Copilot, this post might help you [although it has a different use case: Create your first custom Copilot for Customer Service Hub – Part 1 | Create Copilot]

Let’s see how you can now deploy your Copilot to Teams chat. One of the first ways to deploy your Copilot!

Custom Copilot in Copilot Studio

Here’s your custom copilot and here’s how you can publish it to Teams chat –

  1. Go to the Channels section in the Custom Copilot. Make sure it is already Published.

  2. When Copilot for Teams is yet not enabled, you’ll see a button to enabled for Teams called as “Turn On Teams” as shown below.


  3. When you turn it on, it takes a few moments and the Bot is then ready to be opened in Teams.
    You also have preferences to set around it’s access and whom do you want to share it with.


  4. First, you can click Open agent and make sure it’s letting you add to your own Teams as an App.

  5. When you click on Open agent, it’ll redirect you to your Teams asking you to confirm if you want to add it to Teams as an App.

  6. Once you click Add, you can see it appear in the chat as well as an App which you can pin.
    And that’s how the interaction with your Bot will be.

  7. In my Use Case, I’m simply mentioning the name of the Project and who the new PMO should be for that project.
    So, based on the above chat, I’m setting Abhishek Kumar as the new PM for the BH Road Project and I can see it reflect in Project Operations. Behind the scenes, my Custom Copilot is using Flow to update the Project Manager on the Project, simple!

  8. Coming back to settings on availability of the bot, you can click on Availability Options and see the below settings.



    and then, you can either share a link, share it with the org or download and manually upload to Teams.

Hope this was useful!

Thank you!

Create your first custom Copilot for Customer Service Hub – Part 2 | Authentication

Now, you must have created your own Copilot to be deployed for the Customer Service Hub. If not, here’s the link to Part 1 of this blog – Create your first custom Copilot for Customer Service Hub – Part 1

Configure User Authentication with Microsoft Entra ID

Here’s how you can configure the User Authentication with Microsoft’s Entra ID for your Copilot to be authenticated with –

  1. Go to the Azure Portal [https://portal.azure.com/], then given the appropriate permissions your might have, you should be able to create an App Registration

  2. Now, create on New Registration –

  3. Now, give it a suitable name so that you can identify that the purpose of this App Registration is for Copilot. Select multi-tenant, leave Redirect URI blank and click on Register.

  4. Once ready, go to Authentication and then click to add Platform.


  5. In the platform selection, click on Web.

  6. Now, enter the URIs – First, enter the first URI, make sure to select Access tokens and ID tokens in Implicit grant and hybrid flows section and then click Configure.

    https://token.botframework.com/.auth/web/redirect
    https://europe.token.botframework.com/.auth/web/redirect



  7. Then, go ahead and add the Second URI from the main screen itself. Then, click Save and refresh the page once.

  8. Now that both the URIs are added, click on the configuration link to consider both the links for configuration.

  9. Now, you’ll be taken to this pane where you can click

  10. Now, both the URIs will appear here.

  11. Next, generate Client ID and Client Secret as you’ll need these details too –


Set Copilot Authentication to use Custom Authentication

Going back to the Copilot itself, set the Authentication you just created in the Azure Portal –

  1. Go to Settings on the Copilot to use the Custom Authentication.

  2. Go to Security section and then select Authentication.

  3. Select Authenticate manually and then enter the details as shown below. Enter the Client ID and Secret which you must’ve saved before.



  4. Next, come back to Copilot Settings and in Security, go to Settings and then look for Web channel security.

  5. Once you open it, you’ll find that the Secured Access is disabled. Go ahead and enable it.
    It takes up to 2 hours for it to take effect. Till then, old settings apply.

  6. Finally, in Channels, select Customer Service Hub so that you can connect to the Customer Service Hub.

  7. On the right hand side pane which opens up, you’ll see that this is not connected. Click the Connect button.


  8. It connects to Customer Service Omnichannel in a few moments.


Part 1: Create your first custom Copilot for Customer Service Hub – Part 1

Hope this was useful!

Thank you!

Create your first custom Copilot for Customer Service Hub – Part 1 | Create Copilot

Now, if you already have Copilot Studio in your Organization or have created a trail [Start your Copilot Studio Trial], you might be looking to build your first Copilot. Here’s how you can do it –

In this example, I’m creating a Copilot to help new Customer Service Reps at the organization to search and seek help about the organization itself quicker.

Create your Copilot

Here’s how you can start building your first custom Copilot –

  1. In your Copilot Studio environment, you must be seeing this New Copilot button in Copilot section. Click that.

  2. Here’s you need to start describing the Copilot you are looking to create. This is optional but recommended to do so as first step. It’ll ask you some questions on the context of the Copilot which you are looking to create.

  3. After it gathers some information from you, it’ll summarize what the Copilot is aimed to do.
    Now, once done you can click Skip to Configure to go to the next step.

  4. Further, you can name the Copilot and then start adding Knowledge by adding sources where the Copilot will source information from.

  5. Some of the most common ways for the Copilot to source knowledge from is from website and SharePoint data itself.

  6. In this example, I’m sourcing some information about whitepapers from thecompany’s website itself.

  7. Now, once this is ready, I’ll further proceed to Create the Copilot itself once relevant Knowledge links have been added as required. Once done, click Create.

  8. Now, once the Copilot is created – it’s ready to be configured further or even ready to be Published if nothing else is to be added at this point.
    You can scroll down in the details section and find that the Copilot is ready to be Published.
    Note that based on the Copilot settings for Channel, it’s only available to Teams at first – but you need to configure for other channels – like Customer Service Hub [in this case]


  9. Now that this is published. –

  10. Your Copilot is now ready!

In the next blog, we’ll connect this Custom Copilot to Customer Service Hub – Create your first custom Copilot for Customer Service Hub – Part 1 | Create Copilot

Hope this was useful!

Thank you!

Start your Copilot Studio Trial

Here’s how you can try out Copilot Studio for free first. Along with that, here’s the Copilot Studio Pricing – https://www.microsoft.com/en-us/microsoft-copilot/microsoft-copilot-studio#Pricing

Copilot Studio Trial

Here’s how you can start your own Copilot Studio Trial.

  1. Navigate to the Copilot Studio homepage – https://www.microsoft.com/en-us/microsoft-copilot/microsoft-copilot-studio
    You’ll see this Homepage and you can see a button to Try free

  2. Then, just like any other Sign up process for Microsoft products, you can start by the entering the Email of the org which you want to provision this on.

  3. Once you click Next, you’ll be asked to Sign In once everything looks good to be provisioned.

  4. Once you Sign In, you’ll be asked for Region and Phone.

  5. Once you click on Get Started, you’ll be asked for final confirmation and then it’ll start provisioning.

  6. Once you click on Get Started, it’ll take a few minutes to get provisioned.
    Then, you’ll finally see Copilot Studio show up. Select your region and Get Started.

  7. Finally, switch to the right environment which you wish to work on.
    It’ll start with a Welcome Wizard and you are ready to go and start your Copilot Journey!


    And this is where you can start exploring within the Copilot Studio!

Hope this was useful!

Thank you!