These resources become more valuable as your understanding grows, but don't feel pressured to read everything immediately. Start with the areas that interest you most!
- 📘 MCP Documentation – This is your go-to resource for step-by-step tutorials and user guides. The documentation is written with beginners in mind, providing clear examples you can follow along with at your own pace.
- 📜 MCP Specification – Think of this as your comprehensive reference manual. As you work through the curriculum, you'll find yourself returning here to look up specific details and explore advanced features.
- 📜 Original MCP Specification – This contains additional technical details that can be helpful for advanced implementations. It's there when you need it, but don't worry about it when you're starting out.
- 🧑💻 MCP GitHub Repository – Here you'll find SDKs, tools, and code samples in multiple programming languages. It's like a treasure trove of practical examples and ready-to-use components.
- 🌐 MCP Community – Join fellow learners and experienced developers in discussions about MCP. It's a supportive community where questions are welcome and knowledge is shared freely.
Your MCP journey is carefully structured to build your confidence and skills progressively. Each phase introduces new concepts while reinforcing what you've already learned.
This is where your adventure begins! We'll introduce you to MCP concepts using familiar analogies and simple examples. You'll understand what MCP is, why it exists, and how it fits into the larger world of AI development.
• Module 0 - Introduction to MCP: We'll start by exploring what MCP is and why it's so important for modern AI applications. You'll see real-world examples of MCP in action and understand how it solves common problems developers face.
• Module 1 - Core Concepts Explained: Here you'll learn the essential building blocks of MCP. We'll use plenty of analogies and visual examples to make sure these concepts feel natural and understandable.
• Module 2 - Security in MCP: Security might sound intimidating, but we'll show you how MCP includes built-in safety features and teach you best practices that protect your applications from the start.
Now the real fun begins! You'll get hands-on experience building actual MCP servers and clients. Don't worry - we'll start simple and guide you through every step.
This module includes multiple hands-on guides that let you practice in your preferred programming language. You'll create your first server, build a client to connect to it, and even integrate with popular development tools like VS Code.
Each guide includes complete code examples, troubleshooting tips, and explanations of why we make specific design choices. By the end of this phase, you'll have working MCP implementations you can be proud of!
With the basics mastered, you're ready to explore more sophisticated MCP features. We'll cover practical implementation strategies, debugging techniques, and advanced topics like multi-modal AI integration.
You'll also learn how to scale your MCP implementations for production use and integrate with cloud platforms like Azure. These modules prepare you to build MCP solutions that can handle real-world demands.
The final phase focuses on joining the MCP community and specializing in areas that interest you most. You'll learn how to contribute to open-source MCP projects, implement advanced authentication patterns, and build comprehensive database-integrated solutions.
Module 11 deserves special mention - it's a complete 13-lab hands-on learning path that teaches you to build production-ready MCP servers with PostgreSQL integration. It's like a capstone project that brings together everything you've learned!
| Module | Topic | Description | Link |
|---|---|---|---|
| Module 1-3: Fundamentals | |||
| 00 | Introduction to MCP | Overview of the Model Context Protocol and its significance in AI pipelines | Read more |
| 01 | Core Concepts Explained | In-depth exploration of core MCP concepts | Read more |
| 02 | Security in MCP | Security threats and best practices | Read more |
| 03 | Getting Started with MCP | Environment setup, basic servers/clients, integration | Read more |
| Module 3: Building Your First Server & Client | |||
| 3.1 | First Server | Create your first MCP server | Guide |
| 3.2 | First Client | Develop a basic MCP client | Guide |
| 3.3 | Client with LLM | Integrate large language models | Guide |
| 3.4 | VS Code Integration | Consume MCP servers in VS Code | Guide |
| 3.5 | stdio Server | Create servers using stdio transport | Guide |
| 3.6 | HTTP Streaming | Implement HTTP streaming in MCP | Guide |
| 3.7 | AI Toolkit | Use AI Toolkit with MCP | Guide |
| 3.8 | Testing | Test your MCP server implementation | Guide |
| 3.9 | Deployment | Deploy MCP servers to production | Guide |
| 3.10 | Advanced server usage | Use advanced servers for advanced feature usage and improved architecture | Guide |
| 3.11 | Simple auth | A chapter showing you auth from the beginning and RBAC | Guide |
| Module 4-5: Practical & Advanced | |||
| 04 | Practical Implementation | SDKs, debugging, testing, reusable prompt templates | Read more |
| 05 | Advanced Topics in MCP | Multi-modal AI, scaling, enterprise use | Read more |
| 5.1 | Azure Integration | MCP Integration with Azure | Guide |
| 5.2 | Multi-modality | Working with multiple modalities | Guide |
| 5.3 | OAuth2 Demo | Implement OAuth2 authentication | Guide |
| 5.4 | Root Contexts | Understand and implement root contexts | Guide |
| 5.5 | Routing | MCP routing strategies | Guide |
| 5.6 | Sampling | Sampling techniques in MCP | Guide |
| 5.7 | Scaling | Scale MCP implementations | Guide |
| 5.8 | Security | Advanced security considerations | Guide |
| 5.9 | Web Search | Implement web search capabilities | Guide |
| 5.10 | Realtime Streaming | Build realtime streaming functionality | Guide |
| 5.11 | Realtime Search | Implement realtime search | Guide |
| 5.12 | Entra ID Auth | Authentication with Microsoft Entra ID | Guide |
| 5.13 | Foundry Integration | Integrate with Azure AI Foundry | Guide |
| 5.14 | Context Engineering | Techniques for effective context engineering | Guide |
| 5.15 | MCP Custom Transport | Custom Transport implementations | Guide |
| Module 6-10: Community & Best Practices | |||
| 06 | Community Contributions | How to contribute to the MCP ecosystem | Guide |
| 07 | Insights from Early Adoption | Real-world implementation stories | Guide |
| 08 | Best Practices for MCP | Performance, fault-tolerance, resilience | Guide |
| 09 | MCP Case Studies | Practical implementation examples | Guide |
| 10 | Hands-on Workshop | Building an MCP Server with AI Toolkit | Lab |
| Module 11: MCP Server Hands On Lab | |||
| 11 | MCP Server Database Integration | Comprehensive 13-lab hands-on learning path for PostgreSQL integration | Labs |
| 11.1 | Introduction | Overview of MCP with database integration and retail analytics use case | Lab 00 |
| 11.2 | Core Architecture | Understanding MCP server architecture, database layers, and security patterns | Lab 01 |
| 11.3 | Security & Multi-Tenancy | Row Level Security, authentication, and multi-tenant data access | Lab 02 |
| 11.4 | Environment Setup | Setting up development environment, Docker, Azure resources | Lab 03 |
| 11.5 | Database Design | PostgreSQL setup, retail schema design, and sample data | Lab 04 |
| 11.6 | MCP Server Implementation | Building the FastMCP server with database integration | Lab 05 |
| 11.7 | Tool Development | Creating database query tools and schema introspection | Lab 06 |
| 11.8 | Semantic Search | Implementing vector embeddings with Azure OpenAI and pgvector | Lab 07 |
| 11.9 | Testing & Debugging | Testing strategies, debugging tools, and validation approaches | Lab 08 |
| 11.10 | VS Code Integration | Configuring VS Code MCP integration and AI Chat usage | Lab 09 |
| 11.11 | Deployment Strategies | Docker deployment, Azure Container Apps, and scaling considerations | Lab 10 |
| 11.12 | Monitoring | Application Insights, logging, performance monitoring | Lab 11 |
| 11.13 | Best Practices | Performance optimization, security hardening, and production tips | Lab 12 |
One of the most exciting parts of learning MCP is seeing your code skills develop progressively. We've designed our code examples to start simple and grow more sophisticated as your understanding deepens. Here's how we introduce concepts - with code that's easy to understand but demonstrates real MCP principles, you'll understand not just what this code does, but why it's structured this way and how it fits into larger MCP applications.
| Language | Description | Link |
|---|---|---|
| C# | MCP Server Example | View Code |
| Java | MCP Calculator | View Code |
| JavaScript | MCP Demo | View Code |
| Python | MCP Server | View Code |
| TypeScript | MCP Example | View Code |
| Rust | MCP Example | View Code |
| Language | Description | Link |
|---|---|---|
| C# | Advanced Sample | View Code |
| Java with Spring | Container App Example | View Code |
| JavaScript | Advanced Sample | View Code |
| Python | Complex Implementation | View Code |
| TypeScript | Container Sample | View Code |
To get the most out of this curriculum, you should have:
-
Basic knowledge of programming in at least one of the following languages: C#, Java, JavaScript, Python, or TypeScript
-
Understanding of client-server model and APIs
-
Familiarity with REST and HTTP concepts
-
(Optional) Background in AI/ML concepts
-
Joining our community discussions for support
This repository includes several resources to help you navigate and learn effectively:
A comprehensive Study Guide is available to help you navigate this repository effectively. This visual curriculum map shows how all the topics connect and provides guidance on how to use the sample projects effectively. It's especially helpful if you're a visual learner who likes to see the big picture.
The guide includes:
- A visual curriculum map showing all topics covered
- Detailed breakdown of each repository section
- Guidance on how to use sample projects
- Recommended learning paths for different skill levels
- Additional resources to complement your learning journey
We maintain a detailed Changelog that tracks all significant updates to the curriculum materials, so you can stay current with the latest improvements and additions.
- New content additions
- Structural changes
- Feature improvements
- Documentation updates
Each lesson in this guide includes:
- Clear explanations of MCP concepts
- Live code examples in multiple languages
- Exercises to build real MCP applications
- Extra resources for advanced learners
Get ready for two days of deep technical insight, community connection, and hands-on learning at MCP Dev Days, a virtual event dedicated to the Model Context Protocol (MCP) — the emerging standard that bridges AI models and the tools they rely on. You can watch MCP Dev Days by registering on our event page: https://aka.ms/mcpdevdays.
Is all about empowering developers to use MCP in their developer workflow and celebrating the amazing MCP community. We’ll be joined with community members and partners such as Arcade, Block, Okta, and Neon to see how they are collaborating with Microsoft to shape an open, extensible MCP ecosystem. Real-world demos across VS Code, Visual Studio, GitHub Copilot, and popular community tools Practical, context-driven dev workflows Community-led sessions and insights Whether you’re just getting started with MCP or already building with it, Day 1 will set the stage with inspiration and actionable takeaways.
Is for MCP builders. We’ll go deep into implementation strategies and best practices for creating MCP servers and integrating MCP into your AI workflows.
- Building MCP Servers and integrating them into agent experiences
- Prompt-driven development
- Security best practices
- Using building blocks like Functions, ACA, and API Management
- Registry alignment and tooling (1P + 3P)
If you’re a developer, tool builder, or AI product strategist, this day is packed with the insights you need to build scalable, secure, and future-ready MCP solutions.
Learn in intensive video sessions how to create MCP servers, integrate with VS Code, and deploy professionally on Azure based on content from the MCP for Beginners curriculum. Walk away with practical skills in a technology that major companies are already using.
Let's learn about the Model Context Protocol (MCP), a cutting-edge framework designed to standardize interactions between AI models and client applications. Through this beginner-friendly session, we'll introduce you to MCP and guide you through creating your first MCP server.
JavaScript: https://aka.ms/letslearnmcp-javascript
Congratulations! You've just taken the first step in an exciting journey that will expand your programming capabilities and connect you to the cutting edge of AI development.
By reading through this introduction, you've already begun building your MCP knowledge foundation. You understand what MCP is, why it matters, and how this curriculum will support your learning journey. That's a significant achievement and the beginning of your expertise in this important technology.
As you progress through the modules, remember that every expert was once a beginner. The concepts that might seem complex now will become second nature as you practice and apply them. Each small step builds toward powerful capabilities that will serve you throughout your development career.
You're joining a community of learners and experts who are passionate about MCP and eager to help others succeed. Whether you're stuck on a coding challenge or excited to share a breakthrough, the community is here to support your journey.
If you get stuck or have any questions about building AI apps. Join fellow learners and experienced developers in discussions about MCP. It's a supportive community where questions are welcome and knowledge is shared freely.
If you have product feedback or errors while building visit:
Your MCP adventure starts now! Begin with Module 0 to dive into your first hands-on MCP experiences, or explore the sample projects to see what you'll be building. Remember - every expert started exactly where you are now, and with patience and practice, you'll be amazed at what you can achieve.
Welcome to the world of Model Context Protocol development. Let's build something amazing together!
This curriculum grows stronger with contributions from learners like you! Whether you're fixing a typo, suggesting a clearer explanation, or adding a new example, your contributions help other beginners succeed.
Thanks to Microsoft Valued Professional Shivam Goyal for contributing code samples.
The contribution process is designed to be welcoming and supportive. Most contributions require a Contributor License Agreement (CLA), but the automated tools will guide you through the process smoothly.
This entire curriculum is available under the MIT LICENSE, meaning you can use, modify, and share it freely. This supports our mission of making MCP knowledge accessible to developers everywhere.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
Ready to start your MCP journey? Begin with Module 00 - Introduction to MCP and take your first steps into the world of Model Context Protocol development!
Our team produces other courses! Check out: