CryptoStruct

official

Remote MCP server for historical crypto & prediction-market data: search ~500K instruments, live market stats (OHLC, turnover, spreads, depth, slippage) and tick-data purchase. Keyless for catalog & stats; optional OAuth for account tools. Endpoint: https://cryptostruct.com/mcp

What can you do with CryptoStruct MCP?

  • Search the instrument catalog — Ask for instruments across 35 venues, including prediction markets, using search_instruments with filters like class=prediction.
  • Get live market snapshots — Request current OHLC, VWAP, spreads, and top-of-book depth for any instrument via get_market_snapshot.
  • Analyze historical aggregates — Pull daily, hourly, or minute-level stats (e.g., get_daily_stats, get_hourly_stats) for event studies or trend analysis.
  • Check archive coverage — Verify day-level data availability for an instrument back to 2021 using get_coverage.
  • Preview and start purchases — Use preview_checkout to dry-run a data purchase, then create_checkout to get a Stripe URL or trigger credit approval.
  • Manage your account — List past orders, retrieve purchased file downloads, and check subscription or credit balance with list_my_orders and get_my_subscription.

Documentation

CryptoStruct MCP Server

First-party remote MCP server for cryptostruct.com — historical crypto and prediction-market data (tick-level daily files from 35 venues including Kalshi and Polymarket) plus live market statistics, built for traders, quants and AI agents.

This repository documents the hosted server. There is nothing to install or run from here — the server is operated by CryptoStruct.

No API key required — the catalog, market stats and the guest purchase flow work keyless. Signing in via OAuth (optional) links your CryptoStruct account for order history, purchased-file downloads and paying with your credits — always with your consent (see Buying data).

Quick start

Claude Code

claude mcp add --transport http cryptostruct https://cryptostruct.com/mcp
# or, to enable account sign-in via OAuth:
claude mcp add --transport http cryptostruct https://cryptostruct.com/mcp/auth

Cursor / generic JSON config

{
  "mcpServers": {
    "cryptostruct": {
      "url": "https://cryptostruct.com/mcp"
    }
  }
}

claude.ai — Settings → Connectors → Add custom connector → https://cryptostruct.com/mcp/auth

What you can do

  • Catalog & discovery: search ~500K instruments across 35 venues (spot, perpetuals, futures, options, prediction markets), day-level archive coverage back to 2021-02-08.
  • Prediction markets: Kalshi and Polymarket event contracts are first-class instruments — searchable in the catalog (class=prediction), with coverage, live snapshots and minute/daily aggregates like any crypto instrument. Contracts quote 0..1 (USD); turnover comes USD-normalized.
  • Market statistics: live snapshots and minute/hourly/daily aggregates — OHLC, VWAP, trades, turnover, spreads, top-of-book depth; slippage / market-impact curves.
  • Buying data: raw tick files — crypto and prediction-market instruments alike — cost €1 per instrument-day. Card payments: the server hands off a Stripe checkout URL — payment happens in the user's browser, the server never touches card details. Free full-day sample files are available without any purchase.
  • Credits & agent consent (OAuth sign-in): account credits are never spent by an agent without the user's consent. By default create_checkout answers approval_required with an approval page where the user confirms (pay with credits or by card) or discards the order; unapproved orders expire after 24 h with nothing charged. Users can opt into autonomous purchases within limits (per-order and rolling 24-hour caps) at https://cryptostruct.com/account/agents — then fully credit-covered orders complete immediately; anything above the caps comes back for approval. The agent may additionally pass its own max_credit_cents. preview_checkout tells the agent in advance which of the three outcomes to expect. These settings can only be changed on the website, never through an agent's token.
  • Account tools (OAuth sign-in): list orders, get download URLs for purchased files, check subscription, credit balance and agent-spending settings.

Tools

ToolDescriptionTier
get_data_dictionaryData dictionary & product reference (file format, units, pricing)free
search_instrumentsSearch the instrument catalogfree
list_venuesList covered venuesfree
get_instrumentInstrument detailsfree
get_coverageDay-level archive coverage for an instrumentfree
list_sample_filesFree full-day sample filesfree
get_price_quotePrice quote for a set of data filesfree
get_market_snapshotLive market snapshot (60 min + 24 h)free
get_daily_statsDaily aggregates (30d–180d free; 365d/max Premium)free
get_hourly_statsHourly aggregates (7d–90d free; 180d Premium)free
get_slippageSlippage / market-impact curve (1h free; 24h/7d Premium)free
get_top_instrumentsTop instruments by live 24 h turnoverfree
get_movers24 h movers (gainers & losers)free
get_minutes_rangeHistorical minute series for event studiespremium
create_checkoutStart a purchase — Stripe URL (card) or approval_required / born-paid (credits, per the user's consent settings)commerce
get_checkout_statusPoll a checkout by session_id (card) or order_id (signed-in; credit/approval orders)commerce
get_order_filesList a paid order's files with download URLscommerce
request_file_restoreRestore an archived (cold-storage) filecommerce
list_my_ordersMy orderssign-in
get_my_filesMy purchased filessign-in
get_my_subscriptionMy subscription, credit balance & agent-spending settingssign-in
preview_checkoutDry run of a purchase: owned/unavailable files, credit cover, and whether create_checkout will complete, ask for approval, or hand off to Stripesign-in

Tiers: free/commerce work keyless. sign-in requires a verified OAuth sign-in (any account). premium tools/parameters require CryptoStruct Premium (€20/month) — which also unlocks longer stats windows (daily 365d/max, hourly 180d, slippage 24h/7d), larger search limits, a data-quality block in get_market_snapshot, and a 5× call budget. Calls beyond your tier return static AUTH_REQUIRED / PREMIUM_REQUIRED errors with an upgrade URL — never a hard failure.

Rate limits

Weighted per-caller budget: 120 units/min keyless (per IP) or per signed-in user, 600 units/min for Premium. Cheap catalog reads cost 1 unit, upstream-heavy stats 3–5, checkout 10. On RATE_LIMITED errors, back off for the indicated number of seconds.

Conventions

  • All file sizes are compressed (zstd) bytes; market values are USD; sale prices are EUR.
  • Minute-granularity data is retained ~30 days upstream; hourly/daily aggregates reach back further.
  • Tick files are full-day JSON-lines captures (orderbook snapshots & updates, trades, liquidations, funding, mark/index incl. options greeks). Format reference: Market Data Protocol.

Related

Support

Questions or issues: https://cryptostruct.com/contact