CRYPTYX Docs

MCP Server

Sharpen your edge. Feed your agent the CRYPTYX quant engine. Institutional-grade quantitative intelligence for digital assets. Ask about any coin in plain English, or go all the way down: scan the market, build and backtest your own strategies. Connect any MCP-compatible agent (Claude, Grok, ChatGPT, Cursor and others) to 37 tools.

Install (30 seconds)

Paste this URL into your MCP client's custom-connector flow. OAuth handles auth — no API keys, no config file editing, revocable per-app.

url
https://mcp.cryptyx.ai/api/mcp

Full step-by-step for Claude.ai, Cursor, and other clients at cryptyx.ai/mcp. On first connect you'll be redirected to a CRYPTYX consent screen — grant the scopes you want (read / trigger / execute) and you're live.

Start with a goal

Paste any of these into your agent after connecting. You set the rules; CRYPTYX checks them and shows what followed before, with sample sizes and base rates.

Accumulate

My rule: add to ETH only when it's statistically oversold vs its 1-year history. Where is it now, and what followed the last times?

Take profit / distribute into strength

Is BTC stretched on the 90- and 180-day horizons? What happened after similar readings?

Trade short-term

Which of ETH, SOL and DOGE have short-term momentum, and what changed this week?

Catch statistically significant shifts

Which coins just had a statistically significant volatility expansion or trend breakout?

Hold long-term positions

Where are BTC and ETH on the 90-, 180- and 365-day horizons?

Build and test strategies

Find coins that are oversold vs their 90-day history with an improving trend, then backtest that combination.

Environment variables (legacy stdio only)

The OAuth path above needs no env vars. These apply only to the legacy stdio server (see "Legacy install" below).

VariableRequiredDescription
CRYPTYX_API_KEYYesYour CRYPTYX API key (cx_* prefix)
CRYPTYX_API_URLNoOverride base URL (default: https://cryptyx.ai)

Legacy install — stdio server (deprecated 2026-12-31)

For clients that don't yet support OAuth MCP (older Cursor releases, some enterprise agent platforms). Existing cx_* API keys keep working indefinitely — no forced migration.

Claude Desktop (JSON config)
json
{
  "mcpServers": {
    "cryptyx": {
      "command": "npx",
      "args": ["-y", "@cryptyx/mcp-server"],
      "env": {
        "CRYPTYX_API_KEY": "cx_your_api_key_here"
      }
    }
  }
}
Claude Code (CLI install)
bash
claude mcp add cryptyx -- npx -y @cryptyx/mcp-server

Then: export CRYPTYX_API_KEY=cx_your_key

Direct HTTP with API key (mcp-remote bridge)
text
Endpoint:  https://mcp.cryptyx.ai/api/mcp
Transport: Streamable HTTP (JSON-RPC 2.0 over POST)
Auth:      Authorization: Bearer cx_your_key

Same 37 tools as the OAuth path. Use this if you want HTTP without OAuth — API-key auth still supported alongside OAuth on the same endpoint.

CLI (legacy, deprecated)

The same package ships a human-facing CLI. The tools are available as terminal commands with table formatting, colored output, and JSON export.

bash
# Install globally (or use npx cryptyx)
npm install -g @cryptyx/mcp-server

# Save your API key
cryptyx config set-key cx_your_api_key

# Full state snapshot
cryptyx snapshot

# Factor scores for an asset
cryptyx factors BTC

# Top signals by information coefficient
cryptyx signals top

# Backtest a signal
cryptyx signals backtest TR_MOMO_CONT_14D --from 2025-04-20 --to 2026-04-20

# Raw JSON output (pipe to jq, scripts, cron)
cryptyx market --json

Run cryptyx --help for the full command list. Every command supports --json, --api-key, and --api-url flags.

Programmatic (TypeScript)

typescript
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "npx",
  args: ["@cryptyx/mcp-server"],
  env: { CRYPTYX_API_KEY: process.env.CRYPTYX_API_KEY! },
});

const client = new Client({ name: "my-agent", version: "1.0.0" });
await client.connect(transport);

// List available tools
const { tools } = await client.listTools();
console.log(tools.map(t => t.name));

// Call a tool
const result = await client.callTool({
  name: "get_market_snapshot",
  arguments: { assets: "BTC,ETH,SOL" },
});
console.log(result.content);

Architecture

text
┌──────────────┐     stdio      ┌────────────────────┐    HTTPS     ┌──────────────┐
│              │ ◄──────────► │                    │ ──────────► │              │
│  AI Agent    │               │  @cryptyx/         │              │  CRYPTYX     │
│  (Claude,    │  MCP Protocol │  mcp-server        │  REST API    │  REST API    │
│   LangChain, │               │                    │              │              │
│   custom)    │               │  MCP tools         │              │  Neon        │
│              │               │  stdio transport   │              │  Postgres    │
└──────────────┘               └────────────────────┘              └──────────────┘

Tool Catalog (37 tools)

Coin Reads
get_coin_studyFree tier

Tactical (7-14 day) and structural (60-180 day) read for one coin, with each reading's history and the setups firing or next to fire.

params: asset (required), asof_day?

get_heat_checkFree tier

Quick scan across one or more coins: how many of three gauges (crowd, leverage, volatility) are running hot against each coin's own history.

params: assets (required), asof_day?, compare_days?

get_notable_readFree tier

What stands out on 1-10 coins: readings furthest from each coin's norm and setups firing or close to firing, with their historical hit rate.

params: assets (required), asof_day?, compare_days?

check_coverageFree tier

Check which coins CRYPTYX covers and which gauges have data for each.

params: assets (required)

get_data_livenessFree tier

When each data source (prices, gauges, setup evaluations) last updated and whether it is current.

Market Data
get_market_snapshot

Asset universe with composite scores, returns, volatility, and rankings.

params: assets?, mode?, days?

get_market_pulse

Factor breadth and regime analysis across the entire asset universe.

params: days?, horizons?, classes?

get_price_history

Daily OHLCV candle data for backtesting and charting.

params: asset (required), days?

search_assets

List all tracked assets in the CRYPTYX universe with universe tags.

get_live_prices

Latest spot prices for all tracked assets (refreshed every 15 minutes).

get_asset_liquidity

Order book depth — bid/ask USD at 50/100/200bp from mid.

params: asset (required), days?

Factor Intelligence
get_factor_scores

Factor t-scores for an asset across 8 classes (CORR, EFF, FLOW, FUT, OB, OPT, TR, VOL) and multiple horizons.

params: asset (required), mode?, days?, horizons?

get_composite_rankings

Full state snapshot: factor breadth, top/bottom rankings, signal summary, pipeline status.

get_regime_analysis

Regime classification (trending, mean-reverting, volatile) with primary and secondary regime confidence.

params: asset (required), mode?, days?

get_featured_metrics

Top-performing metrics by information coefficient (IC). Returns the 8 highest-conviction metrics with A/B grades.

get_macro_regime

Market-wide macro regime classification across all horizons. Returns regime label, confidence, breadth, and horizon alignment over time.

params: days?, horizon?

get_divergences

Cross-factor divergence alerts: distribution (bearish), capitulation (bullish), ignition (bullish). Detects when factor classes disagree — early warning of regime shifts.

params: horizons?

get_asset_divergences

Cross-factor divergence alerts for one asset, with severity and the two factor classes involved.

params: asset (required)

get_asset_top_predictors

Metrics with the strongest per-asset predictive power for one asset, with asset-specific and cross-asset grades.

params: asset (required), horizon?

Setups & Analogs
get_harness_snapshot

Today's setup catalog state: setups firing, first-ever prints, near-fire watchlist and silent setups, each with backtest evidence.

params: scope?, asof_day?

get_setup_details

Full detail for one setup: composition and thresholds, backtest snapshot at 60/90/180 days, applicable assets and version history.

params: setup_id (required)

get_regime_analog

Pairs an asset's current regime signature with its closest historical analog and related setups; returns nothing on quiet days.

params: asset?, asof_day?

Signal Management
get_signal_triggers

Today's active signal firings across all assets with confidence scores. Atomic and composite.

get_top_signals

Curated top 10 signals ranked by 7d information coefficient (IC). Pre-filtered to A/B health grade with proven predictive power.

get_signal_catalog

All signals with active parameters and 30-day trigger statistics.

get_signal_explanation

Structured explanation of why a signal fired (or didn't) for a specific asset/day.

params: signal_id (required), day (required), asset (required)

backtest_signal

Run a backtest over a date range. Returns per-day trigger counts and aggregate statistics.

params: signal_id (required), from (required), to (required), dryrun?

fork_signal

Create a new inactive parameter variant. Can be backtested without affecting the live signal.

params: signal_id (required), params (required)

simulate_signal

Estimate trigger rate if a threshold were changed. No actual changes made.

params: signal_id (required), threshold_key (required), threshold_value (required), asof_day?

Metric Analysis
analyze_metric

Single-metric z-score backtest with forward returns across 8 horizons. The core factor discovery tool.

params: metric_id (required), asset (required), operator (required), threshold (required)

scan_metric_universe

Scan a metric across all ~200 assets for z-score extremes on the latest day.

params: metric_id (required), operator (required), threshold (required)

analyze_metrics_composite

Multi-factor z-score intersection backtest. Define 2-4 conditions and see when ALL fire simultaneously.

params: asset (required), conditions (required)

Triggers
get_trigger_preset

Evaluate a curated trigger preset on an asset and get its 5-year backtest evidence against the asset's base rate.

params: preset_id?, asset?, horizon?

get_trigger_z_score

Evaluate a single-metric z-score threshold on an asset and get the same backtest evidence.

params: asset (required), metric_id (required), operator (required), threshold (required), horizon?

get_trigger_z_differential

Evaluate a trigger on the difference between two metrics' z-scores, such as a short versus long window of the same factor.

params: asset (required), metric_a_id (required), metric_b_id (required), operator (required), threshold (required), horizon?

evaluate_custom_trigger

Evaluate a custom trigger definition (z-score, z-differential or multi-condition composite) with a live 5-year backtest.

params: asset (required), definition (required), horizon?

Factor Classes

CodeNameDescription
CORRCorrelationCross-asset correlation dynamics
EFFEfficiencyMarket efficiency and mean reversion
FLOWFlowCapital flow and fund movement
FUTFuturesDerivatives positioning and sentiment
OBOrder BookDepth, imbalance, and microstructure
OPTOptionsImplied vol, skew, and term structure
TRTrendPrice momentum and trend strength
VOLVolatilityRealized and implied vol dynamics