Capability-aware TypeScript client for any UCP-compliant server. Provides agent tools for e-commerce operations including checkout, order management, catalog search, cart, and identity linking.
UCP Client exposes 18 e-commerce tools with consistent naming (verb_noun pattern) and complete JSON schemas. All tools have descriptions and input parameters are typed. However, descriptions are brief (avg ~80 chars, below the 194-char baseline), lack actionable context for LLM selection, and omit critical details like prerequisites, return structures, and error recovery guidance. Parameter descriptions exist but are minimal. No output schemas documented. Error handling is absent, tools do not guide recovery or categorize failures. Security considerations (secrets, permissions, audit) are not visible in tool definitions.
Apply a discount code or promotion to a checkout session.
Cancel a checkout session. The session cannot be used after cancellation.
Complete a checkout session with payment. Places the order. Returns the completed session with order ID.
Create a new shopping cart.
Create a new checkout session with line items. Returns a session with an ID to use in subsequent calls.
Get the current state of a shopping cart.
Descriptions are too brief (avg ~80 chars vs 194-char baseline). Most lack context for LLM selection, prerequisites, or when to use vs similar tools. E.g., 'Set the fulfillment method' does not explain when to call it or what happens next.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., what does create_checkout return? Is it a session object with an ID?). Breaks tool chaining.
No error handling guidance. Tools do not indicate what errors are retryable, user-fixable, or fatal. E.g., complete_checkout (IRREVERSIBLE) has no recovery hints if payment fails.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Get the current state of a checkout session, including status, totals, and available options.
Get the details of an order by ID.
Link a buyer identity to an external account (OAuth flow).
Look up a product by ID to get detailed information.
Remove a discount code or promotion from a checkout session.
Search the product catalog by query, filters, and pagination.
Select a shipping destination for a checkout session.
Select a fulfillment option (e.g., standard shipping, express shipping) for a checkout session.
Set the fulfillment method for a checkout (e.g., "shipping" or "pickup").
Unlink a buyer identity from an external account.
Update a shopping cart with new line items.
Update a checkout session with buyer information, shipping address, or payment details.
Parameter descriptions are minimal. E.g., 'Discount code to apply' does not explain format, length, or where to find valid codes. LLMs cannot validate input before calling.
Irreversible operations (complete_checkout) lack confirmation or dry-run support. Agents cannot preview consequences before committing payment.