Packaged ZavaShop stock-out response fleet for AKS and Azure Container Apps labs. Multi-agent system with orchestrator and specialist agents (inventory, logistics, pricing, supplier) plus MCP servers.
All 4 tools have identical, minimal definitions. Each accepts a single 'goal' string parameter with no type validation, enum constraints, or format guidance. Descriptions are generic delegation statements (18-24 chars) that fail to explain WHEN to use each tool, what distinguishes them, or what output format to expect. No output schemas documented. Tools appear to be agent-to-agent delegation wrappers, but the interface treats them as black boxes, LLMs cannot reason about which specialist to invoke or how to structure the goal. No error handling guidance, no pagination, no idempotency markers. Schema definitions are minimal (only 'goal' with description, no type constraints). This is a delegation pattern that should be transparent to the LLM, but the tool definitions provide no transparency.
Delegate a stock question to the inventory specialist.
Delegate a shipment question to the logistics specialist.
Delegate a price question to the pricing specialist.
Delegate a replenishment question to the supplier specialist.
Descriptions are under 20 characters and provide no actionable guidance. 'Delegate a stock question to the inventory specialist' (18 chars) does not explain when to invoke this tool vs others, what format the goal should take, or what the specialist returns.
Input schema for 'goal' parameter lacks type declaration. Schema shows only description; no 'type': 'string' visible in the provided code.
No output schema documented. Tools return plain-text strings, but LLMs have no schema to parse structured results, extract IDs for chaining, or validate response format.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
Tool names use 'ask_' prefix, which is vague. 'ask_inventory' does not clearly convey the action (delegate, query, invoke specialist). Verb_noun pattern (e.g., 'invoke_inventory_specialist' or 'delegate_to_inventory') would be clearer.
No error handling guidance. If a specialist is unavailable or returns an error, the tool provides no recovery path. LLM cannot distinguish retryable vs fatal failures.