A comprehensive set of samples of creating and using MCP servers and clients with .NET
Model Context Protocol .NET Samples
π Introduction
Welcome to the Model Context Protocol (MCP) .NET Samples repository! This collection of samples demonstrates how to leverage the Model Context Protocol in .NET applications.
MCP is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). Think of MCP like a USB-C port for AI applications - it provides a standardized way to connect AI models to different data sources and tools.
With MCP, you can:
- Utilize pre-built integrations that your LLM can directly plug into
- Flexibly switch between LLM providers and vendors
- Follow best practices for securing your data within your infrastructure
- Build agents and complex workflows on top of LLMs
This repository contains .NET samples ranging from building your own MCP implementation to integrating with Azure services.
π Sample Projects
| Sample Name | Description | |-------------|-------------| | Markdown to HTML | A remote MCP server that converts markdown text to HTML. | | To-do List | A remote MCP server that manages to-do list items. | | YouTube Subtitles Extractor | A remote MCP server that extracts subtitles from any given YouTube video's URL. |
π οΈ Getting Started
Details on how to set up and run the samples will be provided in each sample's directory.
π Learning Resources
πΆββοΈ Next Steps
- Learn more about GenAI with .NET with a free course!
- Join the Azure AI Community Discord to keep the conversation going
Contributing
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.
Trademarks
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 are subject to those third-party's policies.