Tool Reference

The 22 MCP tools explained, purpose, example prompts, and the transaction format returned.

Tools

Discovery

ToolPurposeReturns
yields_get_allSearch and filter available yieldsPaginated yield summaries with identity, rewardRate, tvlUsd, status flags, lifecycle periods (cooldown/warmup/lockup), entry limits, and fee-mechanism flags
yields_getFull metadata for a specific yieldSingle yield with mechanics, required input fields for enter/exit/balance, validator requirement, capacity state, share token, and a top-level risk summary
yields_get_validatorsValidator options for delegation-based yieldsPaginated validators with identity, commission, votingPower, status, TVL, and reward rate
networks_get_allList all supported networksArray of network objects (id, name, category, logoURI)
providers_get_allList all yield protocols and validator providersPaginated providers (id, name, description, website, type, tvlUsd), type distinguishes protocol vs validator_provider

Diligence

ToolPurposeReturns
yields_get_riskGet aggregate risk rating for a yieldRisk-provider object with letter grade, numeric score, short description, and source URL plus updatedAt. Coverage strongest for vault-type yields
yields_get_reward_rate_historyHistorical APY / reward-rate snapshotsTime-series of {timestamp, rewardRate} points over a period (1d–all) with configurable day/week/month interval and pagination
yields_get_tvl_historyHistorical TVL snapshotsTime-series of {timestamp, tvl, tvlRaw} points. Same period and interval controls as reward-rate history. Coverage strongest for vault-type yields
yields_get_balancesActive positions, pending actions, and claimable rewards for a walletPer-yield balances with amount, position type, share-token info, and pendingActions[] carrying the passthrough
value needed by actions_exit / actions_manage
yields_get_kyc_statusKYC requirement + current verification state for a wallet on a given yieldKYC status object with kycRequired flag, current state (none / pending / approved / rejected), and authorizeUrl to start the verification flow when applicable.

Execution

ToolPurposeReturns
actions_enterBuild unsigned deposit/stake transaction(s)Action object containing one or more ordered, unsigned transactions (stepIndex order) with raw unsignedTransaction, gas estimate, and per-step status
actions_exitBuild unsigned withdrawal/unstake transaction(s)Same action-object shape as actions_enter, ordered txs to redeem, withdraw, or undelegate. Requires passthrough for some yields and validatorAddress for delegation-based yields
actions_manageBuild unsigned txs for claim, restake, vote, unlock, migrate, etc.Same action-object shape. The exact type (e.g. CLAIM_REWARDS, RESTAKE_REWARDS etc) depends on the yield mechanics and current position state

Tracking

ToolPurposeReturns
actions_getFetch status and transactions for a single actionAction object with current status, all transactions, hashes once broadcasted, and timestamps
actions_get_allList past and pending actions for a wallet, with filtersPaginated actions for an address. Filterable by network, intent (enter/exit/manage), type, yieldId, and one or more statuses[] (e.g. all pending = ["CREATED","PROCESSING"])
get_transactionPoll the status of a single transactionTransaction object with status, hash, broadcastedAt, and the raw signed/unsigned payloads
submit_hashRegister a broadcast hash against an unsigned transactionUpdated transaction object with hash and broadcastedAt populated; advances internal status from CREATED to BROADCASTED so subsequent polling and action-status updates work

Builder

ToolPurposeReturns
yield_lookup_docsSearch the live docs indexRanked doc pages (title, section, .md URL)
yield_fetch_docRead a full docs pageFull markdown of a docs.yield.xyz page with exact field names and examples
yield_get_api_specQuery the live OpenAPI specEndpoint schemas, field constraints, required flags, and error shapes; filterable by endpoint, method, or keyword
yield_troubleshoot_errorDiagnose API errorsExplanation of an error code or status, plus the authoritative error shape from the live spec
yield_list_reposFind working reference codePublic Yield.xyz repos (widget, SDKs, recipes, signing libraries) with raw-file fetch patterns

Risk Scoring

Provides an at-a-glance assessment of protocol safety for a given yield. The response includes a letter grade, a numeric score (where lower means safer), and a link to the rating provider's site for the full breakdown.

Risk ratings are sourced from a third-party provider and currently have the strongest coverage for vault-type yields. The exact field names and schema may evolve as the underlying provider changes.


Transaction Format

Transaction-generating tools (actions_enter, actions_exit, actions_manage) return an intent execution object:

{
  "id": "string",
  "intent": "enter | exit | manage",
  "type": "STAKE | UNSTAKE | SUPPLY | ...",
  "yieldId": "string",
  "address": "string",
  "amount": "string",
  "amountUsd": "string",
  "executionPattern": "synchronous | asynchronous | batch",
  "status": "CREATED | PROCESSING | COMPLETED | FAILED",
  "createdAt": "ISO timestamp",
  "transactions": [
    {
      "stepIndex": 0,
      "id": "string",
      "type": "APPROVAL | SUPPLY | UNSTAKE | CLAIM | ...",
      "title": "string",
      "network": "string",
      "status": "CREATED | BROADCASTED | CONFIRMED | FAILED",
      "hash": "string | null",
      "unsignedTransaction": "object (EVM) | string base64 (Solana) | chain-dependent",
      "gasEstimate": {
        "amount": "string",
        "gasLimit": "string",
        "token": {
          "symbol": "string",
          "network": "string",
          "decimals": "number"
        }
      }
    }
  ]
}

Transaction Fields

FieldTypeDescription
stepIndexnumberExecution order, must be followed sequentially
idstringTransaction ID, used to submit the tx hash after broadcast
typestringAction type, APPROVAL, SUPPLY, UNSTAKE, CLAIM etc.
titlestringHuman readable label e.g. "SUPPLY Transaction"
networkstringTarget chain e.g. "arbitrum", "solana"
statusstringLifecycle state: CREATEDBROADCASTEDCONFIRMEDFAILED
hashstring | nullTx hash — null until broadcasted
unsignedTransactionobject | stringEVM: object with from, to, data, chainId etc. Solana: base64 string. Do not modify.
gasEstimateobject{ amount: string, gasLimit: string, token: { symbol, network, decimals } }


What’s Next

Did this page help you?