# Microsoft Agent Framework Microsoft Agent Framework (MAF) is Microsoft's open-source framework for building, orchestrating, and operating AI agents in **.NET** and **Python**. It is the consolidation of two earlier Microsoft efforts ; *Semantic Kernel* (the SDK for embedding LLMs in apps) and *AutoGen* (the multi-agent research framework) ; into one production-oriented surface. It sits one layer above the model SDKs: it is a *framework* on top of [[OpenAI SDK]], [[Anthropic SDK]], Azure OpenAI, [[Vercel AI SDK]]-style abstractions, and ; notably ; the [[GitHub Copilot SDK]] as a built-in provider. ## What It Provides - **Agents and skills** ; the same agent + plugin (skill) pattern Semantic Kernel pioneered, now first-class in MAF - **Multi-agent orchestration** ; the AutoGen heritage ; group chats, handoffs, hierarchical patterns - **Function tools** ; declare typed functions; the framework handles schema generation and validation - **Streaming** ; first-class for chat UIs and live console output - **Multi-turn conversations** with managed history - **Permissions framework** ; gate sensitive operations - **[[Model Context Protocol (MCP)]] support** ; both consume and serve - **Provider abstraction** ; OpenAI, Azure OpenAI, [[Anthropic]], [[GitHub Copilot SDK]], local Ollama, others - **Telemetry** ; OpenTelemetry-native tracing and metrics ## Why The Consolidation Microsoft historically shipped *Semantic Kernel* (production-grade, LLM-integration-focused) and *AutoGen* (research-grade, multi-agent-focused) as separate things. Customers who needed both ended up gluing them together. MAF folds them into one framework: SK's production maturity + AutoGen's multi-agent primitives. The .NET-first flavour matters in regulated enterprises (Microsoft Stack, Azure), which has historically been Microsoft's stronghold for AI tooling. The Python parity makes it usable for the data-science crowd at the same shops. ## Where It Fits - **Enterprise / regulated stacks on .NET / Azure**: this is the natural choice - **Multi-agent applications in Python** with a Microsoft / Azure OpenAI relationship: same - **You want [[GitHub Copilot SDK]] as one provider in a multi-agent flow**: MAF is the framework Microsoft itself uses to integrate it - **TypeScript / Node-first project**: less aligned ; [[Vercel AI SDK]] / [[Mastra AI]] / [[OpenAI Agents SDK]]-TS are better fits ## Comparison - **vs [[OpenAI Agents SDK]]**: similar layer, but MAF is provider-neutral by design and bigger surface (multi-language, MCP, telemetry, permissions). OpenAI Agents SDK is more focused and OpenAI-first - **vs [[Mastra AI]]**: Mastra is TypeScript-first and lighter; MAF is enterprise-broad and dual-language - **vs [[Pydantic AI]]**: Pydantic AI is Python-focused and typed-I/O-centric; MAF spans multi-agent orchestration and operations, not just typed I/O - **vs [[Claude Managed Agents]]**: that's a managed runtime *service*; MAF is a framework you self-host ## License MIT. Source on GitHub. ## References - GitHub: https://github.com/microsoft/agent-framework - Documentation: https://learn.microsoft.com/agent-framework - Semantic Kernel (predecessor): https://github.com/microsoft/semantic-kernel - AutoGen (predecessor): https://github.com/microsoft/autogen ## Related - [[AI SDKs]] - [[OpenAI SDK]] - [[OpenAI Agents SDK]] - [[Anthropic SDK]] - [[GitHub Copilot SDK]] - [[Mastra AI]] - [[Pydantic AI]] - [[Vercel AI SDK]] - [[Model Context Protocol (MCP)]] - [[AI Agent Harness]]