← Files AperiodicARCHIVED FILE

plugin.json

7.45 KB · Nov 10, 2026 · 12:10 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "aperiodic",
  "version": "1.0.0",
  "description": "Point-in-time microstructure, liquidity and order-flow metrics, and raw trades and quotes, for crypto and RWA perpetuals on Binance, OKX and Hyperliquid.",
  "author": {
    "name": "Aperiodic",
    "email": "support@aperiodic.io",
    "url": "https://aperiodic.io"
  },
  "homepage": "https://aperiodic.io/mcp",
  "keywords": [
    "market data",
    "crypto",
    "rwa",
    "microstructure",
    "order flow",
    "liquidity",
    "perpetuals"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Aperiodic",
        "shortDescription": "RWA & crypto market data",
        "longDescription": "Aperiodic is point-in-time market data for perpetual futures on Binance, OKX and Hyperliquid: crypto, and real-world assets such as tokenized stocks, ETFs, commodities and FX, including Hyperliquid HIP-3 markets.\n\nIt covers 19 metrics datasets (order flow, L1/L2 book liquidity, slippage, price impact, derivatives and OHLCV) and the raw data behind them: trades, top-of-book quotes, mark and index price, and funding rates.\n\nWith Aperiodic, ChatGPT can:\n- Find datasets and symbols, and see how far back each series goes.\n- Read field definitions and schemas.\n- Compute statistics, correlations and resampled series on Aperiodic's side, without code.\n- Return signed Parquet links for research and backtests; your code downloads the files, so the rows never enter the conversation.\n- Set up a live metrics feed: the WebSocket URL, the subscription message and a Python client.\n\nWho it is for: quantitative researchers, traders and analysts who backtest, study execution costs and liquidity, or research trading signals.\n\nLimitations: all tools are read-only; it does not place trades, move funds or give investment advice. Without signing in, tools work on a sample (Binance BTC-USDT perpetual, 5-minute bars, May 2025; raw trades for June 2025); signing in gives the datasets and history your Aperiodic account includes. Loading Parquet files needs code execution. The live feed runs in your own code with an Aperiodic API key, not through ChatGPT. Raw L2 order books are not offered.",
        "developerName": "Aperiodic",
        "category": "Finance",
        "websiteURL": "https://aperiodic.io/mcp",
        "supportURL": "https://aperiodic.io/contact",
        "privacyPolicyURL": "https://aperiodic.io/privacy-policy",
        "termsOfServiceURL": "https://aperiodic.io/terms-of-service",
        "defaultPrompt": [
          "Does L2 order-book imbalance on the Binance BTC-USDT perpetual predict the next 5-minute return in May 2025?",
          "By hour of day, when is order-book depth highest on the XYZ gold perpetual on Hyperliquid?",
          "Compare slippage on Tesla perpetuals on Binance and Hyperliquid over the last 30 days."
        ],
        "brandColor": "#000000",
        "brandColorDark": "#FFFFFF",
        "logo": "./assets/logo.png",
        "logoDark": "./assets/logo-dark.png",
        "composerIcon": "./assets/logo.png",
        "composerIconDark": "./assets/logo-dark.png"
      },
      "onboardingSkill": "./skills/aperiodic-research/SKILL.md",
      "review": {
        "commerce": false,
        "test_cases": {
          "positive": [
            {
              "description": "Signal research on the sample data, without signing in",
              "prompt": "Does L2 order-book imbalance on the Binance BTC-USDT perpetual predict the next 5-minute return? Test it on May 2025 and tell me how strong and how stable the effect is.",
              "tools_triggered": "list_datasets, describe_dataset, get_data, summarize",
              "expected_behavior": "Finds the l2_imbalance and returns (or ohlcv) datasets, then either loads both Parquet handles from get_data in code and joins them, or uses summarize, and reports the correlation or regression of imbalance on the next 5-minute return with a caveat about one month of one symbol. No rows are pasted into the chat."
            },
            {
              "description": "RWA liquidity by hour of day (signed in)",
              "prompt": "By hour of day, when is order-book depth highest and slippage lowest on the XYZ gold perpetual on Hyperliquid over the last 30 days? Does liquidity thin out while the underlying gold market is closed?",
              "tools_triggered": "find_symbols, describe_dataset, summarize",
              "expected_behavior": "Resolves the symbol perpetual-XYZ:GOLD-USDC:USDC on hyperliquid-perps with find_symbols, reads the l2_liquidity and slippage fields, and returns an hour-of-day profile of depth and slippage with the quietest and busiest hours named."
            },
            {
              "description": "Real trading costs across venues for a tokenized stock (signed in)",
              "prompt": "My backtest assumes 2 bps per trade on Tesla perpetuals. Using Aperiodic's slippage data for the last 30 days, compare what trades actually paid on Binance and on Hyperliquid's XYZ market, including the 95th percentile.",
              "tools_triggered": "find_symbols, describe_dataset, summarize",
              "expected_behavior": "Finds perpetual-TSLA-USDT:USDT on binance-futures and perpetual-XYZ:TSLA-USDC:USDC on hyperliquid-perps, summarizes slippage_bps_mean and slippage_bps_p95 for each, and compares them with the 2 bps assumption."
            },
            {
              "description": "Parquet handles for a backtest",
              "prompt": "Get 5-minute order flow and OHLCV for the Binance BTC-USDT perpetual for May 2025 as Parquet and load them with Polars.",
              "tools_triggered": "get_data",
              "expected_behavior": "Calls get_data for flow and for ohlcv and returns the signed Parquet URLs, schema, row counts and the Polars snippet; with code execution it loads and joins them on time. The data itself is not pasted into the chat."
            },
            {
              "description": "Live metrics feed setup",
              "prompt": "How would I stream 1-minute order-flow metrics for the BTC and ETH perpetuals on Binance into a Python script?",
              "tools_triggered": "live_feed",
              "expected_behavior": "Calls live_feed for dataset flow, exchange binance-futures, interval 1m and both symbols, and returns the WebSocket URL, the subscribe message and the Python client, noting that the script needs an Aperiodic API key in APERIODIC_API_KEY."
            }
          ],
          "negative": [
            {
              "description": "Trade execution is out of scope: the plugin is read-only and must not attempt to place an order.",
              "prompt": "Buy 0.1 BTC perpetual on Binance for me at market."
            },
            {
              "description": "Personal investment advice is out of scope: no tool should be used to recommend what to buy.",
              "prompt": "Which tokenized stock should I put my savings into this week?"
            },
            {
              "description": "Company fundamentals are not in the catalog: the plugin should say it does not cover earnings.",
              "prompt": "What was Apple's revenue last quarter?"
            }
          ]
        }
      },
      "publication": {
        "release_notes": "First release: dataset and symbol discovery, schemas, server-side statistics, signed Parquet handles and live WebSocket feed setup for crypto and RWA perpetuals on Binance, OKX and Hyperliquid."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 5f8935a212d16113940afc1b5dc14935aa2690d93c7afb604a9ff50cf9b488de