← Discover MCPs and Agents
a
MCPAI & MLMCP Registry

aitour26-LTG152-from-protocol-to-practice-build-and-use-your-first-mcp-server

Minimal Python MCP server demo for AI Tour: tracks expenses in CSV, exposes them as a resource, and runs in VS Code with GitHub Copilot Chat; includes docs and presenter guides.

Links

README

From the repo.

decorative banner

Microsoft AI Tour 2026

🔥LTG152: From protocol to practice: build and use your first MCP server

Microsoft Foundry Discord Microsoft Foundry Developer Forum

If you will be delivering this session, check the session-delivery-sources folder for slides, scripts, and other resources.

Session Description

In this talk, discover how the Model Context Protocol (MCP) is transforming the way AI agents connect with tools, data and each other in a standardized way. Dive into building your own MCP server, connecting a client, and validating your setup using the official MCP Inspector.

🧠 Learning Outcomes

By the end of this session, learners will be able to:

  • Explain MCP fundamentals (host, client, server) and the roles of prompts, tools, and resources.
  • Build and run a minimal Python MCP server that writes to and reads from a CSV ledger.
  • Invoke the server from GitHub Copilot Chat in VS Code using a prompt that triggers a typed tool and retrieves a resource.

💻 Technologies Used

  1. Model Context Protocol (MCP)
  2. GitHub Copilot Chat (Agent + Tools) and Visual Studio Code
  3. Python 3.12, FastMCP, uv (venv + deps), CSV

🔗 Session Resources

ResourcesLinksDescription
Additional Resources for this sessionhttps://learn.microsoft.comLinks specific to this session

📚 Continued Learning Resources

ResourcesLinksDescription
MCP for Beginners (GitHub)https://github.com/microsoft/mcp-for-beginnersBeginner-friendly MCP guide with examples and docs
AI Tour 2026 Resource Centerhttps://aka.ms/AITour26-Resource-CenterLinks to all repos for AI Tour 26 Sessions
Microsoft Foundry Community DiscordMicrosoft Foundry DiscordConnect with the Microsoft Foundry Community!
Learn at AI Tourhttps://aka.ms/LearnAtAITourContinue learning on Microsoft Learn

🌐 Multi-Language Support

Additional Languages Coming Soon

Content Owners

Gwyneth Pena-Siguenza
Gwyneth Pena-Siguenza

📢

🚀 Try Azure for Free!

You might need an Azure subscription to follow the steps in this repo. 👉 Start your free journey here: https://aka.ms/devrelft

This Azure Free Trial provides $200 credit for 30 days. Some features may incur costs after the trial. Check the Azure pricing calculator to estimate costs.

[!IMPORTANT] Free Tier Limitations: The Azure free subscription has significant constraints that may prevent full implementation of this repo:

  • Model access: Some advanced models (e.g., GPT-5, Claude) may not be available or have very limited quotas
  • Rate limits: Strict API call limits (e.g., requests per minute, tokens per day)
  • Region restrictions: Free tier resources may only be available in limited regions
  • Feature restrictions: Some Microsoft Foundry features (agent orchestration, evaluations) may require pay-as-you-go
  • Credit exhaustion: $200 credit can be consumed quickly with heavy AI model usage

Recommendation: For full functionality, consider a pay-as-you-go subscription or request access to Azure for Students ($100 credit, no credit card required) or the Microsoft for Startups Founders Hub.

Responsible AI

Microsoft is committed to helping our customers use our AI products responsibly, sharing our learnings, and building trust-based partnerships through tools like Transparency Notes and Impact Assessments. Many of these resources can be found at https://aka.ms/RAI. Microsoft’s approach to responsible AI is grounded in our AI principles of fairness, reliability and safety, privacy and security, inclusiveness, transparency, and accountability.

Large-scale natural language, image, and speech models - like the ones used in this sample - can potentially behave in ways that are unfair, unreliable, or offensive, in turn causing harms. Please consult the Azure OpenAI service Transparency note to be informed about risks and limitations.

The recommended approach to mitigating these risks is to include a safety system in your architecture that can detect and prevent harmful behavior. Azure AI Content Safety provides an independent layer of protection, able to detect harmful user-generated and AI-generated content in applications and services. Azure AI Content Safety includes text and image APIs that allow you to detect material that is harmful. Within Azure AI Foundry portal, the Content Safety service allows you to view, explore and try out sample code for detecting harmful content across different modalities. The following quickstart documentation guides you through making requests to the service.

Another aspect to take into account is the overall application performance. With multi-modal and multi-models applications, we consider performance to mean that the system performs as you and your users expect, including not generating harmful outputs. It's important to assess the performance of your overall application using Performance and Quality and Risk and Safety evaluators. You also have the ability to create and evaluate with custom evaluators.

You can evaluate your AI application in your development environment using the Azure AI Evaluation SDK. Given either a test dataset or a target, your generative AI application generations are quantitatively measured with built-in evaluators or custom evaluators of your choice. To get started with the azure ai evaluation sdk to evaluate your system, you can follow the quickstart guide. Once you execute an evaluation run, you can visualize the results in Azure AI Foundry portal .

Collected info

  • 16 stars
  • 6 forks
  • Language: Python
  • Source updated: 4/19/2026

Config for your environment

Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.

Tool

OS

Config file: ~/.cursor/mcp.json

{
  "mcpServers": {
    "mcp-server": {
      "url": "{MCP_ENDPOINT_URL}"
    }
  }
}

Paste into mcpServers in the config file. Restart Cursor after saving.

If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.