#!/usr/bin/env python3 """ 🌿 OVERGROWTH HACKATHON DEMO Living Digital Network Environments - Autonomous Network Engineering Demo: Build a complete retail network from natural language description """ import sys import json from pathlib import Path # Add parent to path to import from agent sys.path.insert(0, str(Path(__file__).parent.parent / "overgrowth")) from agent.local_mcp import LocalMCPClient def print_banner(): print("="*80) print("🌿 OVERGROWTH - Living Digital Network Environments") print("="*80) print("\nšŸŽÆ DEMO: Build a retail network from natural language") print("\nScenario:") print(" You describe your business → Overgrowth creates the network → Auto-configures everything") print("\n" + "="*80 + "\n") def demo(): print_banner() # User's natural language description description = """ A coffee shop chain called GreenLeaf Coffee with: - 1 headquarters with a database server and manager's office PC - 2 retail stores (one downtown, one in suburbs) - Each store has a POS terminal and customer WiFi - All locations connected via WAN - Need VLANs for security (Sales, Engineering, Management) """ print("šŸ“ USER REQUEST:") print(description) print("\n" + "-"*80 + "\n") # Initialize MCP client (auto-detects bundled server path) print("šŸ”§ Initializing Overgrowth MCP client...") client = LocalMCPClient() print("āœ… MCP client ready\n") print("-"*80 + "\n") # Call the network builder print("šŸš€ Building network from description...\n") result = client.call_tool( "build_network_from_description", { "description": description, "project_name": "overgrowth", "auto_configure": True } ) print("\n" + "="*80) print("šŸ“Š RESULT:") print("="*80 + "\n") if isinstance(result, list) and len(result) > 0: print(result[0].get("text", "No output")) else: print(result) print("\n" + "="*80) print("✨ DEMO COMPLETE!") print("="*80) print("\nšŸ“‹ What just happened:") print(" 1. Natural language → Parsed business requirements") print(" 2. GNS3 topology → Created switches, PCs, network links") print(" 3. Auto-configured → VLANs, trunks, SSH, IP addresses") print(" 4. Ready to use → Full working network in seconds!") print("\nšŸŽ“ This demonstrates:") print(" āœ“ MCP Server automation") print(" āœ“ Living digital environments") print(" āœ“ Natural language → Infrastructure") print(" āœ“ Zero-touch deployment") print(" āœ“ Network digital twins") print("\nšŸ† Hackathon Vision:") print(" Autonomous network engineering where AI agents manage") print(" infrastructure based on business requirements, not CLI commands.") print("\n" + "="*80 + "\n") if __name__ == "__main__": demo()