Real-time crypto intelligence API with x402 micropayments. Exposes funding rates, carry trade signals, cross-exchange divergences, Bittensor subnet yields, and XRPL pool data. Free endpoints for status and extremes; paid endpoints ($0.01 USDC each) for detailed analysis.
CryptoSignals402 shows mixed quality. All 9 tools have explicit registrations with descriptions and input schemas in mcp_server.py, which is positive. However, several critical issues undermine production readiness: (1) Most tools have NO parameters despite complex operations (get_funding_all, get_divergence, get_opportunities, get_bittensor_subnets, get_xrpl_pools accept empty objects), which violates the principle that parameters control behavior and guide LLM reasoning. (2) Parameter descriptions are minimal or missing constraint details (get_coin_data.hours lacks minimum/maximum constraints despite range claim '1-168'). (3) Output schemas are completely undocumented, no return type specifications visible in the tool registry, forcing LLMs to call blindly without knowing what data structure to expect. (4) Error handling is basic (generic 'error' field in responses, some context for x402 payment failures) but lacks recovery guidance for common failure modes. (5) No tool annotations (readOnlyHint, destructiveHint, idempotentHint), despite tools performing state-modifying payment transactions. Tool names follow verb_noun convention well (all 'get_*'), descriptions are reasonably detailed (120-200 chars, within production range p10=34, p90=392), and the free/paid segmentation is clear.
Get Bittensor subnet yield rankings — APY, emissions, liquidity, and composite scores for all 129+ subnets. Costs $0.01 USDC via x402.
Get professional carry trade signals with multi-venue confirmation scores, risk classification (LOW/MEDIUM/HIGH), and estimated APR. Costs $0.01 USDC via x402 on Base Sepolia.
Get 24-hour funding rate history for a specific coin across all venues, with mean rate, max rate, and persistence stats. Costs $0.01 USDC via x402.
Get cross-exchange funding rate divergences for delta-neutral arbitrage strategies. Shows spread, APR, and suggested strategy. Costs $0.01 USDC via x402.
Get the complete funding rate dataset — all 229 coins across 3 exchanges (Hyperliquid, Binance, Bybit) with rate per 8h and estimated APR. Costs $0.01 USDC via x402.
Get the top 5 most extreme funding rates across Hyperliquid, Binance, and Bybit right now. Shows coin, venue, rate per 8h, and estimated APR. Free — no payment needed.
Output schemas are completely undocumented. No return type specifications visible in tool registry, LLMs cannot predict response structure, anticipate required fields for downstream composition, or identify pagination behavior.
Six tools (get_funding_all, get_divergence, get_opportunities, get_bittensor_subnets, get_xrpl_pools, get_carry_signals) accept zero input parameters despite performing complex data retrieval. LLMs cannot customize queries, apply filters, or control result scope. Empty input schemas indicate either incomplete tool design or missing filter/pagination parameters.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 53 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 51 | 2024-11-05+ | v1 |
Get all current funding rate opportunities ranked by APR — includes extreme rates and cross-exchange arb. Costs $0.01 USDC via x402.
Get CryptoSignals402 API health, tracked coins count, exchange count, history depth, and last update time. Free — no payment needed.
Get XRPL AMM top pools by health score — TVL, trading fees, estimated APY, and LP stats. Costs $0.01 USDC via x402.
Parameter constraints are documented in descriptions but not formalized in schema. get_coin_data.hours claims '1-168' range but has no minumum/maximum in JSON Schema. LLMs cannot validate inputs early, and will not parse constraint text reliably, expect invalid parameters like hours=500 or hours=0 to reach the API.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear operational intent. Paid tools execute x402 payment transactions (state-modifying, non-retryable). LLMs cannot reason about safety or retry behavior without annotations. At minimum, paid tools should carry destructiveHint or idempotentHint to signal retry semantics.
Error responses lack recovery guidance. Paid endpoints return 'x402 payment failed: {e}' with setup hints, but most read-only tools just return bare {'error': str(e)} or network exceptions. LLMs receive no guidance on whether to retry, call a different tool, or ask the user.
No pagination support visible in any tool. Tools that return 'all 229 coins' or 'all 129+ subnets' have no limit/offset or cursor parameters, risking context explosion if results are uncapped. get_funding_all and get_opportunities descriptions suggest large result sets but provide no pagination mechanism.