This open-source curriculum is designed to teach the concepts and fundamentals of the Model Context Protocol (MCP), with practical examples in .NET, Java, TypeScript, JavaScript and Python.
Follow these steps to get started using these resources :
- Fork the Repository: Click
- Clone the Repository:
git clone https://github.com/microsoft/mcp-for-beginners.git
- Join The Azure AI Foundry Discord and meet experts and fellow developers
๐ Multi-Language Support
Supported via GitHub Action (Automated & Always Up-to-Date)
French | Spanish | German | Russian | Arabic | Persian (Farsi) | Urdu | Chinese (Simplified) | Chinese (Traditional, Macau) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Taiwan) | Japanese | Korean | Hindi | Bengali | Marathi | Nepali | Punjabi (Gurmukhi) | Portuguese (Portugal) | Portuguese (Brazil) | Italian | Polish | Turkish | Greek | Thai | Swedish | Danish | Norwegian | Finnish | Dutch | Hebrew | Vietnamese | Indonesian | Malay | Tagalog (Filipino) | Swahili | Hungarian | Czech | Slovak | Romanian | Bulgarian | Serbian (Cyrillic) | Croatian | Slovenian
๐ Model Context Protocol (MCP) Curriculum for Beginners
Learn MCP with Hands-on Code Examples in C#, Java, JavaScript, Python, and TypeScript
๐ง Overview of the Model Context Protocol Curriculum
The Model Context Protocol (MCP) is a cutting-edge framework designed to standardize interactions between AI models and client applications. This open-source curriculum offers a structured learning path, complete with practical coding examples and real-world use cases, across popular programming languages including C#, Java, JavaScript, TypeScript, and Python.
Whether you're an AI developer, system architect, or software engineer, this guide is your comprehensive resource for mastering MCP fundamentals and implementation strategies.
๐ Official MCP Resources
- ๐ MCP Documentation โ Detailed tutorials and user guides
- ๐ MCP Specification โ Protocol architecture and technical references
- ๐งโ๐ป MCP GitHub Repository โ Open-source SDKs, tools, and code samples
๐งญ Complete MCP Curriculum Structure
| Ch | Title | Description | Link | |--|--|--|--| | 00 | Introduction to MCP | Overview of the Model Context Protocol and its significance in AI pipelines, including what is the Model Context Protocol, why standardization matters and practical use cases and benefits | Introduction | | 01 | Core Concepts Explained | In-depth exploration of the core concepts of MCP, including client-server architecture, key protocol components, and messaging patterns | Core Concepts | | 02 | Security in MCP | Identifying security threats within MCP-based systems, techniques and best practices for securing implementations | Security | | 03 | Getting Started with MCP | Environment setup and configuration, creating basic MCP servers and clients, integrating MCP with existing applications | Getting Started | | 3.1 | First server | Setting up a basic server using the MCP protocol, understanding the server-client interaction, and testing the server | First Server | | 3.2 | First client | Setting up a basic client using the MCP protocol, understanding the client-server interaction, and testing the client | First Client | | 3.3 | Client with LLM | Setting up a client using the MCP protocol with a Large Language Model (LLM) | Client with LLM | | 3.4 | Consuming a server with Visual Studio Code | Setting up Visual Studio Code to consume servers using the MCP protocol | Consuming a server with Visual Studio Code | | 3.5 | Creating a server using SSE | SSE helps us expose a server to the internet. This section will help you create a server using SSE | Creating a server using SSE | | 3.6 | HTTP Streaming | Learn how to implement HTTP streaming for real-time data transfer between clients and MCP servers | HTTP Streaming | | 3.7 | Use AI Toolkit | AI toolkit is a great tool that will help you manage your AI and MCP workflow. | Use AI Toolkit | | 3.8 | Testing your server | Testing is an important part of the development process. This section will help you test use several different tools. | Testing your server | | 3.9 | Deploy your server | How do you go from local development to production? This section will help you develop and deploy your server. | Deploy your server | | 04 | Practical Implementation | Using SDKs across different languages, debugging, testing, and validation, crafting reusable prompt templates and workflows | Practical Implementation | | 05 | Advanced Topics in MCP | Multi-modal AI workflows and extensibility, secure scaling strategies, MCP in enterprise ecosystems | Advanced Topics | | 5.1 | MCP Integration with Azure | Shows integration with Azure | MCP Azure integration | | 5.2 | Multi modality | Showing how to work with different modalities like images and more | Multi modality | | 5.3 | MCP OAuth2 Demo | Minimal Spring Boot app showing OAuth2 with MCP, both as Authorization and Resource Server. Demonstrates secure token issuance, protected endpoints, Azure Container Apps deployment, and API Management integration. | MCP OAuth2 Demo | | 5.4 | Root Contexts | Learn more about root context and how to implement them | Root Contexts | | 5.5 | Routing | Learn different types of routing | Routing | | 5.6 | Sampling | Learn how to work with sampling | Sampling | | 5.7 | Scaling | Learn about scaling MCP servers, including horizontal and vertical scaling strategies, resource optimization, and performance tuning | Scaling | | 5.8 | Security | Secure your MCP Server, including authentication, authorization, and data protection strategies | Security | | 5.9 | Web Search MCP | Python MCP server and client integrating with SerpAPI for real-time web, news, product search, and Q&A. Demonstrates multi-tool orchestration, external API integration, and robust error handling | Web Search MCP | | 5.10 | Realtime Streaming | Real-time data streaming has become essential in today's data-driven world, where businesses and applications require immediate access to information to make timely decisions.| Realtime Streaming | | 5.11 | Realtime Web Search | Real-time web search how MCP transforms real-time web search by providing a standardized approach to context management across AI models, search engines, and applications.| Realtime Web Search | | 06 | Community Contributions | How to contribute code and docs, collaborating via GitHub, community-driven enhancements and feedback | Community Contributions | | 07 | Insights from Early Adoption | Real-world implementations and what worked, building and deploying MCP-based solutions, trends and future roadmap | Insights | | 08 | Best Practices for MCP | Performance tuning and optimization, designing fault-tolerant MCP systems, testing and resilience strategies | Best Practices | | 09 | MCP Case Studies | Deep-dives into MCP solution architectures, deployment blueprints and integration tips, annotated diagrams and project walkthroughs | Case Studies | | 10 | Streamlining AI Workflows: Building an MCP Server with AI Toolkit | Comprehensive hands-on workshop combining MCP with Microsoft's AI Toolkit for VS Code. Learn to build intelligent applications bridging AI models with real-world tools through practical modules covering fundamentals, custom server development, and production deployment strategies. | Hands On Lab |
Sample Projects
๐งฎ MCP Calculator Sample Projects:
Explore Code Implementations by Language
๐ก MCP Advanced Calculator Projects:
Explore Advanced Samples
๐ฏ Prerequisites for Learning MCP
To get the most out of this curriculum, you should have:
- Basic knowledge of C#, Java, or Python
- Understanding of client-server model and APIs
- (Optional) Familiarity with machine learning concepts
๐ Study Guide
A comprehensive Study Guide is available to help you navigate this repository effectively. 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
๐ ๏ธ How to Use This Curriculum Effectively
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
๐ License Information
This content is licensed under the MIT License. For terms and conditions, see the LICENSE.
๐ค Contribution Guidelines
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 opencode@microsoft.com with any additional questions or comments.
๐ Other Courses
Our team produces other courses! Check out:
- AI Agents For Beginners
- Generative AI for Beginners using .NET
- Generative AI for Beginners using JavaScript
- Generative AI for Beginners
- ML for Beginners
- Data Science for Beginners
- AI for Beginners
- Cybersecurity for Beginners
- Web Dev for Beginners
- IoT for Beginners
- XR Development for Beginners
- Mastering GitHub Copilot for AI Paired Programming
- Mastering GitHub Copilot for C#/.NET Developers
- Choose Your Own Copilot Adventure
โข๏ธ Trademark Notice
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos is subject to those third-parties' policies.