MCP server providing peer-to-peer transaction escrow and fraud protection for marketplace transactions with milestone-based fund release and inspection windows
Critical failures across all dimensions. The single tool 'execute_skill_action' has a minimal description (58 chars, below the 10-1024 baseline), lacks output schema documentation entirely, and the input schema is present but parameters lack descriptions. The mcp_server.py file shows only a stub that prints JSON and does not actually implement MCP protocol message handling. Tool definitions appear inferred from client.py rather than explicitly registered via proper MCP mechanisms. No error handling, no validation, no security considerations visible.
Execute peer-to-peer transaction escrow and fraud shield protection action
No output schema documented. The tool returns a complex object with fields like 'escrow_shield_id', 'buyer_funds_locked_in_escrow', 'inspection_window_hours', etc., but the MCP definition does not specify the return type or field structure. LLMs cannot plan downstream calls or extract data reliably.
Input parameters lack descriptions. 'transaction_amount_gbp', 'item_category', and 'handover_type' have no descriptions explaining what values are valid, what constraints apply, or what happens when they are omitted. LLMs cannot infer parameter meaning from names alone.
Tool description is too short (58 chars) and lacks context. It does not explain WHEN to use this tool, what prerequisites exist, or what the agent should expect. The description 'Execute peer-to-peer transaction escrow and fraud shield protection action' is generic and does not guide LLM selection.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 23 | 2026-07-28+ | v2 |
No error handling or recovery guidance. The tool has no documented error cases, no validation rules, and no guidance for what the LLM should do if a call fails. A bare error response gives the agent nothing to act on.
Tool definitions are inferred from client.py, not explicitly registered via MCP protocol. The mcp_server.py stub does not implement proper MCP message handling, tool registration, or request/response serialization.