MCP server that brokers multi-merchant shopping cart consolidation and unified checkout sessions for agentic commerce workflows
This server has severe definition quality issues. Tool 1 (execute_skill_action) has a generic description and no visible input schema in the source code. Tool 2 (broker_multi_merchant_cart) has a reasonable description and partial schema visible in the evaluation metadata, but the actual tool registration is not visible in mcp_server.py, only a hardcoded client class exists in client.py. The mcp_server.py file does not register tools via the MCP protocol; it merely prints a JSON status message. No tool definitions follow MCP registration patterns. Parameter descriptions are minimal or absent. Output schemas are not documented. Error handling is absent. The server appears to be a mock/stub implementation rather than a functional MCP server.
Broker a multi-merchant shopping cart by consolidating items from multiple merchants and creating a unified checkout session
Execute a skill action for the universal agentic cart checkout broker
No visible tool registration in mcp_server.py. The server prints a static JSON status message but does not implement MCP tool registration, request handling, or protocol handshake. Tools are defined only in a standalone client class, not exposed via MCP.
execute_skill_action has a generic, uninformative description ('Execute a skill action for the universal agentic cart checkout broker'). It does not explain what action, when to call it, or what it returns. No input schema is visible in the source code.
No input schema visible for execute_skill_action in mcp_server.py. The tool is mentioned in the status output but has no parameter definitions, types, or constraints.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 27 | 2026-07-28+ | v2 |
broker_multi_merchant_cart schema is incomplete. The items_manifest array items lack required/optional markers, and the response schema is not documented. Output fields (federated_cart_id, merchants_involved_count, etc.) are hardcoded in the client but not declared in a tool definition.
No error handling or recovery guidance. The client returns a hardcoded success response; there is no validation, error classification, or actionable error messages for the LLM.