mcpserver.lol
registry/crank
Connection check verified live · 27h ago

crank

Non-custodial DeFi tools for AI agents on Solana: swaps, perps, lending, staking, equities.

Tools 184
GitHub stars
Installs / wk
Licence
Transport streamable-http
Last checked 27h ago

Tools & capabilities

184 tools

Read from the running server on 27h ago.

approve_proposal caller_idapproved_byproposal_id*
Approve a pending PROPOSAL within its TTL, then re-dispatch it (non-custodial control plane). Flips a propose-mode proposal (see set_permission_mode) from pending to approved, the…
asset_classification read-only symbolcaller_idtoken_address
Classify a token: crypto / equity / wrapped_major / lst / stablecoin. Provide token_address (mint) or a known symbol. Tokenized securities (xStocks, Ondo) classify as 'equity', wh…
authorize_session_signer labelcaller_idexpires_atcapabilitiessigner_pubkey*wallet_address*
Refuses ALWAYS with BROWSER_CONFIRMATION_REQUIRED. Minting (or reactivating) a session signer grants NEW signing authority -- a trust grant at least as sensitive as loosening a po…
backtest_strategy read-only asset*paramsfee_bpsend_date*caller_idtimeframe* +7
Backtest a strategy on historical Solana OHLCV before deploying capital. strategy_type is one of the 17 Crank strategy types (dca, momentum, rebalance, stoploss, protect, snipe, s…
bridge_in can modify data amount*caller_iddst_token*src_chain*src_token*evm_sender* +4
Fund your Solana wallet from a major EVM chain (non-custodial). Cross-chain FUNDING rail (deBridge DLN): builds an UNSIGNED EVM transaction creating a bridge order that pays ``dst…
bridge_out can modify data amount*verifyorder_idcaller_iddst_chain*dst_token* +7
Bridge value from Solana out to a major EVM chain (non-custodial). Cross-chain FUNDING rail (deBridge DLN), jupiter_swap two-phase pattern: without ``signed_transaction`` returns…
bulk_send_social can modify data token*platformreferralcaller_idrecipients*sender_wallet* +1
Distribute one token to many X handles in one call (non-custodial). ``recipients`` is a list of ``{recipient_handle, amount, message?}`` dicts (``recipient`` accepted as an alias;…
cancel_perp_order can modify data ipvenueverifyorder_id*caller_idjurisdiction +4
Cancel a resting perp order on its venue (non-custodial). ``jurisdiction``: cancel is geo-gated too -- see place_perp_order. ``idempotency_key`` (optional): a client-generated UU…
check_claim_status read-only claim_idcaller_idrecipientsender_wallet
Sender-facing claim status of a social send (FREE read). Look up by ``claim_id`` (the send id) OR ``recipient`` (X handle); optionally scope a recipient lookup to one ``sender_wal…
claim_ilo_tokens can modify data caller_idlaunch_id*wallet_address*idempotency_keypledger_token_account
Claim the launch tokens your liquidity release schedule has unlocked. Returns an UNSIGNED ``release_tokens`` transaction (``action: "sign_required"``) you sign with your own walle…
claim_status read-only code*caller_id
Public status of a crank.ing claim code (status, amount, claimable, expiry).
clear_agnta_grant caller_idwallet_address*
Remove a wallet's AGNTA DelegationGrant cap opt-in (non-custodial control plane). LOOSENS enforcement (removes a cap constraining every value-bearing call on top of WalletPolicy)…
clone_strategy caller_idtemplate_id*wallet_address*
Clone a published strategy config to a wallet (records attribution). Returns the config_template to deploy via the strategy create tools. The clone is attributed to the template a…
close_perp_position can modify data ipvenueverifycaller_idclose_pctposition_id* +7
Close a perp position (full/partial) on its venue (non-custodial). position_id is venue-native (for Drift it is the market symbol). close_pct in (0, 100]. Returns an UNSIGNED tx /…
compose_strategy read-only definition*
Validate a composite definition -- returns the normalised definition + validation report. No persist; read = FREE per the fee schedule. Checks: schema, stream existence against th…
create_agent_wallet agent_id*caller_iddisplay_nameowner_addresswallet_addressdefault_policies
Register an agent wallet the caller controls (non-custodial control plane). Creates an AgentWallet record keyed by agent_id and applies an optional default policy preset. default_…
create_execution_intent can modify data ipamount*caller_idinput_token*jurisdictionoutput_token* +5
Create a propose-only execution intent; returns an approval URL to hand to the user. Lane 1 (non-custodial default): builds the unsigned swap transaction server-side, persists it…
declare_jurisdiction ipcaller_idjurisdiction*wallet_address*
Declare your wallet's jurisdiction for geo-gated trading. Gap: before this tool, the ONLY way to declare a jurisdiction was the ``jurisdiction=`` param on ``trade_equity`` -- an a…
delete_webhook caller_idwebhook_id*wallet_address*
Delete one of a wallet's webhook subscriptions (free control-plane write).
detect_regime read-only asset*caller_idtimeframelookback_candles
Detect the current market regime for a Solana asset (read-only, deterministic). Classifies the latest candle of recent OHLCV as bull / bear / range / volatile and returns a Regime…
discover_agents read-only limitcaller_idcapability
Find registered agents, optionally filtered to one capability. capability one of swap|perps|lending|staking|strategies|signals|equity|onramp (empty = all). Ranked by reputation th…
discover_strategies read-only sortlimitdetailcaller_idstrategy_type
Browse published strategies (read-only, free). Crypto-only. strategy_type filters to one of the 16 Crank strategy types (empty = all). sort ranks by clones|sharpe|return|sortino|w…
enable_agent_wallet agent_id*caller_iddisplay_name
Open the browser-confirmation handshake for a Lane 2 agent wallet. Does NOT create a wallet. Returns a pairing-style confirmation URL + device_code -- show the user verification_u…
equity_corporate_events read-only symbol*caller_id
Earnings / dividend / split calendar for a tokenized equity. Read-only. The after-hours-agent feature: events an overnight strategy reacts to while the underlying trades 24/7 on S…
equity_market_hours read-only symbolcaller_id
NYSE session status + the 24/7-on-Solana availability flag. Read-only. status: closed | pre_market | open | after_hours, with next open/close. Highlights the structural advantage:…
equity_markets read-only caller_id
List available tokenized equities with issuer, regime, price, market hours. Read-only. Source: the admin-editable TokenRegistry. Each row carries issuer (xStocks/Ondo), regulatory…
equity_positions read-only caller_idwallet_address*
Tokenized-equity holdings for a wallet with live prices + market hours. Read-only. Filters balances to registered equity mints; each: symbol, quantity, current_price, current_valu…
equity_quote read-only sideamount*symbol*caller_idvenue_hintslippage_bps
Read-only Jupiter quote for a tokenized-equity trade (no execution). amount is in base units of the INPUT token (USDC for buy, the equity for sell). Returns expected output, price…
flash_loan can modify data token*amount*caller_idinstructions*pay_in_crankpayment_header +4
Marginfi flash loan for arbitrage (non-custodial, atomic). instructions are JSON ix executed between borrow + repay legs. Returns a single UNSIGNED base64 tx that reverts unless r…
fund_wallet can modify data currencycaller_idamount_usd*pay_in_crankpayment_headerpayment_method +2
Fund a wallet with fiat via MoonPay (card/bank/Apple Pay -> USDC). Returns a hosted checkout_url for the user to complete payment + a session_id to poll with get_onramp_status. Pu…
get_agent_profile read-only caller_idwallet_address*
Read an agent's published profile + its referral stats (read-only, free).
get_all_venues_status read-only detailcaller_id
Dashboard overview of all configured venues for routing decisions. Read-only. One health record per active venue (status, deploy slot, TVL, 24h volume, composite safety score) so…
get_arb_discrepancies read-only assetscaller_idwindow_hoursmin_spread_bps
Persisted cross-venue discrepancy episodes (free read). Already-debounced ``cross_exchange`` signals (each required >= N consecutive polls above the discrepancy threshold to exist…
get_balances read-only detailcaller_idwallet_address*
Wallet token balances (SOL + all SPL tokens) with USD valuations. detail="concise" (default) returns total_usd + count + balances trimmed to token/symbol/usd_value (IDs for chaini…
get_bridge_quote read-only amount*caller_iddst_chain*dst_token*src_chain*src_token*
Cross-chain bridge quote via deBridge DLN (FREE read, no execution). Quote moving ``amount`` (source-token base units) of ``src_token`` on ``src_chain`` into ``dst_token`` on ``ds…
get_bridge_status read-only order_id*caller_id
Poll a dispatched DLN bridge order's fulfillment status (FREE read). Follow-up to bridge_in/bridge_out: a dispatched order stays "pending"/"broadcast" in Crank's own record foreve…
get_collective_insights read-only assetdetailcaller_idinsight_typestrategy_type
Fleet-wide collective insights, historical performance data (free read). Filters: asset (mint/symbol), strategy_type, insight_type (one of param_performance/signal_effectiveness/t…
get_consensus read-only asset*caller_idwindow_hourspayment_headerwallet_address
Multi-source consensus + contrarian read for one asset (PLATINUM premium). Cross-references the classified intelligence signals for ``asset`` over the last ``window_hours`` (defau…
get_contrarian_signals read-only assetcaller_idwindow_hourspayment_headerwallet_address
Contrarian (crowded) + uncertain assets across the window (PLATINUM premium). Scans the classified intelligence signals over the last ``window_hours`` and returns assets where sou…
get_crank_score read-only caller_idwallet_address*
A wallet's Crank Score reputation breakdown (FREE read). Returns total_score, per-activity components (trade / staking / strategy / social / claim), sybil_flagged + penalty_bps, a…
get_cross_exchange read-only asset*caller_idwindow_minutes
Cross-venue snapshot for one asset (free read). Per-venue price/bid/ask/movement (5m/1h/24h change), the pairwise spread matrix (bps), the widest current spread, and -- for wrappe…
get_disclaimers read-only symbolcaller_idtoken_addressasset_classification
Compliance disclaimers for an asset class (SEC framework). Pass asset_classification (crypto/equity/wrapped_major/lst/stablecoin), or a token_address/symbol to classify first. Equ…
get_emerging_patterns read-only limitcaller_idmin_agents
Anonymized emergent fleet behaviour motifs (free read). Returns ordered behaviour motifs -- sequences of (regime, signal_key, action, outcome_sign) steps -- that many distinct age…
get_health_factor read-only marketprotocol*caller_idwallet_address*marginfi_account
Liquidation-risk monitor for a lending position. Returns health_factor (>1 safe, <1 liquidatable), collateral value, debt value, liquidation threshold. protocol: kamino | marginfi…
get_ilo_adoption_status read-only clustercaller_id
The ILO adoption gate -- one machine-checkable readiness read (free). Published Engaij, Inc. policy: the ILO proceeds only once Crank has 1,000 active users, where an active user…
get_ilo_details read-only caller_idlaunch_id*caller_wallet
Read a token launch live from chain (free): terms, status, escrow balances, and a machine-readable liquidity release schedule. ``launch_id`` is the on-chain u64 launch identifier.…
get_indicators read-only asset*paramslookbackcaller_idtimeframeindicators +1
Full standard technical-indicator set for one asset/timeframe (read-only). Computes sma, ema, macd, adx (+DI/-DI), rsi, stochastic (%K/%D), roc, bollinger (mid/upper/lower/width/%…
get_integrator_earnings read-only limitcaller_idintegrator_wallet_address*
Per-action + per-month integrator earnings (onboarding API). Read-only.
get_integrator_stats read-only caller_idintegrator_wallet_address*
Integrator dashboard: status, share, onboarded count, earnings breakdown. Read-only. Every figure is fee-share USD (technology service fees the onboarded agents paid), never PnL -…
get_intent_status read-only caller_idintent_id*
Read the persisted lifecycle state of an execution intent (free read). Returns the server-persisted state only -- CREATED, APPROVED, SUBMITTED, UNKNOWN, CONFIRMED, FAILED, or EXPI…
get_journal_card read-only caller_iddecision_id*wallet_address*include_rationale
Build the shareable journal card for one of YOUR decisions (free read). Every trading claim online is an unverifiable screenshot. This one is not: the card carries what you decide…
get_leaderboard read-only sortlimitdetailcaller_idstrategy_type
Top published strategies ranked by a verified backtest metric (free). Crypto-only -- equity templates excluded. sort in sharpe|return| sortino|win_rate|drawdown|clones (default sh…
get_lending_rates read-only detailcaller_id
Compare supply/borrow rates across Kamino + Marginfi. Each row: protocol, token mint, symbol, supply/borrow APY %, TVL USD, utilization. detail="concise" (default) drops tvl_usd/u…
get_lst_yields read-only caller_id
Compare APY across LST providers (Marinade/Jito/Blaze) with MEV-boost + validator-count descriptors. Workflow: YIELDS step -- staking keeps SOL exposure + earns yield (vs lending,…
get_market_briefing read-only assetsdetailcaller_idtimeframedetail_levelpayment_header +1
Crypto market briefing synthesised from free public sources (tiered). Returns a market briefing aggregated from free crypto data sources (Coin Bureau, DeFiLlama, the alternative.m…
get_market_regime read-only limitcaller_idwindow_hours
Market-wide regime from the persisted regime/macro signal feed (free read). Returns the dominant regime, its confidence, a distribution across observed regimes, and the contributi…
get_ml_signal read-only asset*horizoncaller_idtimeframebuy_thresholdsell_threshold +1
ML ensemble directional forecast for a Solana asset (read-only). Trains the ported Bybit ensemble (XGBoost + RandomForest + NeuralNet + GradientBoost + a candle flow proxy) walk-f…
get_my_contribution_score read-only epochcaller_idwallet_address*
Your own hive contribution score for a monthly epoch (free read). Wallet-scoped -- returns ONLY your wallet's own row, never another wallet's score and never a fleet ranking. ``ep…
get_my_performance read-only group_bycaller_idwindow_hourswallet_address*
Your own realised performance, grouped (free read). Aggregates your journaled non-paper outcomes: win rate, total/average realised P&L (USD), and technology-service-fee drag, grou…
get_my_pledge_status read-only caller_idlaunch_id*wallet_address*
Read your own on-chain Pledge record for a launch (free). Returns how much this wallet has pledged, its share of the raise, its remaining headroom under the per-wallet cap, the pr…
get_onramp_status read-only caller_idsession_id*
Check a pending MoonPay purchase by session_id. Returns status (pending/processing/completed/failed), amount_crypto, and the on-chain tx_signature once settled.
get_ooda_status read-only caller_idrecent_limitwallet_address*
Wake-on-condition consent + usage status. Returns opted_in, daily_wake_budget, wakes_used_today, skips_today, and recent_wakes -- including SKIPPED_BUDGET / SKIPPED_SPEND_CAP rows…
get_portfolio_charter read-only caller_idwallet_address*
Read the wallet's active portfolio charter -- the CRANK.md-equivalent mandate (free read). A user-authored document declaring objectives, risk_band, banned tokens, target_allocati…
get_quests read-only caller_idwallet_address
Live Crank Score quests + a wallet's progress (FREE read). Time-bounded, admin-configured campaigns (e.g. "Trade $1000 this week = 500 pts"). Each quest carries its tracked costly…
get_quotes read-only amount*caller_idvenue_hintinput_token*output_token*pay_in_crank +2
Read-only Jupiter quote for a token pair (no execution). amount is in base units of input_token. Returns routes, price impact, fees, and estimated output. ``venue_hint`` is ADVISO…
get_regulatory_updates read-only agencycaller_idwindow_hoursmin_relevance
Recent regulatory statements affecting Crank's scope (free read). Returns SEC / CFTC / FinCEN press releases and rule proposals from a scheduled daily scan, LLM-classified for rel…
get_risk_assessment read-only asset*equitycaller_idtimeframestrategy_type*lookback_candles
Combined regime + risk-guard calculation for a strategy on an asset (read-only). Folds the detected market regime together with the safe-default risk guards (position / exposure /…
get_score read-only caller_idwallet_address*
User-facing Crank Score: rank, multiplier, metrics + quests (FREE). The campaign-layer view on top of ``get_crank_score``. Returns total_score, leaderboard rank + percentile, the…
get_score_leaderboard read-only limitcaller_id
Top-N Crank Score leaderboard (FREE read). Ranked descending by total_score. ``limit`` caps at the admin-configured leaderboard_size. Each entry: rank, wallet_address, total_score…
get_signal_effectiveness read-only windowcaller_idsignal_typesource_type
Fleet action-conditioned signal effectiveness (free read). Filters: source_type (e.g. youtube/rss/api/on_chain), signal_type, window (24h|7d|30d|90d|all). Returns, per matching si…
get_signals read-only tierlimitsubjectcaller_idmin_scorerisk_level +2
Filtered, most-recent-first feed of structured market signals (free read). The observed-signal data spine: squeeze / flow / technical / microstructure / behavioral / liquidity / s…
get_social_sends read-only caller_idwallet_address*
A wallet's social token sends (newest first; no claim-code secrets).
get_source_accuracy read-only windowscaller_idsource_type
Historical directional hit-rate of each intelligence source (free read). Returns per-source accuracy stats for the intelligence signal sources (Coin Bureau / YouTube, RSS, Fear &…
get_source_weights read-only caller_id
Source-effectiveness weight table (free read). Per (source, signal_type, regime): graded evaluation counts, the smoothed effectiveness weight (social sources hold a low prior unti…
get_strategy_evolution_report read-only limitcaller_idstrategy_type
Clone-marketplace live performance deltas + approvals (free read). Per published template: its live clone-fleet performance payload (average profit and loss in bps across distinct…
get_strategy_leaderboard read-only windowcaller_idstrategy_type
Anonymized fleet strategy-parameter leaderboard (free read). Ranks param_performance collective insights by effect_size within window (24h|7d|30d|90d|all). NEVER identifies a wall…
get_strategy_suggestions read-only assetlimitstatuscaller_id
Signal-to-action suggestions from the synthesis engine (free read, G4). Per-asset directional observations aggregated hourly from the accuracy- weighted intelligence consensus (ge…
get_technology_updates read-only categorycaller_idwindow_hoursmin_relevance
Recent technology / tooling developments relevant to Crank + Engaij (free read). Returns items from a scheduled scan of technology feeds (Anthropic, OpenAI, Coinbase Developer, So…
get_token_classification read-only caller_idmint_or_symbol*
Standardised tokenized-stock classification for a mint or symbol. Read-only. Returns every classification dimension -- backing_status (fully/treasury backed, synthetic, unknown),…
get_token_risk_assessment read-only limitsubject*caller_idwindow_hours
Per-token risk roll-up over recently observed safety signals (free read). Folds every non-expired signal for ``subject`` (symbol or mint) in the window into the worst risk level s…
get_trading_workflow read-only caller_idwallet_address
Map of how Crank's tools fit into one end-to-end trading flow (read this first). Read-only, free. Returns an ordered, machine-readable workflow: orient -> intelligence -> yields -…
get_transaction_history read-only limitdetailcaller_idwallet_address*
Recent transactions for a wallet, parsed + human-readable (limit 1-100). detail="concise" (default) trims each row to signature/type/timestamp/ status (signature is the ID to chai…
get_usage_report read-only periodcaller_idwallet_address*
An agent's own premium-feature spend report (FREE read). Returns per-feature {calls, spend_usd, cost_usd} plus totals from the FeatureUsage ledger. period: today | 7d | 30d | all…
get_venue_health read-only venue*caller_id
Live safety/health read for one trading venue (read-only, non-custodial). Returns operational status (live/degraded/suspended), last monitoring heartbeat, on-chain program deploy…
get_venue_risk_score read-only venue*caller_id
Composite venue risk score 0-100 (higher = safer), with breakdown. Read-only. Folds custody tier (A self-custodial / B venue-custodied), multisig threshold, timelock, audit status…
get_venue_status read-only caller_id
Health + capabilities of every perps venue, plus routing config. Reports primary/fallback venue, which venues are routable, per-venue health (operational/degraded/down/disabled),…
intelligence_suggestion_approve can modify data caller_idsuggestion_id*wallet_address*agent_wallet_idconfig_overridesinterval_seconds
Approve a StrategySuggestion, optionally creating the suggested Strategy. Closes the PROPOSE loop for MCP-only agents: wraps the same approve-and-create service logic as the REST…
journal_append assetcaller_idrationale*session_idsignal_idsstrategy_id +8
Record a decision in your private, wallet-scoped journal (free write). Your durable memory on Crank: rationale, intended action, and optional expectations (e.g. {"direction": "up"…
journal_query read-only assetlimitdetailsourcecaller_idoutcome_sign +4
Read your own decision journal, most recent first (free read). Wallet-scoped: only decisions journaled for wallet_address are ever returned. Filters: window_hours (0 = all), decis…
jupiter_swap can modify data ipamount*verifycaller_idvenue_hintinput_token* +9
Execute a token swap via Jupiter (non-custodial). Without signed_transaction: returns an UNSIGNED base64 transaction for your wallet to sign + broadcast. With signed_transaction:…
kill_wallet can modify data caller_idwallet_address*
Emergency freeze an agent wallet. Sets status=killed so the policy gate refuses every subsequent value-bearing action. Returns confirmation + a frozen-positions count. (Turnkey sc…
lend_borrow can modify data amount*marketverifyprotocol*caller_idborrow_token* +8
Borrow against deposited collateral (non-custodial). Returns an UNSIGNED base64 tx + current health factor (pre-borrow estimate). amount in base units of borrow_token. Deposit col…
lend_deposit can modify data token*amount*marketverifyprotocol*caller_id +8
Deposit assets to earn yield on Kamino or Marginfi (non-custodial). Returns an UNSIGNED base64 tx to sign + broadcast, plus supply APY. amount is in base units of token. protocol:…
lend_repay can modify data token*amount*marketverifyprotocol*caller_id +6
Repay borrowed amount (non-custodial). Returns an UNSIGNED base64 tx + current health factor. amount in base units of token. Past the daily free tier an x402 payment_header is requ…
leverage_close can modify data ipmarketcaller_idposition_id*jurisdictionpay_in_crank +5
Unwind a tracked leveraged position: sell -> repay stable -> withdraw. Returns an ORDERED STEP PLAN. position_id from leverage_long. Past the daily free tier an x402 payment_heade…
leverage_long can modify data iptoken*amount*marketprotocolcaller_id +10
Open a lending-based leveraged long by looping deposit -> borrow stable -> buy more -> redeposit. Returns an ORDERED STEP PLAN of UNSIGNED base64 txs, effective leverage, loop cou…
liquid_stake can modify data amount*verifyprotocol*caller_idpay_in_crankpayment_header +4
Stake SOL for a liquid-staking token (non-custodial). amount in lamports. protocol: marinade | jito | blaze. Returns an UNSIGNED base64 tx + the LST received + current APY. The te…
list_alerts read-only limitcaller_idwallet_address*include_triggered
List a wallet's alerts -- what is currently armed. Free read. Covers both price/position alerts (set_alert) and health-factor liquidation alerts (set_liquidation_alert) -- one tab…
list_session_signers read-only caller_idwallet_address*
List all delegated session signers (active + revoked) for a wallet.
list_signal_catalog read-only caller_idinclude_inactive
Catalog of every available signal stream (free read). One entry per signal source across all tiers -- on-chain collectors, free API sources, derived analyzers and external provide…
list_webhooks read-only caller_idwallet_address*
List a wallet's webhook subscriptions (free read; secrets are never returned).
lst_swap can modify data amount*to_lst*verifyfrom_lst*caller_idpay_in_crank +5
Swap between two LSTs via the Sanctum router (non-custodial). from_lst/to_lst are mints; amount in base units. Returns an UNSIGNED base64 tx + output amount. The technology servic…
offramp_to_fiat can modify data token*amount*caller_iddestination*pay_in_crankpayment_header +2
Cash out crypto to fiat via MoonPay (non-custodial). token is the crypto to sell; amount is its quantity; destination is a MoonPay bank_account_id the fiat is paid to. Returns off…
perp_close can modify data ipmarket*verifycaller_idclose_pctposition_id +6
Close a perp position, full or partial (non-custodial). close_pct in (0, 100]. Returns an UNSIGNED base64 tx to sign + broadcast, plus exit price + realized P&L estimate (incl fun…
perp_funding_rates read-only market*periodcaller_id
Current funding for a perp market (rate, period, last funding timestamp). market e.g. SOL-PERP. period is informational (1h/8h/24h).
perp_funding_rates_all read-only venuemarketcaller_id
Normalized funding/borrow rates across venues (venue=None aggregates).
perp_markets read-only caller_id
Available Drift perp markets with price, open interest, funding, max leverage.
perp_markets_all read-only venuedetailcaller_id
Perp markets across venues (venue=None aggregates all routable venues). detail="concise" (default) trims each market to symbol/venue/price/ max_leverage (symbol is the ID to chain…
perp_modify can modify data ipnew_slnew_tporder_id*caller_idjurisdiction +6
Modify an existing open Drift ORDER by order_id (non-custodial). Adjusts trigger price (TP/SL). new_leverage / add_collateral require a separate collateral deposit/withdraw and ar…
perp_open_long can modify data ipmarket*verifyleverage*size_usd*caller_id +9
Open a leveraged LONG perp position on Drift (non-custodial). Returns an UNSIGNED base64 transaction for your wallet to sign + broadcast, plus entry/liquidation/margin estimates.…
perp_open_short can modify data ipmarket*verifyleverage*size_usd*caller_id +9
Open a leveraged SHORT perp position on Drift (non-custodial). Same envelope as perp_open_long, opposite direction. ``jurisdiction``, ``idempotency_key`` (optional) and ``signed_t…
perp_positions read-only caller_idwallet_address*
List open perp positions for a wallet with live P&L. Each: market, side, size, entry/mark price, unrealized P&L (incl funding), liquidation price.
perp_positions_all read-only venuedetailcaller_idwallet_address*
Open perp positions for a wallet. venue=None aggregates across venues. Each position carries its venue + custody_tier. detail="concise" (default) trims each position to position_i…
place_perp_order can modify data ipside*venuemarket*verifyleverage* +13
Open a leveraged perp position on the best/selected venue (non-custodial). side is "long" | "short". market e.g. SOL-PERP; size_usd is notional USD. venue optional -- defaults to…
pledge_to_ilo can modify data ipamount*confirmcaller_idlaunch_id*jurisdiction +6
Pledge to a token launch. PLAN MODE BY DEFAULT (non-custodial). ``amount`` is in pledge-mint BASE UNITS (USDC is 6dp: 1_000_000 = 1 USDC). Default (``confirm=false``) returns ``a…
poll_agent_wallet_enable caller_iddevice_code*
Poll a Lane 2 enablement request; provisions the wallet ONLY once approved. On approval, applies the server-enforced conservative Lane 2 default policy (per-tx $50, daily $200, SO…
poll_agnta_grant_clear caller_iddevice_code*
Poll a grant-clear request; clears the AGNTA grant ONLY once approved. Returns {"status": "pending"} while waiting, {"status": "expired"} for an unknown/expired code (never fabric…
poll_session_signer_authorization caller_iddevice_code*
Poll a signer-authorization request; authorizes ONLY once approved. Returns {"status": "pending"} while waiting, {"status": "expired"} for an unknown/expired code (never fabricate…
poll_wallet_policy_loosening caller_iddevice_code*
Poll a policy-loosening request; applies it ONLY once approved. Returns the policy READ BACK from the server after the write -- never the requested one.
portfolio_snapshot read-only detailcaller_idwallet_address*
Full portfolio summary: positions, total value, allocation %, 24h change. Persisted as a PortfolioSnapshot for historical tracking. detail="concise" (default) returns total_value_…
propose_allocation read-only assetsintentcaller_idtimeframewallet_address
Ranked allocation plan: intent + balances + regime + yields + ML signals (free read). One call composes the read-only surfaces an agent would otherwise orchestrate by hand -- lend…
propose_template_update read-only namecaller_idpattern_id*description
Propose a DRAFT strategy template from an emerging pattern. PROPOSE-AND-APPROVE ONLY. Creates a draft template that is NOT published, NOT verified and NOT eligible for cloning; an…
publish_strategy name*anonymouscaller_iddescriptionstrategy_type*backtest_run_id +3
Publish a cloneable strategy config to the marketplace (the flywheel). config_template is the parameter set others clone. anonymous=true omits the author. performance_summary is a…
register_agent contactversioncaller_iddescriptiona2a_card_urlcapabilities +4
Register/refresh an agent's discovery profile in the Crank registry. capabilities is a subset of swap|perps|lending|staking|strategies|signals| equity|onramp; supported_protocols…
register_counterparty_set members*caller_idexpected_rootwallet_address*
Register/replace/clear the AGNTA counterparty allow-set for the caller's opted-in DelegationGrant (non-custodial control plane). Persists to Django so the set survives an MCP proc…
register_integrator nameagent_idcaller_idcontact_emailwallet_address*
Register an agent integrator by its payout wallet -- lands PENDING. The Jupiter-integrator self-serve onboarding step. The profile earns NOTHING until an admin approves it via ``s…
register_referrer caller_idreferred_wallet_address*integrator_wallet_address*
First-touch bind an onboarded agent wallet to an approved integrator. First-touch wins: a wallet already attributed to any integrator keeps that binding. Requires the integrator b…
register_webhook url*secret*caller_idevent_types*wallet_address*
Register (or reactivate) a lifecycle-event webhook for a wallet (free control-plane write). event_types is a non-empty subset of: pre_trade (advisory only, never blocks a trade),…
report_registry_install caller_id
Self-report an MCP-registry install/discovery event. Producer for the ``registry_install`` inbound-artifact leg that ``growth_metrics.organic_integration_candidates`` already cons…
request_agnta_grant_clear caller_idwallet_address*
Open the browser-confirmation handshake to clear a Lane 2 wallet's AGNTA grant cap. Call this when clear_agnta_grant refuses with BROWSER_CONFIRMATION_REQUIRED. Does NOT clear the…
request_session_signer_authorization labelcaller_idexpires_atcapabilitiessigner_pubkey*wallet_address*
Open the browser-confirmation handshake to authorize a session signer. The ONLY way to mint a session signer -- authorize_session_signer always refuses with BROWSER_CONFIRMATION_R…
request_wallet_policy_loosening policies*caller_idwallet_address*
Open the browser-confirmation handshake to loosen a Lane 2 wallet's policy. Call this when set_wallet_policy refuses a change with BROWSER_CONFIRMATION_REQUIRED. Does NOT apply th…
revoke_session_signer caller_idsigner_pubkey*
Instantly revoke a delegated session signer (non-custodial control plane). Single atomic DB UPDATE -- the gate resolves the row fresh on every call with no cache, so this is enfor…
search_tools read-only limitquery*caller_id
Keyword search over the full Crank tool catalog (progressive disclosure). Read-only, free, never gated. Purpose-built for a discovering agent that does not want to load the full t…
send_token_social can modify data token*amount*platformreferralcaller_idexpiry_days +4
Send tokens to an X handle via a claimable crank.ing link (non-custodial). Locks ``amount`` (base units) of ``token`` (mint) from ``sender_wallet`` into the on-chain claim escrow…
set_agnta_grant caller_idgrant_pda*wallet_address*
Opt a wallet into an AGNTA DelegationGrant spend/scope cap (non-custodial control plane). Validates grant_pda decodes as a base58 32-byte address, the on-chain account exists and…
set_alert token*caller_idthreshold*alert_type*webhook_urlwallet_address*
Create a price/position alert checked every 60s by Celery beat. alert_type: price_above | price_below | position_change. token is a mint address. Optional webhook_url is POSTed wh…
set_liquidation_alert marketprotocol*caller_idthreshold*webhook_urlwallet_address* +1
Arm a liquidation alert: notify when a lending obligation's health factor falls to or below threshold. protocol: kamino | marginfi (marginfi_account required for marginfi). thresh…
set_ooda_consent opted_in*caller_idwallet_address*kill_window_daysdaily_wake_budgetkill_threshold_ratio +1
Opt in/out of the wake-on-condition worker. Default OFF. When opted in, a triggered alert may run a metered background check (Haiku triage, escalating to Sonnet only if worth a cl…
set_permission_mode mode*caller_idwallet_address*
Change an agent wallet's session permission mode (non-custodial control plane). Ports Claude Code's plan/acceptEdits/bypassPermissions ladder to a wallet with signing power. mode:…
set_portfolio_charter cadencecaller_idrisk_bandobjectivesbanned_tokensbody_markdown +4
Write a new version of the wallet's portfolio charter (free control-plane write). Creates a new active version -- the prior version stays in history, never deleted (versioned mand…
set_wallet_policy policies*caller_idwallet_address*
Configure the caller's own trading limits and rules on an agent wallet. policies: a list of {policy_type, value, enabled?} objects. policy_type is one of max_trade_size {"usd"} |…
share_journal_card read-only platformcaller_iddecision_id*wallet_address*include_rationale
Pre-filled post for a journal card, ready to publish (free read). Returns the same card as get_journal_card plus a platform-shaped share payload: post text within the platform's c…
short_close can modify data ipmarketshort_id*caller_idjurisdictionpay_in_crank +6
Close a tracked short: buy token -> repay loan -> withdraw collateral. Returns an ORDERED STEP PLAN + exit price. short_id from short_open. Past the daily free tier an x402 paymen…
short_open can modify data ipmarketprotocolcaller_idjurisdictionpay_in_crank +10
Open a lending-based short: deposit collateral -> borrow token -> sell. Returns an ORDERED STEP PLAN of UNSIGNED base64 txs to sign + broadcast in sequence, plus entry price + hea…
short_status read-only caller_idwallet_address*
List open shorts for a wallet with entry price + health factor.
sidecar_health read-only caller_id
Live reachability probe against the deployed execution sidecar. Thin wrapper around ``sidecar_service.is_configured``/``healthcheck`` -- THE tool that replaces a tester's local ``…
sr_backtest read-only asset*paramsfee_bpsend_date*caller_idsr_config +7
Backtest a strategy with an S/R config block (read-only simulation). Runs the existing backtest engine with strategy_type (default "support_resistance": bounce-long off detected s…
sr_configure_strategy read-only caller_idsr_config*strategy_id*wallet_address*
Attach an S/R config block to YOUR OWN strategy (ownership-checked). Persists an `sr` param block (SRConfig knobs: sensitivity, sources, lookback, swing_window, zone_width_bps, me…
sr_detect_levels read-only asset*sourceslookbackcaller_idtimeframessensitivity +2
Multi-timeframe support/resistance zones + liquidity bands (read-only). Detects S/R zones per timeframe from recent OHLCV (swing highs/lows, floor pivots, Fibonacci retracement, v…
strategy_arb_create can modify data riskema_periodslippage_bpssource_tokentarget_token*usd_per_trade* +4
Create an arb strategy -- cross-venue price-discrepancy convergence (APPROXIMATE). Reads a live cross-venue spread each tick (task-sourced from the Jupiter quote corpus vs on-chai…
strategy_basis_trade_create can modify data riskvenueleveragemin_fundingslippage_bpstarget_token* +5
Create a basis-trade strategy -- funding-harvest perp SHORT leg (APPROXIMATE). Routes the perp leg through the multi-venue VENUE ADAPTER (hard rule 2). A live delta-neutral basis…
strategy_cancel strategy_id*wallet_address*
Stop a strategy (sets status=stopped; it will not be dispatched again).
strategy_composite_create can modify data moderiskdefinition*wallet_address*interval_seconds
Create a composite strategy from a validated definition. Same non-custodial create path as the other 16 strategy types: the wallet holds its own keys; a wallet without a Turnkey s…
strategy_copy_wallet_create can modify data riskallow_shortusd_per_buy*slippage_bpssource_tokentarget_token* +6
Create a copy-wallet strategy -- mirrors a tracked wallet's entries/exits. ``tracked_wallet`` is the Solana address to mirror (its confirmed on-chain buy/sell actions are sourced…
strategy_dca_create can modify data risksmartallow_shortusd_per_buy*slippage_bpssource_token +5
Create a dollar-cost-average strategy buying ``usd_per_buy`` of target each interval. ``risk`` (optional) overrides the safe-default risk limits: ``max_position_pct`` / ``max_port…
strategy_equity_dca_create can modify data risksmartallow_shortusd_per_buy*slippage_bpssource_token +5
Create an equity dollar-cost-average strategy (tokenized equities / xStocks). Shares the DCA executor -- identical mechanics/config to ``strategy_dca_create`` -- tagged ``equity_d…
strategy_hedge_create can modify data risktrailingallow_shortentry_priceslippage_bpssource_token +9
Create a hedge strategy -- an exit trigger that unwinds a held position. Shares the stop-loss executor -- identical config/mechanics to ``strategy_stoploss_create`` -- framed as a…
strategy_list read-only detailwallet_address*
List a wallet's strategies (newest first, capped). ``detail``: "concise" (default) trims each row to strategy_id/strategy_type/status -- the IDs needed to chain into strategy_stat…
strategy_market_make_create can modify data riskmax_levelsmid_periodslippage_bpssource_tokentarget_token* +6
Create a market-make strategy -- two-sided spread capture (APPROXIMATE). No live order book -- SYNTHESISES a spread from realised volatility around a rolling mid: a "filled bid" (…
strategy_modify can modify data riskreasonallow_shortremove_keysstrategy_id*config_updates +5
Edit a running strategy's parameters IN PLACE -- no cancel + recreate. React to a fresh signal by retuning the strategy you already own: the execution history, cost-basis ledger a…
strategy_momentum_create can modify data fastriskslowallow_shortusd_per_buy*slippage_bps +6
Create a momentum strategy -- fast/slow SMA crossover entry/exit. Buys on a bullish cross (fast SMA > slow SMA), sells on a bearish cross. DISCRETIONARY (SEC framework): the model…
strategy_pause strategy_id*wallet_address*
Manually pause a strategy (status=paused_manual; stops dispatch).
strategy_perp_grid_create can modify data riskvenueleveragegrid_levelscenter_priceslippage_bps +9
Create a perp-grid strategy -- a ladder of perp LONGS accumulated on dips. Routes through the multi-venue perps VENUE ADAPTER (hard rule 2; Jupiter Perps primary). Around a rollin…
strategy_protect_create can modify data risktrailingallow_shortentry_priceslippage_bpssource_token +9
Create a downside-protection monitor on a held position. Shares the stop-loss executor -- identical config/mechanics to ``strategy_stoploss_create`` -- framed as a pure downside g…
strategy_rebalance_create can modify data riskallow_shortslippage_bpsdirection_modewallet_address*regime_override +3
Create a portfolio-rebalance strategy toward ``target_allocation`` (mint->weight). Direction (optional, deterministic signal): ``direction_mode`` / ``allow_short`` / ``regime_over…
strategy_resume can modify data strategy_id*wallet_address*
Re-enable a paused strategy (manual re-enable after a drawdown pause). The drawdown kill switch latches a strategy to ``paused_drawdown`` and requires this explicit owner action t…
strategy_sentiment_create can modify data riskallow_shortusd_per_buy*slippage_bpssource_tokentarget_token* +7
Create a sentiment strategy -- trades an aggregate sentiment score. Buys when the score is >= ``bull_threshold`` (flat), sells when it is <= ``bear_threshold`` (holding); the neut…
strategy_snipe_create can modify data risklookbackallow_shortusd_per_buy*slippage_bpssource_token +8
Create a snipe/scalping strategy -- dip-buy with a fast take-profit/stop exit. Flat: buys ``usd_per_buy`` when price is ``entry_dip_pct`` below the close ``lookback`` ticks ago. H…
strategy_status read-only strategy_id*wallet_address*
Status + last execution of one strategy (scoped to the caller's wallet).
strategy_stoploss_create can modify data risktrailingallow_shortentry_priceslippage_bpssource_token +9
Create a stop-loss / take-profit / trailing-stop monitor on a held position. ``position_amount`` is base units of ``target_token`` to liquidate on trigger. At least one of ``stop_…
strategy_vault_create can modify data riskallow_shortslippage_bpsdirection_modewallet_address*regime_override +3
Create a vault strategy -- a target-allocation basket held via rebalancing. Shares the rebalance executor -- identical config/mechanics to ``strategy_rebalance_create`` (``target_…
strategy_yield_farm_create can modify data riskallow_shortslippage_bpsdirection_modewallet_address*regime_override +3
Create a yield-farm strategy -- maintains a target basket allocation. Shares the rebalance executor (config identical to ``strategy_rebalance_create``): depositing into an externa…
suggest_parameter_adjustment read-only caller_idstrategy_id*wallet_address*
Historical parameter observations for one of YOUR strategies (free read). Compares the strategy's realised outcomes against your other strategies of the same type that ran differe…
token_info read-only symbolcaller_idtoken_address
Token metadata, price, liquidity, volume, holder count. Provide token_address (mint) or a known symbol. Merges Helius (metadata) with Birdeye (market data). Free (no technology s…
trade_equity can modify data ipside*amount*symbol*verifyconfirm +10
Spot-trade a tokenized equity (xStocks / Ondo) via Jupiter, non-custodial. side: buy | sell. amount is in base units of the INPUT token (USDC 6dp for a buy, the equity token for a…
unpublish_journal_card read-only caller_iddecision_id*wallet_address*
Withdraw a published journal card (free write). Publishing a decision with share_journal_card is an explicit act by the owner; this is the equally explicit act of taking it back.…
unstake_lst can modify data amount*verifycaller_idlst_token*pay_in_crankpayment_header +3
Unstake an LST back to SOL (non-custodial). lst_token is a mint (mSOL/jitoSOL/bSOL); amount in base units. mSOL routes via Marinade, others via the Sanctum router. Returns an UNSI…
update_agent_profile metadata*caller_idwallet_address*
Patch an agent profile's metadata (display_name, capabilities, endpoints). metadata is a dict of writable fields; capabilities are validated if present.
venue_risk_comparison read-only venue_a*venue_b*caller_id
Side-by-side risk comparison of two venues for a routing decision. Read-only. Returns each venue's full risk record, the safer venue, and the composite-score delta. e.g. compare "…
verify_token read-only symbolcaller_idtoken_address*
Multi-layer authenticity check for a token mint (read-only, no execution). Runs the same five-layer verification the swap/trade tools enforce before building a transaction: regist…
verify_transaction read-only mintmarketprotocolcaller_idtimeout_scommitment +3
Verify any prior transaction signature on demand (FREE read). Post-trade verification (harness spec R13): awaits on-chain confirmation of ``tx_signature`` at ``commitment`` level…
verify_treasury_settlement_status read-only caller_idsince_isosignaturesexpected_usdsignature_limit
On-chain proof the treasury actually received settled x402 USDC. Wires ``services.x402_settlement.verify_treasury_settlement`` ( real on-chain proof: treasury USDC ATA balance rea…
wallet_status read-only caller_idwallet_address*
Current state, policy summary, recent activity, total volume, and tier.