Build an intelligent code-snippet service using Azure Functions that demonstrates how to create MCP (Model Context Protocol) tools for AI assistants like GitHub Copilot. Implement durable AI agents using Microsoft Agent Framework, orchestrate multi-agent workflows with Durable Functions, and enable semantic search using Azure Cosmos DB vector search with OpenAI embeddings.
By the end of this session, learners will be able to:
- Expose Azure Functions as discoverable MCP tools for AI assistants
- Create stateful AI agents using Microsoft Agent Framework with automatic state management
- Implement vector embeddings and semantic search with Azure Cosmos DB
- Orchestrate multi-agent workflows using Durable Task Scheduler
- Deploy and monitor AI-powered serverless applications on Azure
- Azure Functions
- Azure Cosmos DB
- Azure OpenAI Service
- Microsoft Agent Framework
- Model Context Protocol (MCP)
- GitHub Copilot
Complete lab instructions and the full code repository are available at:
https://aka.ms/functions-mcp-lab
The lab walks you through building Snippy, an intelligent code snippet manager that demonstrates:
- MCP Tool Integration β Expose Azure Functions as discoverable tools for AI assistants
- Durable AI Agents β Build stateful agents with Microsoft Agent Framework
- Multi-Agent Orchestration β Coordinate specialized agents (DeepWiki, CodeStyle) using Durable Task Scheduler
- Vector Search β Semantic code retrieval using Azure Cosmos DB DiskANN with OpenAI embeddings
- Monitoring & Observability β Track orchestrations in real-time with DTS dashboard
The Microsoft Learn MCP Server is a remote MCP Server that enables clients like GitHub Copilot and other AI agents to bring trusted and up-to-date information directly from Microsoft's official documentation. Get started by using the one-click button above for VSCode or access the mcp.json file included in this repo.
For more information, setup instructions for other dev clients, and to post comments and questions, visit our Learn MCP Server GitHub repo at https://github.com/MicrosoftDocs/MCP. Find other MCP Servers to connect your agent to at https://mcp.azure.com.
Note: When you use the Learn MCP Server, you agree with Microsoft Learn and Microsoft API Terms of Use.
| Resources | Links | Description |
|---|---|---|
| Lab Repository | https://aka.ms/functions-mcp-lab | Complete lab instructions and source code (Snippy) |
| Ignite 2025 Next Steps | https://aka.ms/Ignite25-Next-Steps | Links to all repos for Ignite 2025 Sessions |
| Microsoft Foundry Community Discord | Connect with the Microsoft Foundry Community! | |
| Learn at Ignite | https://aka.ms/LearnAtIgnite | Continue learning on Microsoft Learn |
| Azure Functions Documentation | https://learn.microsoft.com/azure/azure-functions/ | Official Azure Functions documentation |
| Microsoft Agent Framework | https://learn.microsoft.com/agent-framework/ | Documentation for Microsoft Agent Framework |
![]() David Barkol π’ |
![]() Anthony Chu π’ |
![]() Govind Kanshi π’ |
![]() Matthew Henderson π’ |
![]() Greenie π’ |
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 Contributor License Agreements.
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.
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.






