Skip to content

Knowledge sources vs Model Context Protocol (MCP): Which powers your Copilot Studio agent better?

Knowlege source vs MCP

As Copilot Studio continues to evolve, makers and developers are presented with increasingly powerful ways to extend their agents. Using Knowledge sources and/or the Model Context Protocol (MCP) offer distinct paths to enriching agent capabilities with data from different sources. But which one is right for your scenario?

Knowledge sources offer a straightforward, no-code path for grounding agents in enterprise content from SharePoint, OneDrive, websites, and external systems. Model Context Protocol, on the other hand, introduces a standardized protocol for connecting agents to dynamic data and actions via custom connectors—unlocking orchestration, real-time context, and deeper integration with business logic.

In this post, we’ll share our findings from comparing these two approaches, highlight their strengths and limitations, and help you decide which one best suits your agent-building goals.

What are Knowledge sources?

In Copilot Studio, knowledge sources enhance generative answers by grounding them in enterprise data. When you add knowledge sources, your agents can tap into information from Power Platform, Dynamics 365, SharePoint, websites, and external systems.

Among some of the latest announcements, there is an enhanced file upload experience with support for adding files from OneDrive and SharePoint and agents ability to use web search. Great new features to create even more powerful agents, that are capable to use many different knowledge sources to provide fast and accurate answers.

What is Model Context Protocol (MCP) ?

Model Context Protocol is a protocol that facilitates seamless interoperability among AI tools by enabling effective communication between diverse AI systems. You can find many articles, videos and resources about Model Context Protocol (MCP), but it is important to understand that your API is not an MCP.

And of course, one of those AI tools we can use is Copilot Studio. By connecting to an MCP server, actions (Tools) and knowledge (Resources) are automatically added to the agent and updated as functionality evolves (currently, Copilot Studio only supports Tools).

The big question here would be: Why should I use MCP to extend my agent with external data, if we already have knowledge sources feature? Let’s try to answer that in next sections.

Use case: Using Microsoft Learn to extend an agent

In this use case, we want to use Microsoft Learn documentation to extend an agent. Whenever a users asks any question about trainings, certifications or any technical concept, we want we want the agent to use Microsoft Learn content.

Let’s try this using the mentioned approaches: Knowledge sources and MCP.

Adding Microsoft Learn website as a knowledge source to a custom agent

In this case, we created an agent with some very basic instructions, adding Microsoft Learn as knowledge source, and very important: enabling web search, which lets our agent access broad, real-time, and up-to-date information beyond what is available in predefined or enterprise-specific knowledge bases.

You can see all configured parameters in the following screenshot:

When we test the agent with a question like “How can I add computer use to an agent in Copilot Studio?“, we get the following answer:

We expected a more detailed explanation, but in the end, the agent used the information provided in the reference: FAQ for computer use tool and Automate web and desktop apps with computer use.

Adding Microsoft Docs MCP server to a custom agent

Microsoft has published a catalogue of MCP servers, and among those, we can find the Microsoft Docs MCP Server, that according to its description, provides structured access to Microsoft’s official documentation. Enables AI models to retrieve accurate, authoritative, and context-aware technical content for code generation, question answering, and workflow grounding.

In order to use the MCP Server from our Copilot Studio agent, first of all we need to create a custom MCP connector (import from GitHub) using the following values:

It is important to understand that currently Copilot Studio only supports Streamable (Server-Sent events is going to be deprecated soon).

In the next screen, we need to configure the host and the base url, which is the MCP Server address (in the documentation you can read it is https://learn.microsoft.com/api/mcp):

And that’s all! We can click con create connector, and now it should be ready to be added to any agent.

When creating the custom connector to use the MCP Server, you might receive the following error message, that you can ignore: Your custom connector has been successfully created, but there was an issue converting it to WADL for Power Apps: An error occured while converting OpenAPI file to WADL file. Error: ‘Operation id “InvokeServer” must specify either a default response or a 200-series response. Any other responses in the swagger is not supported by PowerApps client at JSON path paths[‘/’].post

We can open our agent in Copilot Studio, and in the “Tools” section, click the “Add Tool” button to add the connector we created:

Comparing the results

Now that we have two different agents using the original content (Microsoft Learn), but using different methods, let’s compare the results.

Case 1: Asking the question How can I add computer use to an agent?

We can check very quickly that the answer provided by the agent using the MCP server is more detailed that the one using knowledge sources.

Case 2: Asking the question Can you describe pros and cons about publishing an agent into a SharePoint site?

As in the previous case, we get a better (more detailed) answer from the agent using the MCP Server.

Case 3: Asking the question What’s the difference between MCP and A2A? Can you create a table comparing both protocols?

As questions get more difficult, the agent using the MCP Server returns better answers. We got many references in the answer returned by the agent using knowledge sources, but the comparison table is more detailed (and better) in the answer returned by the MCP Server agent.

Conclusions

Why MCP performs better with Microsoft Learn content?

While knowledge sources are theoretically designed for grounding, Model Context Protocol (MCP) can outperform them in certain scenarios, especially with structured or API-accessible content.

Knowledge sources rely on retrieval-augmented generation (RAG), which indexes documents or URLs and retrieves relevant snippets at runtime. However, some content is often deeply nestedJavaScript-rendered, and spread across multiple pages, making it difficult to index effectively.

On the other hand, an MCP server can be built to query APIs or scrape structured endpoints, returning precise, context-rich responses (bypassing the limitations of shallow indexing).

Cost

According to the message scenarios resource by Microsoft, the costs are the following:

  • Knowledge sources (using generative answers): 2 messages per request.
  • MCP Server: It is still unclear how many messages are charged for each request. If we consider that a call to an MCP Server is the same as using an agent action, then the cost would be 5 messages per request.

What is the best option?

While both knowledge sources and Model Context Protocol (MCP) offer powerful ways to extend agents in Copilot Studio, they serve distinct purposes. Knowledge sources are ideal for straightforward grounding — they’re easy to configure, require no code, and work well for static content like FAQs, manuals, and policy documents.

However, when it comes to read content from the web, MCP servers seem to return better results. Of course, MCP Servers are also recommended if you need to interact with third-party systems, or query APIs. Of course, it has more complexity from the configuration side, as we need to create a custom connector, which requires additional effort and security measures.

Copilot StudioMCP

Leave a Reply

Your email address will not be published. Required fields are marked *

Forward Forever logo
Cookie settings

This website uses cookies so that we can provide you with the best possible user experience. Please select the cookies you want to allow.