One MCP endpoint fronting four heterogeneous backends: two plain tool servers and two AI assistants.
Everything below is live — the queue hits the real café server, the chats hit the real assistants.
One endpoint. Connect a client to the gateway URL and call search_tools("coffee stock") — plain tools and assistants come back side by side.
Live state. Place an order here, then invoke_tool cafe_list_orders from the client — same queue, through the gateway.
Agents as tools. Invoke experts_ask_head-roaster: "what should I reorder and how should I roast it?" — it runs its own tool loop against the roastery server.
Policy at the edge. A second gateway with a tool_allowlist exposes only the queue to a kiosk — no backend redeploys.
Head Roaster
assistant · tools: roastery
Try: "What's low on stock, and how would you roast the Kenyan?"
Barista Coach
assistant · tools: cafe
Try: "What's in the queue right now, and what should I make first?"