Foundry supports two patterns for multi-agent systems:
Register specialized agents as "tools" for an orchestrator agent. The orchestrator delegates tasks without custom routing code.
// Orchestrator agent with connected sub-agents:
orchestrator = project.agents.create_agent(
model="gpt-5.4",
name="Orchestrator",
instructions="Route user requests to the appropriate specialist.",
tools=[
{"type": "connected_agent", "agent_id": search_agent.id},
{"type": "connected_agent", "agent_id": analysis_agent.id},
{"type": "connected_agent", "agent_id": writing_agent.id}
]
)
A stateful orchestration layer for complex, multi-step business processes. Maintains context and state across long-running tasks with approval gates and branching.
On April 3, 2026, Microsoft released v1.0 of the Microsoft Agent Framework, officially merging AutoGen and Semantic Kernel into a single, unified open-source SDK for .NET and Python.
| Feature | Description |
|---|---|
| Graph-Based Workflows | Explicit, controllable multi-agent execution with streaming, checkpointing, and time-travel debugging |
| MCP Support | Native Model Context Protocol integration for tool discovery |
| A2A Protocol | Agent-to-Agent protocol for cross-platform agent communication |
| Enterprise Telemetry | Built-in OpenTelemetry, Entra ID identity, M365 data source integration |
The Memory Service allows agents to persist context across multiple sessions without custom databases: