spec-to-agents
spec-to-agents copied to clipboard
A multi-agent event planning workflow built with Microsoft Agent Framework - combining Semantic Kernel's enterprise orchestration with AutoGen's multi-agent patterns.
Event Planning Multi-Agent System
A multi-agent event planning workflow built with Microsoft Agent Framework - combining Semantic Kernel's enterprise orchestration with AutoGen's multi-agent patterns.
[!NOTE] Ignite 2025 Lab: LAB513 - Build A2A and MCP Systems Using SWE Agents and Agent Framework
๐ฏ What This Demonstrates
This sample shows you how to build a production-ready multi-agent system with:
- Multi-Agent Orchestration: 5 specialized agents coordinating event planning
- Human-in-the-Loop: Interactive approval and feedback during workflow execution
- Tool Integration: Web search, weather APIs, calendar management, and code interpreter
- Azure Deployment: One-click deployment with Azure Developer CLI (azd)
๐๏ธ Architecture
Multi-Agent Workflow Design
The system uses a coordinator-centric star topology where the Event Coordinator routes tasks to specialized agents and synthesizes their outputs into a comprehensive event plan:

Agent Tools & Capabilities
Each specialist agent has access to domain-specific tools for their area of expertise:

Tool Integration:
- Venue Specialist: Web Search (Bing Grounding)
- Budget Analyst: Code Interpreter (Python REPL)
- Catering Coordinator: Web Search (Bing Grounding)
- Logistics Manager: Weather API (Open-Meteo) + Calendar Tools (iCalendar)
- All Agents: MCP Sequential Thinking (Model Context Protocol for complex reasoning)
๐ Quick Start
Prerequisites
- Python 3.11+
- uv - Python package manager
- Azure CLI (az)
- Azure Developer CLI (azd)
- Azure subscription
Deploy to Azure
# Clone and navigate to the repository
git clone https://github.com/microsoft/spec-to-agents.git
cd spec-to-agents
# Login to Azure
az login
azd auth login
# Deploy everything (provisions resources, generates .env, installs dependencies)
azd up
What happens:
- โ Provisions Microsoft Foundry + OpenAI models
- โ
Generates
.envwith connection details - โ
Installs Python dependencies via
uv sync
Run Locally
Interactive Console (Recommended):
uv run console
DevUI (Visual Interface):
uv run app
Then navigate to the URL shown (by default http://localhost:8080)
Example Input
Try this event planning request:
Plan a corporate holiday party for 50 people on December 6th, 2025 in Seattle
with a budget of $5,000. Include venue options, catering for dietary restrictions,
and check the weather forecast.
The agents will collaborate to:
- Search for suitable venues
- Calculate budget breakdown
- Recommend catering options
- Check weather and create calendar event
- Synthesize a comprehensive plan
๐ ๏ธ Project Structure
spec-to-agents/
โโโ src/spec_to_agents/
โ โโโ main.py # DevUI entry point (uv run app)
โ โโโ console.py # Interactive CLI entry point (uv run console)
โ โโโ agents/ # Agent definitions (budget_analyst, venue_specialist, etc.)
โ โโโ prompts/ # System prompts for each agent
โ โโโ tools/ # Tool implementations (web search, weather, calendar, mcp)
โ โโโ workflow/ # Workflow orchestration logic
โ โโโ utils/ # Shared utilities and clients
โโโ tests/ # Unit and integration tests
โโโ infra/ # Azure infrastructure (Bicep templates)
โโโ scripts/ # Post-provisioning hooks
๐ Key Features
Service-Managed Threads
All agents use store=True for automatic conversation history management via Azure AI Service - no manual message tracking required.
Human-in-the-Loop
Framework-native ctx.request_info() enables pausing workflows for user input with automatic state preservation.
Structured Output Routing
Agents return Pydantic models with explicit routing decisions (next_agent field), enabling dynamic workflow orchestration.
๐งช Development
Run Tests:
uv run pytest
Detailed Setup: See DEV_SETUP.md for debugging instructions and manual configuration.
๐ฆ Azure Resources
Provisioned automatically by azd up:
- Microsoft Foundry: AIServices resource and Project for service managed agents
- Azure OpenAI: gpt-5-mini (primary) and gpt-4.1-mini (web search)
- Bing Search: Grounding API for web searches
- Container Registry & App: For deployment (optional)
- Application Insights: Telemetry and monitoring
๐ค Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA).
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.