Microsoft Agent Framework: from agent loops to a travel assistant
Rakesh Lakshminarayana says Microsoft Agent Framework has reached general availability. Its open-source SDK for .NET and Python supplies the building blocks for an agent loop: a language model reasons about a request, calls tools when needed, updates its context and repeats until it can respond. Enterprise applications also need identity-based access controls, approval for sensitive actions, audit trails, cost controls, observability and continuous evaluation of nondeterministic responses. The framework supports MCP, A2A, AGUI and OpenTelemetry, with extensible models and memory providers.
The focused demos distinguish three ways to supply information. A context provider injects relevant data before the model reasons; an agent session retains conversation context for follow-up questions. Skills keep detailed instructions and resources in files, exposing descriptions first and loading a skill such as visa assistance only when needed. The built-in agent skill provider is still experimental. MCP tools instead let the model fetch data or act during execution: the demo searches flights and wraps the book-flight tool in an approval-required function, so a user can approve or deny the call.
The end-to-end React travel assistant demonstrates two scenarios: a human-in-the-loop flight booking, with results shown in cards and approval requested in the UI; and long-term memory, which recalls travel preferences—including a $3,000 budget—across sessions. An ASP.NET Core backend hosts the agent, Azure OpenAI supplies the model, Cosmos DB persists profiles, and Aspire displays traces. A custom user profile memory provider reads preferences into context and extracts updates from recent messages. Unlike this cross-session memory, short-term session memory is lost in a new thread.
AGUI lets the backend agent invoke front-end capabilities, including displaying flight results and requesting approval; copilot kit supplies the chat UI and hooks. To avoid giving one agent too many responsibilities, the final workflow uses a triage agent to hand queries to a trip advisor agent or a flight booking agent. Rakesh shows the handoff in Aspire traces; the framework also offers sequential, parallel and group-chat workflow patterns. For hands-on use, the examples require .NET 10 SDK and C#, alongside React, Docker and Azure developer CLI for the full application.
