Read-only MCP discovery package for Blocksize market data, starter credits, state data, and x402 HTTP endpoints.
This is a read-only discovery server with 5 well-named tools. All tools have descriptions and input schemas are visible in the source code. However, output schemas are not documented, the tools return JSON strings via _as_json() with no formal schema declaration. Parameter descriptions are present and generally clear. The server lacks error handling guidance (no recovery suggestions in error messages), and does not include tool annotations (readOnlyHint, destructiveHint, etc.). All tools are correctly named with action verbs (search_, list_, get_) and are appropriately scoped to read-only operations. The main gaps are: (1) missing output schema documentation, (2) no error recovery guidance, and (3) no tool annotations despite the tools being uniformly read-only.
Build a paid x402 HTTP endpoint URL without calling it or starting payment.
Return Blocksize pricing, starter-credit positioning, and settlement guidance without starting payment.
Inspect Blocksize raw data and premium workflow products, including 50 starter live-data credits, state-data products, credit costs, endpoint templates, and upgrade path.
List supported instruments for one Blocksize service. Free and read-only.
Search supported Blocksize instruments. Free, read-only, and does not fetch live prices.
Output schemas not documented. All tools return JSON strings via _as_json(payload) with no formal schema specification. LLMs cannot predict response structure, field names, or types, forcing them to parse unstructured JSON at runtime.
No tool annotations. All 5 tools are read-only, but readOnlyHint annotation is not declared in any tool definition. This forces downstream clients to re-infer safety properties.
No error recovery guidance. The _get_json() helper calls response.raise_for_status() and raises ValueError, but the tools do not provide actionable error messages. An LLM hitting a 404 or timeout receives no guidance on what to try next.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
Parameter descriptions lack constraint detail. E.g., 'asset_class' enum is documented, but the search 'limit' parameter (hardcoded to 50) is not exposed as a parameter and not explained in the response. Agents cannot control result count.
No pagination or result-count information. search_pairs hardcodes limit=50 but does not return a total_matches or next_cursor for agents to know if more results exist or how to fetch them. Large result sets could be silently truncated.