A Model Context Protocol server for order management operations, providing tools for order creation, retrieval, status updates, revenue statistics, and audit logging with role-based authorization.
Server has 14 tools with mixed quality. Naming is mostly verb-based (get_, list_, create_, search_, cancel_) but inconsistent (whoami, GetAuditLogs, SearchOrders use non-standard casing). Descriptions vary widely: some are detailed (list_orders, get_order), others are vague or in Vietnamese (whoami, GetAuditLogs). Parameter schemas are present for most tools but lack consistency in format and completeness. Output schemas are not documented. Error handling is minimal, no recovery guidance visible. Authorization checks exist but are not reflected in tool descriptions. Pagination is implemented but not uniformly. Overall, this is a functional but unpolished server with significant gaps in LLM-facing documentation.
Truy vấn lịch sử hành động trong hệ thống
Get contact information for support.
Search orders with flexible filters. All parameters optional. Returns id, customerEmail, status, totalAmount, currency, itemCount, and createdAt.
Cancel an order with an audit reason. Only Manager role with Orders.Cancel permission can cancel orders.
Create a new order. Requires customerId and items. ShippingAddress remains optional for compatibility with the existing place order flow.
Retrieve a single order by its unique identifier. Returns order details including status, customer info, line items, and total. Use this when you need full details of a specific order. For searching multiple orders, use list_orders or search_orders_by_customer instead.
Inconsistent tool naming convention: whoami, GetAuditLogs, SearchOrders use PascalCase or non-verb-first patterns, breaking LLM parsing. Standard is snake_case verb_noun (get_audit_logs, search_orders).
Descriptions in Vietnamese (whoami, GetAuditLogs) are not LLM-friendly. All descriptions must be in English for cross-region agent compatibility.
create_order and place_order both exist with overlapping functionality. Tool composition rule violated, LLM cannot disambiguate. Consolidate into one canonical tool.
Output schemas not documented. LLMs cannot plan downstream calls or extract required fields (e.g., what does list_orders return? Does it include customer_id for chaining?). Add return type documentation to all tools.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Get order statistics for a date range, including total orders, total items, total revenue, and counts by status.
Retrieve a paginated list of orders with optional status filtering. Returns order summaries including order number, customer, total, status, and item count. Use this to browse orders with pagination support. For a single order's full details, use get_order instead.
Get revenue statistics in a date range. groupBy supports day, month, or currency. Cancelled orders are excluded.
Retrieve a paginated list of orders with optional filters for status, created date range, and customerId.
Create a new order in the system. Requires a valid customer ID and at least one order item. Returns the created order ID on success. Validates product availability and customer existence before creating.
Search orders by customer name or email with pagination. Use this when the caller knows a customer identifier string but not an order ID.
Update order status for supported workflow transitions. Cancelled is intentionally excluded; use cancel_order for cancellation with audit reason.
Debug only: trả về thông tin user hiện tại. Xóa trước production.
Authorization requirements (RequiresRole, RequiresClaim) are enforced in code but not documented in tool descriptions. LLMs cannot know which tools require Manager role or Orders.Cancel permission, leading to failed calls.