Model Context Protocol (MCP) lets AI agents like Claude, ChatGPT, Cursor, and custom bots query Laevitas derivatives, options, spot, and macro data natively - in plain English, with no custom integration code. 80+ tools across futures, perpetuals, options, spot, volatility surfaces, live portfolio risk, prediction markets, macro, and Hyperliquid L1 HyperCore wallet/onchain data.
Step-by-step guides for connecting Laevitas derivatives data to your favorite AI platform. Requires an Enterprise API key from your Laevitas dashboard.
Connect directly from Claude.ai using the built-in MCP Connectors feature. OAuth handles authentication automatically.
Go to Settings → Connectors in Claude.ai
Click Add custom connector
Fill in the fields:
Laevitashttps://apiv2.laevitas.ch/api/v1/mcpclient_1782736649991_nu62f5exaClick Add — a popup will open asking for your Laevitas API key
Enter your API key and click Authorize. The connector is now active.
Paste the OAuth Client ID exactly as shown and leave the Client Secret blank — it's a public client secured by PKCE. A pre-registered Client ID is required because anonymous dynamic client registration is disabled for security. After clicking Add, Claude redirects you to the Laevitas login page to enter your API key.
The MCP server supports three authentication methods. Use whichever your platform requires.
Pass your key directly via HTTP header. Best for programmatic access.
| Header (preferred) | apikey: your-key-here |
| Header (alternative) | x-api-key: your-key-here |
| Query parameter | ?apiKey=your-key-here |
Automatic OAuth flow for platforms that require it. You enter your API key once during authorization.
| PKCE | S256 (required) |
| Grant type | authorization_code |
| Token lifetime | 1 hour (auto-refreshes) |
Pay per tool call with USDC. No signup required. Connect and list tools for free, pay only when calling tools.
| initialize | Free |
| tools/list | Free |
| tools/call | 1 credit per call |
No API key? No problem. AI agents can pay per tool call using USDC on Base or Solana.
Connect for free — initialize and tools/list work without any auth
Call a tool — first tools/call without payment returns 402 with payment instructions
Pay with USDC — sign a payment and retry. Get data + a credit token + 99 prepaid credits
Use credits — send X-Credit-Token header for instant tool calls (~1ms, no gas)
Credits work across both REST endpoints and MCP tool calls. A credit token earned via REST can be used for MCP and vice versa.
80+ tools the AI agent can call, grouped by category. Start with a discovery tool (catalog or metadata) to see what instruments and date ranges are available before fetching data.
| Tool | Description |
|---|---|
get_futures_catalog | List available dated-futures instruments on an exchange |
get_perpetuals_catalog | List available perpetual instruments on an exchange |
get_options_catalog | List available options instruments on an exchange |
get_spot_catalog | List available spot pairs on an exchange |
get_predictions_catalog | List available prediction-market instruments |
get_predictions_categories | List prediction-market categories |
get_futures_metadata | Data availability for a futures instrument (date range, data points) |
get_perpetuals_metadata | Data availability for a perpetual instrument |
get_options_metadata | Data availability for an options instrument |
get_spot_metadata | Data availability for a spot pair |
get_predictions_metadata | Data availability for a prediction-market instrument |
get_instruments_metadata | Cross-market instrument metadata lookup |
get_derivatives_liquidations | Aggregated liquidations across derivatives markets |
| Tool | Description |
|---|---|
get_futures_ohlcvt | OHLCVT candle data (price, volume, trades, liquidations) |
get_futures_ticker_history | Ticker snapshots (mark price, OI, bid/ask) |
get_futures_trades | Individual trade records with full details |
get_futures_trades_summary | Aggregated buy/sell trade flow summary |
get_futures_open_interest | Aggregated open interest OHLC over time |
get_futures_volume | 24-hour rolling volume (contracts + USD) |
get_futures_level1 | Best bid/ask, spread, and liquidity over time |
get_futures_l2_orderbook | Aggregated L2 orderbook depth |
get_futures_l2_orderbook_raw | Raw L2 orderbook snapshots |
get_futures_reference_price | Mark price and index price OHLC |
get_futures_basis | Futures basis and annualized term structure |
get_futures_liquidations | Liquidation events over time |
get_futures_flow | Order flow (buy/sell pressure) over time |
get_futures_snapshot | Full market snapshot of ALL instruments at one point in time |
| Tool | Description |
|---|---|
get_perpetuals_funding | Funding rate history — the headline perp metric |
get_perpetuals_ohlcvt | OHLCVT candle data (price, volume, trades) |
get_perpetuals_ticker_history | Ticker snapshots (mark price, funding, OI, bid/ask) |
get_perpetuals_trades | Individual trade records |
get_perpetuals_trades_summary | Aggregated buy/sell trade flow summary |
get_perpetuals_open_interest | Aggregated open interest OHLC over time |
get_perpetuals_volume | 24-hour rolling volume (contracts + USD) |
get_perpetuals_level1 | Best bid/ask, spread, and liquidity over time |
get_perpetuals_l2_orderbook | Aggregated L2 orderbook depth |
get_perpetuals_l2_orderbook_raw | Raw L2 orderbook snapshots |
get_perpetuals_reference_price | Mark price and index price OHLC |
get_perpetuals_liquidations | Liquidation events over time |
get_perpetuals_flow | Order flow (buy/sell pressure) over time |
get_perpetuals_snapshot | Full market snapshot of ALL perpetuals at one point in time |
| Tool | Description |
|---|---|
get_options_ohlcvt | OHLCVT candle data for options (trade-based) |
get_options_ticker_history | Ticker snapshots (IV, Greeks, OI, bid/ask) |
get_options_trades | Individual option trade records with Greeks |
get_options_trades_summary | Aggregated trade flow summary |
get_options_open_interest | Aggregated open interest over time |
get_options_volatility | IV (mark/bid/ask), Greeks, and vol spread over time |
get_options_volume | 24-hour rolling volume (contracts + USD) |
get_options_level1 | Best bid/ask, spread, and liquidity over time |
get_options_reference_price | Underlying / reference price OHLC |
get_options_flow | Options order flow (buy/sell pressure) |
get_options_snapshot | Full options chain snapshot (all strikes, maturities) at one time |
| Tool | Description |
|---|---|
get_vol_surface_by_expiry | IV surface sliced by expiry date |
get_vol_surface_by_tenor | IV surface by constant-maturity tenor (term structure) |
get_vol_surface_by_time | IV surface evolution over time |
get_vol_surface_catalog | Proprietary surface catalog by exchange, currency, margin, and model |
get_vol_surface_snapshots | Engine calibration snapshots, forward curve, and calendar-arb diagnostics |
get_vol_surface_slices | Per-expiry proprietary fits with model params, diagnostics, quality tier, and fallback metadata |
get_vol_surface_term_structure | Constant-maturity proprietary term structure and forward vol |
get_vol_surface_strikes | Per-strike proprietary diagnostics and greeks |
get_vol_surface_risk_decompose | Live portfolio risk decomposition |
get_vol_surface_risk_scenario | Live scenario repricing |
get_vol_surface_risk_ladder | Live spot x vol ladder repricing |
| Tool | Description |
|---|---|
get_spot_ohlcvt | OHLCVT candle data for a spot pair |
get_spot_ticker | Ticker snapshots (price, bid/ask) |
get_spot_trades | Individual spot trade records |
get_spot_volume | 24-hour rolling volume |
get_spot_level1 | Best bid/ask, spread, and liquidity over time |
get_spot_l2_orderbook | Aggregated L2 orderbook depth |
get_spot_l2_orderbook_raw | Raw L2 orderbook snapshots |
get_spot_snapshot | Full market snapshot of ALL spot pairs at one time |
| Tool | Description |
|---|---|
get_predictions_ohlcvt | OHLCVT candle data for a prediction-market instrument |
get_predictions_ticker_history | Ticker / implied-probability snapshots |
get_predictions_trades | Individual trade records |
get_predictions_orderbook_raw | Raw orderbook snapshots |
get_predictions_snapshot | Full market snapshot at one point in time |
| Tool | Description |
|---|---|
get_hyperliquid_node_fills | Wallet-attributed node fills with fees, closed PnL, builder/deployer fees, hashes, and block numbers |
get_hyperliquid_prediction_fills | HIP-4 prediction fills with condition/token ids and wallet attribution |
get_hyperliquid_node_liquidations | Liquidation fills with role, dedupe mode, backstop labels, and aggregate bucket mode |
get_hyperliquid_wallet_flow | Wallet flow rollups with sorted notional/PnL/count ranking, net fields, and labels |
get_hyperliquid_wallet_positions | Latest wallet positions with marks, position notional, nullable entry price, and labels |
get_hyperliquid_funding_payments | Wallet-level funding payments from node misc events |
get_hyperliquid_twap_events | TWAP lifecycle events with target-notional discovery for recent large orders |
get_hyperliquid_resting_orders | Latest L4 resting orders with mark distance, staleness metadata, and labels |
get_hyperliquid_instruments | Resolve raw Hyperliquid coins and aliases to normalized instruments |
get_hyperliquid_node_l2_orderbook | Deep HyperCore-derived L2 orderbook snapshot with 100-level liquidity and imbalance |
| Tool | Description |
|---|---|
get_macro_catalog | List available macro datasets |
get_macro_asset_classes | List macro asset classes |
get_macro_venues | List macro venues / sources |
get_macro_summary | Cross-market macro summary |
get_realized_volatility | Realized volatility for an asset over a window |
curl -X POST https://apiv2.laevitas.ch/api/v1/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "apikey: YOUR_API_KEY" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-03-26",
"capabilities": {},
"clientInfo": {
"name": "my-app",
"version": "1.0.0"
}
}
}'
curl -X POST https://apiv2.laevitas.ch/api/v1/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "apikey: YOUR_API_KEY" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/list"
}'
curl -X POST https://apiv2.laevitas.ch/api/v1/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "apikey: YOUR_API_KEY" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "get_futures_ohlcvt",
"arguments": {
"instrument_name": "BTC-PERPETUAL",
"exchange": "deribit",
"resolution": "1h",
"limit": 10
}
}
}'
What you can ask an AI agent connected to this MCP server:
"What BTC futures instruments are available on Deribit?"
"What's the current BTC perpetual funding rate?"
"Compare BTC vs ETH perpetual open interest over the last 4 hours"
"Show me the BTC futures term structure and annualized basis"
"Which BTC options expiring this week have the highest OI?"
"Pull the Deribit BTC volatility surface by tenor and analyze the IV skew"
"What's the 30-day realized volatility of ETH?"
"Show Hyperliquid wallet fills and current positions for this wallet."
"Compare BTC spot volume across Binance, OKX, and Coinbase"
Common issues when connecting an MCP client. Restart your client after changing any configuration.
406 Not AcceptableYour client (or curl) didn't send Accept: application/json, text/event-stream. Both content types are required on every request.
401 UnauthorizedMissing or invalid credentials. Check the apikey header. The MCP handshake (initialize / tools/list) returns 401 with a WWW-Authenticate header when no credentials are sent — that's the cue for OAuth clients to log in. For Claude.ai, set the pre-registered OAuth Client ID (see the Claude.ai guide above); the connector then redirects you to the Laevitas login page.
429 Too Many RequestsYou hit the per-minute tool-call limit. Back off using the X-RateLimit-Reset response header (seconds until reset). Batched JSON-RPC calls count one slot per tools/call frame.
402 Payment RequiredA tools/call was sent without an API key or OAuth token, so x402 pay-per-call kicked in. Either authenticate, or let a wallet-enabled agent settle the payment. See the x402 guide.
Configure the Laevitas server once per client. If you added it more than once (e.g. an API-key entry and an OAuth entry), remove the duplicate, then restart.
npx not foundClients that bridge via mcp-remote need Node.js. Run npx --version to confirm it's installed, and make sure your network allows outbound HTTPS to apiv2.laevitas.ch.
Still stuck? Debug interactively with the MCP Inspector (npx @modelcontextprotocol/inspector) or email [email protected].