Skip to content
Back to SolEnrich

Card snapshot

api.solenrich.com · 2026-07-01 00:48:13 UTC · 00850d76b3ef52ed39db66b32852be85e03b2cd85fa722d75d8f86861698c029

This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.

{
  "protocolVersion": "1.0",
  "name": "SolEnrich",
  "description": "Agent-native onchain intelligence for Solana traders: cross-venue perps funding (Jupiter, Adrena, Flash, Hyperliquid), smart-money & whale tracking, token due-diligence and rug detection, and wallet risk scoring. Pay-per-call via x402 (USDC) or Stripe \u2014 JSON for agents, natural-language briefings for LLMs.",
  "url": "https://api.solenrich.com/",
  "supportedInterfaces": [
    {
      "url": "https://api.solenrich.com/",
      "protocolBinding": "HTTP+JSON"
    }
  ],
  "version": "1.0.0",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": true
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/plain"
  ],
  "skills": [
    {
      "id": "enrich-wallet-light",
      "name": "enrich-wallet-light",
      "description": "Light wallet profile with holdings, labels, and risk score",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "enrich-wallet-full",
      "name": "enrich-wallet-full",
      "description": "Full wallet profile with holdings, DeFi positions, labels, risk score, and connected wallets",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "enrich-token-light",
      "name": "enrich-token-light",
      "description": "Token analysis with price, market data, liquidity, and risk flags",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "include_holders": {
            "default": false,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "include_holders",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "enrich-token-full",
      "name": "enrich-token-full",
      "description": "Full token analysis with price, market data, liquidity, risk flags, and top holders",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "include_holders": {
            "default": false,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "include_holders",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "parse-transaction",
      "name": "parse-transaction",
      "description": "Parse and enrich a Solana transaction with type detection, protocol identification, and transfer details",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "minLength": 86,
            "maxLength": 90,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "signature",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "whale-watch",
      "name": "whale-watch",
      "description": "Identify large token holders and track accumulation/distribution patterns",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "threshold_usd": {
            "default": 10000,
            "type": "number",
            "minimum": 100
          },
          "lookback_hours": {
            "default": 24,
            "type": "number",
            "minimum": 1,
            "maximum": 168
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "threshold_usd",
          "lookback_hours",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "batch-enrich",
      "name": "batch-enrich",
      "description": "Enrich multiple wallets or tokens in parallel",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "addresses": {
            "minItems": 1,
            "maxItems": 25,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "wallet",
              "token"
            ]
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "addresses",
          "type",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "wallet-graph",
      "name": "wallet-graph",
      "description": "Map wallet transaction connections and detect suspicious clusters",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": 1,
            "type": "number",
            "minimum": 1,
            "maximum": 2
          },
          "min_interactions": {
            "default": 1,
            "type": "number",
            "minimum": 1
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "min_interactions",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "copy-trade-signals",
      "name": "copy-trade-signals",
      "description": "Analyze wallet trading performance and copyability",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback_days": {
            "default": 30,
            "type": "number",
            "minimum": 1,
            "maximum": 90
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "lookback_days",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "due-diligence",
      "name": "due-diligence",
      "description": "Comprehensive token research briefing with security, whales, and holder analysis",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "compare-tokens",
      "name": "compare-tokens",
      "description": "Compare 2-3 tokens side-by-side: price, liquidity, volatility, holder concentration, risk flags",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mints": {
            "minItems": 2,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            },
            "description": "2-3 token mint addresses to compare"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mints",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "compare-wallets",
      "name": "compare-wallets",
      "description": "Compare 2-3 wallets side-by-side: portfolio value, activity, risk, labels, holdings",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "addresses": {
            "minItems": 2,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            },
            "description": "2-3 wallet addresses to compare"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "addresses",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "token-trend",
      "name": "token-trend",
      "description": "Token trend analysis: price, liquidity, concentration changes over 7/14/30 days with direction indicators",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "wallet-history",
      "name": "wallet-history",
      "description": "Wallet history: portfolio value, balance, risk score changes over 7/14/30 days with position changes",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "portfolio-history",
      "name": "portfolio-history",
      "description": "Full portfolio time-series for a wallet \u2014 daily snapshots of value, balance, holdings, risk, plus summary stats (peak, trough, max drawdown, average, change vs period start). Distinct from wallet-history which returns two-point deltas; this returns the series for charting.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "period": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "period",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-market-trend",
      "name": "perps-market-trend",
      "description": "Jupiter Perps market trend: per-symbol (SOL/BTC/ETH) deltas for mark price, total open interest, long/short skew, utilization, and borrow APR over 7/14/30 days. Direction indicators per metric and per market. Mirror of token-trend for perps markets \u2014 required for regime-detection strategies and any bot that adjusts behavior based on whether the market is growing, stressed, or rebalancing.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "new-tokens",
      "name": "new-tokens",
      "description": "Discover recently launched tokens on Solana with risk scoring and filtering. Returns safest first.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "min_liquidity_usd": {
            "default": 1000,
            "description": "Minimum liquidity in USD to include",
            "type": "number"
          },
          "max_risk_score": {
            "default": 0.8,
            "description": "Maximum risk score (0-1) to include",
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "limit": {
            "default": 10,
            "description": "Number of tokens to return",
            "type": "number",
            "minimum": 1,
            "maximum": 20
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "min_liquidity_usd",
          "max_risk_score",
          "limit",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "protocol-profile",
      "name": "protocol-profile",
      "description": "DeFi protocol analytics: TVL, yield pools, on-chain activity, health signals",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "protocol": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64,
            "description": "Protocol slug (e.g. \"raydium\", \"orca\") or Solana program ID"
          },
          "include_yields": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "protocol",
          "include_yields",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-market-structure",
      "name": "perps-market-structure",
      "description": "Jupiter Perps market structure \u2014 per-market OI, utilization, borrow APR, skew, OI caps, and health flags for SOL/BTC/ETH",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-trader-profile",
      "name": "perps-trader-profile",
      "description": "Multi-venue perps trader profile \u2014 fetches open positions from BOTH Jupiter Perps and Adrena for the wallet. Returns per-position size/leverage/entry/unrealized PnL/risk flags, per-venue breakdown with venue totals, and combined totals across venues. Output includes a `venue` tag on every position and a `by_venue` breakdown alongside combined `totals`. Adrena PnL requires per-collateral mark prices (jitoSOL/WBTC/BONK via Jupiter price API) and is null when unavailable.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "hyperliquid-trader-profile",
      "name": "hyperliquid-trader-profile",
      "description": "Hyperliquid trader profile for an EVM (0x) address. Reads the trader's live perp positions directly from Hyperliquid's public on-chain state: per-position coin, side, leverage, notional, entry, unrealized PnL, distance-to-liquidation, and risk flags (high_leverage, extreme_leverage, approaching_liquidation, losing). Plus account value, directional bias, profile (directional/market-neutral/diversified), weighted leverage, and realized+unrealized PnL over week/month/all-time. Hyperliquid is uniquely transparent \u2014 every position is public \u2014 making this the building block for smart-money tracking.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "pattern": "^0x[a-fA-F0-9]{40}$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "hyperliquid-smart-money",
      "name": "hyperliquid-smart-money",
      "description": "Where Hyperliquid smart money is positioned right now. Scans the HL leaderboard, excludes market-makers/HFT (turnover filter) and dust/mega-funds (account band), keeps only CONSISTENT directional traders (week+month PnL > 0, not a systematic book), then aggregates their live positions into a per-coin consensus signal (long/short trader counts, net notional, bias, conviction) plus a top-trader drill-down ranked by robust month PnL. Pass `market` (e.g. HYPE/BTC/ETH) to focus one coin. NOTE: a positioning signal, not a trade \u2014 consensus is often late/crowded and regime-dependent; use as confluence/risk context, not a standalone entry.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "minLength": 1,
            "maxLength": 12
          },
          "top_traders": {
            "type": "integer",
            "minimum": 1,
            "maximum": 25
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-cross-venue-funding",
      "name": "perps-cross-venue-funding",
      "description": "Cross-venue perps funding rate aggregator. Compares borrow/funding APR + open interest across Solana on-chain venues (Jupiter Perps, Adrena) with cross-chain reference (Hyperliquid, dYdX v4). Returns best entry per side, basis vs Hyperliquid, and arbitrage opportunities.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "include_reference": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "market",
          "include_reference",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-venue-comparison",
      "name": "perps-venue-comparison",
      "description": "Where to trade this market at this size. Compares total entry cost (slippage + fee + first-hour borrow), OI cap headroom, and venue health across Jupiter Perps, Adrena, Hyperliquid, and dYdX v4. Returns rankings + recommendation with warnings.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "size_usd": {
            "type": "number",
            "minimum": 100,
            "maximum": 10000000
          },
          "side": {
            "default": "long",
            "type": "string",
            "enum": [
              "long",
              "short"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "market",
          "size_usd",
          "side",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "perps-basis-signal",
      "name": "perps-basis-signal",
      "description": "Net-yield-after-borrow basis trade scanner. Computes perp mark vs spot price across venues and surfaces actually-earnable yield \u2014 funding APR on reference venues (Hyperliquid, dYdX v4), correctly flagged as not-viable on Solana pool perps (Jupiter, Adrena) which charge borrow on both sides. Returns per-venue trade, filtered opportunities, and best trade.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "asset": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "min_yield_apr_pct": {
            "default": 5,
            "type": "number",
            "minimum": 0,
            "maximum": 100
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "asset",
          "min_yield_apr_pct",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "trending-signals",
      "name": "trending-signals",
      "description": "Orchestrated ranking of trending Solana tokens. Scans DexScreener trending, enriches with token analysis + optional whale-watch flow, and returns a composite-signal ranked list with reasoning. \"What's worth paying attention to right now?\"",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "min_liquidity_usd": {
            "default": 10000,
            "type": "number",
            "minimum": 0
          },
          "max_risk_score": {
            "default": 0.7,
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "include_whale_watch": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "min_liquidity_usd",
          "max_risk_score",
          "limit",
          "include_whale_watch",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "smart-money-flow",
      "name": "smart-money-flow",
      "description": "Orchestrated smart-money intelligence. Scores a seed wallet list via copy-trade metrics, filters to qualifying winners (win rate + trade count), then surfaces tokens they're accumulating and wallet clusters. Pass your own `wallets` array or use our curated default list.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "wallets": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "lookback_days": {
            "default": 14,
            "type": "integer",
            "minimum": 1,
            "maximum": 90
          },
          "min_win_rate": {
            "default": 0.55,
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "top_n_tokens": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "include_graph": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "lookback_days",
          "min_win_rate",
          "top_n_tokens",
          "include_graph",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "query",
      "name": "query",
      "description": "Plain English questions routed to the right enricher. Single-intent questions hit one enricher; compound questions (\"should I buy X?\", \"wallet deep dive on X\", \"what's trending?\") chain 2-3 enrichers in parallel and return a unified briefing.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "question": {
            "type": "string",
            "minLength": 3,
            "maxLength": 500
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "question",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "feed-latest",
      "name": "feed-latest",
      "description": "Daily SolEnrich intelligence brief \u2014 pre-computed ranking of trending Solana tokens with composite signal scoring (liquidity, risk, holder concentration, whale flow). Cached 24h. Pass `since` (ISO 8601) to short-circuit on no-change. Pay-per-poll model \u2014 designed for agents that want recurring signal without orchestration cost.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "since": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "consensus-signal",
      "name": "consensus-signal",
      "description": "Agent attention signal \u2014 what tokens or wallets are being queried by other agents right now. Proprietary data: derived from SolEnrich's own query stream, not market volume. Two modes: pass `address` to get that entity's rank/percentile/trend; omit it to get the top-N most-queried entities. Windows: 1h, 6h, 24h.",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "type": {
            "default": "token",
            "type": "string",
            "enum": [
              "token",
              "wallet"
            ]
          },
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "window": {
            "default": "1h",
            "type": "string",
            "enum": [
              "1h",
              "6h",
              "24h"
            ]
          },
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "type",
          "window",
          "limit",
          "format"
        ],
        "additionalProperties": false
      }
    },
    {
      "id": "check-alerts",
      "name": "check-alerts",
      "description": "Poll-based event detection. Pass a watchlist (tokens + wallets) and a `since` ISO 8601 timestamp; receive alerts fired since that time. Detects: token alerts (price spikes/drops, risk score changes, whale inflow/outflow, holder concentration shifts); spot wallet alerts (portfolio value changes, position additions/removals); and Jupiter Perps alerts per wallet (perp_position_added, perp_position_closed, perp_at_risk, liquidation_approaching, pnl_swing). Stateless: agent owns the `since` cursor. Watchlist capped at 10 tokens + 10 wallets per call. Step 1 of 3 (poll \u2192 SSE \u2192 webhooks).",
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json",
        "text/plain"
      ],
      "streaming": false,
      "x_input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "tokens": {
            "default": [],
            "maxItems": 10,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "wallets": {
            "default": [],
            "maxItems": 10,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "since": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
          },
          "criteria": {
            "default": {},
            "type": "object",
            "properties": {
              "min_price_change_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "min_risk_score_delta": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "min_whale_volume_usd": {
                "type": "number",
                "minimum": 0
              },
              "min_portfolio_change_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 10000
              },
              "min_concentration_shift_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              },
              "perp_max_leverage": {
                "type": "number",
                "minimum": 1,
                "maximum": 100
              },
              "perp_min_pnl_swing_pts": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "perp_liquidation_buffer_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              }
            },
            "additionalProperties": false
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "tokens",
          "wallets",
          "since",
          "criteria",
          "format"
        ],
        "additionalProperties": false
      }
    }
  ],
  "supportsAuthenticatedExtendedCard": false,
  "entrypoints": {
    "enrich-wallet-light": {
      "description": "Light wallet profile with holdings, labels, and risk score",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "enrich-wallet-full": {
      "description": "Full wallet profile with holdings, DeFi positions, labels, risk score, and connected wallets",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "enrich-token-light": {
      "description": "Token analysis with price, market data, liquidity, and risk flags",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "include_holders": {
            "default": false,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "include_holders",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "enrich-token-full": {
      "description": "Full token analysis with price, market data, liquidity, risk flags, and top holders",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "include_holders": {
            "default": false,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "include_holders",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "parse-transaction": {
      "description": "Parse and enrich a Solana transaction with type detection, protocol identification, and transfer details",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "signature": {
            "type": "string",
            "minLength": 86,
            "maxLength": 90,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "signature",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "whale-watch": {
      "description": "Identify large token holders and track accumulation/distribution patterns",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "threshold_usd": {
            "default": 10000,
            "type": "number",
            "minimum": 100
          },
          "lookback_hours": {
            "default": 24,
            "type": "number",
            "minimum": 1,
            "maximum": 168
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "threshold_usd",
          "lookback_hours",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "batch-enrich": {
      "description": "Enrich multiple wallets or tokens in parallel",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "addresses": {
            "minItems": 1,
            "maxItems": 25,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "type": {
            "type": "string",
            "enum": [
              "wallet",
              "token"
            ]
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "addresses",
          "type",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "wallet-graph": {
      "description": "Map wallet transaction connections and detect suspicious clusters",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "depth": {
            "default": 1,
            "type": "number",
            "minimum": 1,
            "maximum": 2
          },
          "min_interactions": {
            "default": 1,
            "type": "number",
            "minimum": 1
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "depth",
          "min_interactions",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "copy-trade-signals": {
      "description": "Analyze wallet trading performance and copyability",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback_days": {
            "default": 30,
            "type": "number",
            "minimum": 1,
            "maximum": 90
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "lookback_days",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "due-diligence": {
      "description": "Comprehensive token research briefing with security, whales, and holder analysis",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "compare-tokens": {
      "description": "Compare 2-3 tokens side-by-side: price, liquidity, volatility, holder concentration, risk flags",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mints": {
            "minItems": 2,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            },
            "description": "2-3 token mint addresses to compare"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mints",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "compare-wallets": {
      "description": "Compare 2-3 wallets side-by-side: portfolio value, activity, risk, labels, holdings",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "addresses": {
            "minItems": 2,
            "maxItems": 3,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            },
            "description": "2-3 wallet addresses to compare"
          },
          "depth": {
            "default": "light",
            "type": "string",
            "enum": [
              "light",
              "full"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "addresses",
          "depth",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "token-trend": {
      "description": "Token trend analysis: price, liquidity, concentration changes over 7/14/30 days with direction indicators",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "mint": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "mint",
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "wallet-history": {
      "description": "Wallet history: portfolio value, balance, risk score changes over 7/14/30 days with position changes",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "portfolio-history": {
      "description": "Full portfolio time-series for a wallet \u2014 daily snapshots of value, balance, holdings, risk, plus summary stats (peak, trough, max drawdown, average, change vs period start). Distinct from wallet-history which returns two-point deltas; this returns the series for charting.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "period": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "period",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-market-trend": {
      "description": "Jupiter Perps market trend: per-symbol (SOL/BTC/ETH) deltas for mark price, total open interest, long/short skew, utilization, and borrow APR over 7/14/30 days. Direction indicators per metric and per market. Mirror of token-trend for perps markets \u2014 required for regime-detection strategies and any bot that adjusts behavior based on whether the market is growing, stressed, or rebalancing.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "lookback": {
            "default": "7d",
            "type": "string",
            "enum": [
              "7d",
              "14d",
              "30d"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "lookback",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "new-tokens": {
      "description": "Discover recently launched tokens on Solana with risk scoring and filtering. Returns safest first.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "min_liquidity_usd": {
            "default": 1000,
            "description": "Minimum liquidity in USD to include",
            "type": "number"
          },
          "max_risk_score": {
            "default": 0.8,
            "description": "Maximum risk score (0-1) to include",
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "limit": {
            "default": 10,
            "description": "Number of tokens to return",
            "type": "number",
            "minimum": 1,
            "maximum": 20
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "min_liquidity_usd",
          "max_risk_score",
          "limit",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "protocol-profile": {
      "description": "DeFi protocol analytics: TVL, yield pools, on-chain activity, health signals",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "protocol": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64,
            "description": "Protocol slug (e.g. \"raydium\", \"orca\") or Solana program ID"
          },
          "include_yields": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "protocol",
          "include_yields",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-market-structure": {
      "description": "Jupiter Perps market structure \u2014 per-market OI, utilization, borrow APR, skew, OI caps, and health flags for SOL/BTC/ETH",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-trader-profile": {
      "description": "Multi-venue perps trader profile \u2014 fetches open positions from BOTH Jupiter Perps and Adrena for the wallet. Returns per-position size/leverage/entry/unrealized PnL/risk flags, per-venue breakdown with venue totals, and combined totals across venues. Output includes a `venue` tag on every position and a `by_venue` breakdown alongside combined `totals`. Adrena PnL requires per-collateral mark prices (jitoSOL/WBTC/BONK via Jupiter price API) and is null when unavailable.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "hyperliquid-trader-profile": {
      "description": "Hyperliquid trader profile for an EVM (0x) address. Reads the trader's live perp positions directly from Hyperliquid's public on-chain state: per-position coin, side, leverage, notional, entry, unrealized PnL, distance-to-liquidation, and risk flags (high_leverage, extreme_leverage, approaching_liquidation, losing). Plus account value, directional bias, profile (directional/market-neutral/diversified), weighted leverage, and realized+unrealized PnL over week/month/all-time. Hyperliquid is uniquely transparent \u2014 every position is public \u2014 making this the building block for smart-money tracking.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "address": {
            "type": "string",
            "pattern": "^0x[a-fA-F0-9]{40}$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "address",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "hyperliquid-smart-money": {
      "description": "Where Hyperliquid smart money is positioned right now. Scans the HL leaderboard, excludes market-makers/HFT (turnover filter) and dust/mega-funds (account band), keeps only CONSISTENT directional traders (week+month PnL > 0, not a systematic book), then aggregates their live positions into a per-coin consensus signal (long/short trader counts, net notional, bias, conviction) plus a top-trader drill-down ranked by robust month PnL. Pass `market` (e.g. HYPE/BTC/ETH) to focus one coin. NOTE: a positioning signal, not a trade \u2014 consensus is often late/crowded and regime-dependent; use as confluence/risk context, not a standalone entry.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "minLength": 1,
            "maxLength": 12
          },
          "top_traders": {
            "type": "integer",
            "minimum": 1,
            "maximum": 25
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-cross-venue-funding": {
      "description": "Cross-venue perps funding rate aggregator. Compares borrow/funding APR + open interest across Solana on-chain venues (Jupiter Perps, Adrena) with cross-chain reference (Hyperliquid, dYdX v4). Returns best entry per side, basis vs Hyperliquid, and arbitrage opportunities.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "include_reference": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "market",
          "include_reference",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-venue-comparison": {
      "description": "Where to trade this market at this size. Compares total entry cost (slippage + fee + first-hour borrow), OI cap headroom, and venue health across Jupiter Perps, Adrena, Hyperliquid, and dYdX v4. Returns rankings + recommendation with warnings.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "market": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "size_usd": {
            "type": "number",
            "minimum": 100,
            "maximum": 10000000
          },
          "side": {
            "default": "long",
            "type": "string",
            "enum": [
              "long",
              "short"
            ]
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "market",
          "size_usd",
          "side",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "perps-basis-signal": {
      "description": "Net-yield-after-borrow basis trade scanner. Computes perp mark vs spot price across venues and surfaces actually-earnable yield \u2014 funding APR on reference venues (Hyperliquid, dYdX v4), correctly flagged as not-viable on Solana pool perps (Jupiter, Adrena) which charge borrow on both sides. Returns per-venue trade, filtered opportunities, and best trade.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "asset": {
            "type": "string",
            "enum": [
              "SOL",
              "BTC",
              "ETH",
              "BONK"
            ]
          },
          "min_yield_apr_pct": {
            "default": 5,
            "type": "number",
            "minimum": 0,
            "maximum": 100
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "asset",
          "min_yield_apr_pct",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "trending-signals": {
      "description": "Orchestrated ranking of trending Solana tokens. Scans DexScreener trending, enriches with token analysis + optional whale-watch flow, and returns a composite-signal ranked list with reasoning. \"What's worth paying attention to right now?\"",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "min_liquidity_usd": {
            "default": 10000,
            "type": "number",
            "minimum": 0
          },
          "max_risk_score": {
            "default": 0.7,
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "include_whale_watch": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "min_liquidity_usd",
          "max_risk_score",
          "limit",
          "include_whale_watch",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "smart-money-flow": {
      "description": "Orchestrated smart-money intelligence. Scores a seed wallet list via copy-trade metrics, filters to qualifying winners (win rate + trade count), then surfaces tokens they're accumulating and wallet clusters. Pass your own `wallets` array or use our curated default list.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "wallets": {
            "maxItems": 30,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "lookback_days": {
            "default": 14,
            "type": "integer",
            "minimum": 1,
            "maximum": 90
          },
          "min_win_rate": {
            "default": 0.55,
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "top_n_tokens": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "include_graph": {
            "default": true,
            "type": "boolean"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "lookback_days",
          "min_win_rate",
          "top_n_tokens",
          "include_graph",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "query": {
      "description": "Plain English questions routed to the right enricher. Single-intent questions hit one enricher; compound questions (\"should I buy X?\", \"wallet deep dive on X\", \"what's trending?\") chain 2-3 enrichers in parallel and return a unified briefing.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "question": {
            "type": "string",
            "minLength": 3,
            "maxLength": 500
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "question",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "feed-latest": {
      "description": "Daily SolEnrich intelligence brief \u2014 pre-computed ranking of trending Solana tokens with composite signal scoring (liquidity, risk, holder concentration, whale flow). Cached 24h. Pass `since` (ISO 8601) to short-circuit on no-change. Pay-per-poll model \u2014 designed for agents that want recurring signal without orchestration cost.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "since": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "format"
        ],
        "additionalProperties": false
      }
    },
    "consensus-signal": {
      "description": "Agent attention signal \u2014 what tokens or wallets are being queried by other agents right now. Proprietary data: derived from SolEnrich's own query stream, not market volume. Two modes: pass `address` to get that entity's rank/percentile/trend; omit it to get the top-N most-queried entities. Windows: 1h, 6h, 24h.",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "type": {
            "default": "token",
            "type": "string",
            "enum": [
              "token",
              "wallet"
            ]
          },
          "address": {
            "type": "string",
            "minLength": 32,
            "maxLength": 44,
            "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
          },
          "window": {
            "default": "1h",
            "type": "string",
            "enum": [
              "1h",
              "6h",
              "24h"
            ]
          },
          "limit": {
            "default": 10,
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "type",
          "window",
          "limit",
          "format"
        ],
        "additionalProperties": false
      }
    },
    "check-alerts": {
      "description": "Poll-based event detection. Pass a watchlist (tokens + wallets) and a `since` ISO 8601 timestamp; receive alerts fired since that time. Detects: token alerts (price spikes/drops, risk score changes, whale inflow/outflow, holder concentration shifts); spot wallet alerts (portfolio value changes, position additions/removals); and Jupiter Perps alerts per wallet (perp_position_added, perp_position_closed, perp_at_risk, liquidation_approaching, pnl_swing). Stateless: agent owns the `since` cursor. Watchlist capped at 10 tokens + 10 wallets per call. Step 1 of 3 (poll \u2192 SSE \u2192 webhooks).",
      "streaming": false,
      "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "tokens": {
            "default": [],
            "maxItems": 10,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "wallets": {
            "default": [],
            "maxItems": 10,
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 32,
              "maxLength": 44,
              "pattern": "^[1-9A-HJ-NP-Za-km-z]+$"
            }
          },
          "since": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
          },
          "criteria": {
            "default": {},
            "type": "object",
            "properties": {
              "min_price_change_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "min_risk_score_delta": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "min_whale_volume_usd": {
                "type": "number",
                "minimum": 0
              },
              "min_portfolio_change_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 10000
              },
              "min_concentration_shift_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              },
              "perp_max_leverage": {
                "type": "number",
                "minimum": 1,
                "maximum": 100
              },
              "perp_min_pnl_swing_pts": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000
              },
              "perp_liquidation_buffer_pct": {
                "type": "number",
                "minimum": 0,
                "maximum": 100
              }
            },
            "additionalProperties": false
          },
          "format": {
            "default": "json",
            "type": "string",
            "enum": [
              "json",
              "llm",
              "both"
            ]
          }
        },
        "required": [
          "tokens",
          "wallets",
          "since",
          "criteria",
          "format"
        ],
        "additionalProperties": false
      }
    }
  }
}