# 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]]