An MCP server that streams real-time cryptocurrency liquidation events from Binance
Single tool with partial schema and moderate description. The tool name follows verb_noun convention ('get_latest_liquidations'), but the schema is incomplete, parameter descriptions lack constraint details, and output format is unstructured markdown rather than typed JSON. The tool description is adequate (194 chars, within baseline), but parameter documentation is sparse. No output schema defined. Error handling is minimal. The server exposes an internal Context parameter to the tool definition, which is an implementation leak.
Retrieve the latest liquidation events from Binance in a table format. Args: limit (int): The maximum number of liquidation events to return (default: 10, max: 1000). ctx (Context, optional): The MCP context for logging and server interaction. Defaults to None. Returns: str: A Markdown table containing the latest liquidation events, sorted by timestamp in descending order.
No output schema defined. Tool returns a markdown string, but LLMs need structured field documentation to plan downstream steps and extract data reliably. Returns unstructured markdown table instead of JSON-typed response.
Parameter 'limit' lacks constraint validation detail in description. Description says 'max: 1000' but does not specify minimum, whether it is inclusive/exclusive, or what happens if the value exceeds bounds. No enum or constraint statement in schema.
Tool definition exposes internal MCP Context parameter ('ctx: Context | None') to the schema. This is an implementation detail that should not be visible to LLMs. The Context object is framework-specific and not a user-facing parameter.
No error recovery guidance. If no liquidations are available, the tool returns 'No liquidation events available.' but does not suggest what to do next (e.g., 'Try again in a few seconds' or 'Check server connectivity').
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | <=2025-11-25 | v2 |
| 2026-03-09 | D | 56 | - | v1 |
Timestamps returned as formatted time strings (HH:MM:SS) lose date and full context. LLMs cannot reason about age of data or sort by absolute time across days. Should return ISO 8601 timestamp as structured field.