A UCP-compliant merchant server implementing Google's Universal Commerce Protocol with product catalog, checkout state machine, AP2 payment mandates, order lifecycle, and MCP tool bindings.
Strong foundation with 8 well-named tools following verb_noun convention (search_, get_, create_, update_, apply_, select_, complete_). All tools have descriptions (avg 95 chars, within 10-1024 baseline). Input schemas are complete with proper JSON Schema structure, types, and enums. However, output schemas are entirely undocumented, LLMs cannot predict response structure for downstream chaining. Parameter descriptions are present but sparse (avg 45 chars vs 72 baseline). Missing error handling guidance and recovery paths. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classification. Checkout workflow tools lack dependency documentation (e.g., 'create_checkout must precede update_checkout').
Apply a discount/coupon code to a checkout session.
Complete a checkout session and create an order. The session must have items, a shipping address, and a shipping method selected.
Create a new checkout session with one or more products. Returns the session ID needed for subsequent checkout operations.
Get the current status and details of an order.
Get detailed information about a specific product by its ID.
Search the TechVault Electronics product catalog. Supports full-text search, category/brand/price filters, and sorting.
Select a shipping method for a checkout session. Available options: shipping_standard ($5.99), shipping_express ($12.99), shipping_next_day ($24.99), shipping_free (orders over $100).
Output schemas completely undocumented. No response structure defined for any tool. LLMs cannot predict what fields to expect (e.g., does search_products return 'products' or 'items'? Does create_checkout return 'session_id' or 'checkoutId'?). This breaks tool chaining and forces agents to guess field names.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Tools are classified as READ_ONLY or WRITE in metadata but not exposed to LLM via schema. Agents cannot distinguish safe retry operations from irreversible ones without explicit hints.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 68 | <=2025-11-25 | v2 |
Update a checkout session: add/remove items, set shipping address, or select a shipping method.
Checkout workflow dependencies undocumented. No description states that create_checkout must be called before update_checkout, or that complete_checkout requires items + shipping_address + shipping_method. Agents may attempt invalid sequences.
Error handling absent. No guidance on what errors tools return, how to recover, or what to do next. E.g., if complete_checkout fails due to missing shipping address, the agent has no recovery path.
Parameter descriptions are minimal (avg 45 chars vs 72 baseline). E.g., 'discount_code' in apply_discount lacks format guidance ('e.g., SAVE10, SAVE20, FREESHIP, WELCOME' is in tool description, not param description). Agents cannot validate inputs before calling.