Skip to content

MCP Servers — Overview

What Is MCP?

MCP stands for Model Context Protocol. It's a universal standard that lets AI assistants (like GitHub Copilot) connect to external services (like Azure, Microsoft 365, GitHub, databases, and more).

Think of MCP like USB — before USB, every device had a different connector. MCP does the same thing for AI: one standard protocol that works everywhere.


The Hotel Concierge Analogy 🏨

This is the core analogy for understanding MCP. Imagine you're at a fancy hotel:

In the Hotel In Copilot CLI
You (the guest) You (typing questions)
The concierge GitHub Copilot (the AI brain)
The phone on the concierge's desk MCP Server (the connection)
The restaurant/theatre/taxi company Azure, M365, GitHub (the actual services)

Without MCP servers, Copilot can only talk to you. With MCP servers, it can actually do things — query your Azure resources, check your M365 licences, manage GitHub repos, and much more.

Why this matters

Before MCP, every AI tool had to build its own custom connection to every service. With MCP, you build one connection and it works with any AI tool that supports the standard — Copilot CLI, Copilot Studio, Azure AI Foundry, and more.


How Does It Work?

When you ask Copilot a question that needs external data, here's what happens step by step:

Step 1: You type a question
Step 2: → Copilot thinks: "I need Azure data for this"
Step 3:   → Copilot calls the MCP server on YOUR machine
Step 4:     → MCP server talks to Azure (via APIs)
Step 5:       → Azure sends back data
Step 6:         → MCP server passes it to Copilot
Step 7:           → Copilot formats and shows you the answer

MCP servers run locally

The MCP server runs on your machine, not in the cloud. It's like a translator sitting on your computer that speaks both "Copilot language" and "Azure language". (MCP servers can run in the cloud too — see The MCP Ecosystem for more on that.)


MCP Across Platforms — The USB Analogy 🔌

A common question: "Does MCP only work with Copilot CLI?"

No! MCP works across multiple platforms. The concierge changes, but the MCP server stays the same:

Platform Role Analogy
Copilot CLI Terminal-based AI assistant Hotel concierge
Copilot Studio Web-based agent builder Airport concierge
Azure AI Foundry Cloud AI platform Corporate concierge
Any MCP-compatible tool Any AI that speaks MCP Any front desk with a phone

The concierge (AI platform) changes depending on where you are, but the phone (MCP server) and the services (Azure, M365) stay the same.

💡 Key insight: Build one MCP server, use it everywhere. That's the power of a universal standard — just like one USB cable works with any USB device.


My Current MCP Servers

I have two MCP servers configured in my Copilot CLI:

1. m365-admin-graph 🏢

Detail Value
What it does Connects to my lab tenant's Microsoft 365 admin data
Example usage "List users in my lab", "Show me licences"
Where it lives ~\.copilot\mcp-servers\m365-admin-graph\ (local folder)
Authentication Client ID + Client Secret (OAuth — like an app with its own username & password)
Transport stdio (runs locally, talks directly to Copilot)
Install method npm install (permanent local copy)

2. azure ☁️

Detail Value
What it does Manages Azure resources (VMs, storage, web apps, etc.)
Example usage "List resource groups", "Create a Static Web App"
Where it lives Downloaded fresh each time (via npx)
Authentication Uses my Azure CLI login (az login) — my personal identity
Transport stdio (runs locally, talks directly to Copilot)
Install method npx (streams latest version every time)

Both are pre-built!

I didn't write any code for these servers. They were built by others — I just downloaded, configured, and use them. Like installing apps from an app store. See The MCP Ecosystem for more about pre-built servers.


Managing MCP Servers

Use the /mcp command in Copilot CLI to:

  • View all configured MCP servers
  • Add new ones
  • Remove existing ones
  • Check their status

The configuration is stored in:

C:\Users\<username>\.copilot\mcp-config.json

Be careful with mcp-config.json

This file may contain secrets (like Client IDs and passwords). Never share it publicly or commit it to GitHub. Our daily backup to OneDrive keeps it safe and private.


What's Next?

Now that you understand the basics, explore the other MCP topics:

Page What You'll Learn
MCP vs APIs How MCP compares to traditional APIs
Building Blocks The 3 components: Tools, Resources & Prompts
Transport Types How MCP servers communicate (stdio vs HTTP)
The MCP Ecosystem Pre-built servers, npm/npx, costs, and more
Security Authentication, RBAC, and prompt injection
FAQ Quick answers to common questions