An AI-powered interview coach that shows how to wire up Microsoft Agent Framework, Model Context Protocol (MCP), and Aspire into a working application you can deploy.
This sample covers the patterns you'd need for a real agent deployment:
- Building AI agents with Microsoft Agent Framework
- Multi-agent handoff orchestration — single agent vs. 5 specialized agents
- Model Context Protocol (MCP) for adding tools without touching agent code
- Running multiple services together with Aspire
- Keeping conversation state across sessions
- Swapping LLM providers (Microsoft Foundry, Azure OpenAI, GitHub Models, GitHub Copilot)
- Deploying to Azure with
azd up
See learning objectives for the full breakdown.
The app is split into a few services:
- Aspire orchestrates everything (service discovery, health checks, config)
- WebUI is a Blazor chat interface
- Agent runs the interview logic via Microsoft Agent Framework
- MCP Servers handle document parsing (MarkItDown) and session storage (InterviewData)
- LLM Provider talks to Foundry, Azure OpenAI, or GitHub Models
See architecture overview for how the pieces fit together.
- .NET 10 SDK or later
- Visual Studio 2026 or VS Code + C# Dev Kit
- Azure Subscription
- Microsoft Foundry
See LLM provider options for alternatives.
git clone https://github.com/Azure-Samples/interview-coach-agent-framework.git
cd interview-coach-agent-framework-
Create a new Microsoft Foundry project on Foundry Portal or command line.
See Foundry setup guide for details.
Use .NET user secrets to keep credentials secure:
dotnet user-secrets --file ./apphost.cs set MicrosoftFoundry:Project:Endpoint "{{MICROSOFT_FOUNDRY_PROJECT_ENDPOINT}}"
dotnet user-secrets --file ./apphost.cs set MicrosoftFoundry:Project:ApiKey "{{MICROSOFT_FOUNDRY_API_KEY}}"Start all services with .NET Aspire:
aspire run --file ./apphost.csWhat happens next:
- Open Aspire Dashboard (URL shown in terminal output).
- All services start (Agent, WebUI, MCP servers, SQLite).
- Look for ✅ "Running" status on all resources.
- Click the webui endpoint to open the interview coach.
Deploy the entire application to Azure Container Apps with one command:
# Login to Azure
azd auth login
# Provision resources and deploy
azd upWhen finished, remove all Azure resources:
azd down --force --purgeThe default is Microsoft Foundry, but you can also use:
- Azure OpenAI — direct AOAI integration
- GitHub Models — free tier, good for prototyping
The default is LlmHandOff, but you can also use:
Single- single-agent mode
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License - see LICENSE.md for details.
Built by the CoreAI DevRel team | Questions? Check the FAQ or open an issue.
