MCP server for Solidus e-commerce API integration, providing tools to query products, taxonomies, and manage shopping carts
Liquidus exposes 7 tools with basic descriptions and minimal parameter documentation. Tool names follow verb_noun convention (get_product, search_products, create_order, add_line_item), which is good. However, descriptions are terse (10-50 chars), parameter descriptions are sparse or missing entirely, and input schemas lack type information beyond basic string/integer declarations. No output schemas are documented. Error handling is absent, no guidance on retryability, user-fixable vs fatal errors, or recovery paths. The mock server (mocks/msw/server.mjs) shows HTTP handlers but the actual MCP server implementation is not visible in the provided source, making it impossible to verify tool registration, schema completeness, or error responses. Tools like add_line_item and create_order perform state-modifying operations but lack any confirmation or dry-run pattern.
Add a product variant to the current shopping cart with specified quantity
Create a new shopping cart/order session, returning a session token for subsequent cart operations
Retrieve the current shopping cart/order, creating a fresh one if no X-Spree-Order-Token is provided
Retrieve a specific order by order number, supporting historical orders and current session carts
Retrieve a single product by ID from the Solidus catalog
List all product taxonomies and their taxons from the Solidus catalog
Search products by query string, with optional filtering and pagination
Parameter descriptions are missing or trivial. 'token' is described as 'Optional X-Spree-Order-Token header value' but does not explain what a token is, how to obtain one, or when it is required vs optional. LLMs cannot infer parameter semantics from names alone.
No output schemas documented. Tools return JSON but the structure is not specified. LLMs cannot plan downstream calls or extract required fields (e.g., order token, product IDs) without seeing the response shape.
State-modifying tools (create_order, add_line_item) lack error handling, confirmation patterns, or dry-run support. No guidance on retryability or recovery. An agent could accidentally create duplicate orders or add items twice without knowing.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
Tool descriptions are under 50 characters and lack context. 'Retrieve a single product by ID' does not explain when to use this vs search_products, what fields are returned, or what happens if the ID is invalid.
MCP server implementation not visible in source. Only mock HTTP handlers (mocks/msw/server.mjs) and CLI demo (demos/demo-cli.sh) are shown. Cannot verify actual tool registration, schema validation, or MCP protocol compliance. Tool definitions may be inferred rather than explicitly registered.