ShortFlix · agent-trace
Stack: ADK · Gemini 2.0 · MCP · Cloud Run · grounding=Vertex AI Search

Multi-Agent Topology

orchestratorlive
ADK · routes intent → sub-agents
curator-agentthinking
Gemini · learns taste from watch-vector
unified-search-agentlive
MCP tools: rapidapi-yt · rapidapi-ig · rapidapi-tt
trend-safety-agentidle
Gemini grounding + IP/ToS filter

MCP Tools Bound

mcp://rapidapi/youtube-shorts.search
mcp://rapidapi/instagram-reels.fetch
mcp://rapidapi/tiktok.trending
mcp://gcs/curator-cache (nightly batch)
mcp://vertex/search.ground

Live Trace · query="surprise me with cross-cultural cooking shorts"

orchestrator → decompose: {intent: discover, axis: cross-cultural, vertical: cooking}
curator-agent → embed user_taste_vector(7d) · cosine match against 3-platform cache
unified-search-agent → parallel fanout [yt-shorts.search, ig-reels.fetch, tt.trending]
trend-safety-agent → ground via vertex/search · drop 2 ToS-flagged
orchestrator → re-rank by (novelty × cross-platform diversity) · return top 9
verdict → 9 picks · 3 from each platform · novelty score 0.82 ↑ vs single-agent baseline 0.41

Curator Output

YT★ 0.91
IG★ 0.88
TT★ 0.86
YT★ 0.84
IG★ 0.81
TT★ 0.79