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
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 | Ukrainian | Burmese (Myanmar)
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.
- π MCP Documentation β Detailed tutorials and user guides
- π MCP Specification β Protocol architecture and technical references
- π Original MCP Specification β Legacy technical references (may contain additional details)
- π§βπ» MCP GitHub Repository β Open-source SDKs, tools, and code samples
- π MCP Community β Join discussions and contribute to the community
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.
β‘οΈ Register for MCP Dev Days
You can watch MCP Dev Days by registering on our event page: https://aka.ms/mcpdevdays. From there, youβll be able to join a live stream on YouTube or Twitch. All of the content is recorded and will be available afterwards on the Microsoft Developer YouTube channel. Source code for the demos will be available on GitHub too.
- Dates: July 29 (Day 1) & July 30 (Day 2)
- Time: 9:00 AM PST daily
- Where: Online β join from anywhere!
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.
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 | SSE Server | Create servers using Server-Sent Events | 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 |
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 |
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 |
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 |
Language | Description | Link |
---|---|---|
C# | Advanced Sample | View Code |
Java | 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. 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, including:
- 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
Thanks to Microsoft Valued Professional Shivam Goyal for contributing important code samples.
This content is licensed under the MIT License. For terms and conditions, see the LICENSE.
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.
The repository is organized as follows:
- Core Curriculum (00-10): The main content organized in ten sequential modules
- images/: Diagrams and illustrations used throughout the curriculum
- translations/: Multi-language support with automated translations
- translated_images/: Localized versions of diagrams and illustrations
- study_guide.md: Comprehensive guide to navigating the repository
- changelog.md: Record of all significant changes to the curriculum materials
- mcp.json: Configuration file for MCP specification
- CODE_OF_CONDUCT.md, LICENSE, SECURITY.md, SUPPORT.md: Project governance documents
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
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.