Calculates revenue-maximizing multi-product bundle pricing and AOV lift
Single tool with critical definition gaps. Tool name 'maximize_bundle_pricing' lacks action verb prefix (should be 'calculate_' or 'optimize_'). Description is adequate (89 chars, within 10-1024 range) but lacks WHEN/WHY guidance. Input schema present but incomplete: candidate_attachments array items lack individual property descriptions; anchor_product and anchor_price descriptions are minimal (11-27 chars). No output schema documented, LLM cannot predict response structure. Tool implementation ignores all input parameters (client.maximize_bundle_pricing() called with no args), making parameters decorative. No error handling, validation, or recovery guidance.
Calculates revenue-maximizing multi-product bundle pricing and AOV lift.
Tool name lacks action verb. 'maximize_bundle_pricing' should start with 'calculate_', 'optimize_', or 'compute_' to signal intent to LLM.
Input parameters are ignored by implementation. mcp_server.py calls client.maximize_bundle_pricing() with no arguments, rendering anchor_product, anchor_price, and candidate_attachments decorative. LLM cannot control tool behavior.
No output schema documented. Response structure (bundle_id, anchor_product, bundled_items_count, etc.) is invisible to LLM. Cannot plan downstream tool calls or extract fields reliably.
Candidate attachments array items lack property descriptions. Schema defines name, price, affinity_score but provides no guidance on format, range, or constraints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 30 | 2026-07-28+ | v2 |
No error handling or validation. Tool silently defaults to hardcoded attachments if none provided. No guidance on invalid inputs (negative prices, affinity_score > 1, empty anchor_product).