Ce que fait ce MCP
Provides quotes, execution payloads, status tracking, and token or chain discovery for non-custodial cross-chain cryptocurrency swaps.
Outils
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['chainId'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'chainId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'The destination chain to check BTC-source coverage on'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['chainId', 'filtered', 'coverage'], 'properties': {'chainId': {'type': 'number', 'description': 'Echoes the requested chain'}, 'coverage': {'type': 'object', 'description': 'Lowercased token address to the number of BTC venues (1-3) that route to it from native Bitcoin. Tokens no venue serves are omitted, not listed at 0', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'number'}}, 'filtered': {'type': 'boolean', 'description': "False means the upstream venue lists couldn't be reached right now â\x80\x94 coverage is empty and the answer is unknown, not 'nothing routes'. Treat like an outage: don't filter your token list on it"}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['fromAddress', 'toAddress', 'amountSats'], 'properties': {'network': {'enum': ['mainnet', 'testnet'], 'type': 'string', 'description': 'Defaults to mainnet'}, 'toAddress': {'type': 'string', 'description': 'depositAddress from ravn_execute'}, 'amountSats': {'type': 'string', 'description': 'depositAmount from ravn_execute, in satoshis'}, 'fromAddress': {'type': 'string', 'description': 'Your Bitcoin address holding the UTXOs to spend â\x80\x94 native SegWit (bc1qâ\x80¦) or Taproot (bc1pâ\x80¦) only'}, 'feeRateSatsPerVb': {'type': 'number', 'description': "Omit to use mempool.space's current halfHourFee estimate", 'exclusiveMinimum': 0}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['psbtBase64', 'inputCount', 'totalInputSats', 'feeRateSatsPerVb', 'estimatedFeeSats', 'changeSats'], 'properties': {'changeSats': {'type': 'string'}, 'inputCount': {'type': 'number'}, 'psbtBase64': {'type': 'string'}, 'totalInputSats': {'type': 'string'}, 'estimatedFeeSats': {'type': 'string'}, 'feeRateSatsPerVb': {'type': 'number'}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'array', 'items': {'type': 'object', 'required': ['chainId', 'name', 'shortName', 'nativeCurrency', 'explorerUrl'], 'properties': {'name': {'type': 'string'}, 'chainId': {'type': 'number'}, 'logoUrl': {'type': 'string'}, 'shortName': {'type': 'string'}, 'explorerUrl': {'type': 'string'}, 'nativeCurrency': {'type': 'object', 'required': ['name', 'symbol', 'decimals'], 'properties': {'name': {'type': 'string'}, 'symbol': {'type': 'string'}, 'decimals': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['quoteToken'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'quoteToken': {'type': 'string', 'description': 'The quoteToken returned by ravn_quote'}, 'refundAddress': {'type': 'string', 'description': 'Late-bound refund recipient if the swap fails, honoured by the same venues as destinationAddress. Every other venue fixes the refund address when it prices, and a DIFFERENT one here is rejected rather than silently ignored; supply refundAddress on ravn_quote instead'}, 'destinationAddress': {'type': 'string', 'description': 'Late-bound output recipient, honoured by venues that bind at execution time (Chainflip, Garden, Layerswap, Mayan, NEAR Intents, Rift, 2-hop). Every other venue fixes the recipient when it prices: a DIFFERENT address here is rejected rather than silently ignored. Supply destinationAddress on ravn_quote instead, which every venue honours'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['executionType', 'quoteToken'], 'properties': {'submit': {'type': 'object', 'description': "SIGNATURE only: { url, payload? } â\x80\x94 POST the signed payload(s) to ravn_status's ref via /api/v1/submit-signature", 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'deposit': {'type': 'object', 'description': 'DEPOSIT only', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'approval': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'statusRef': {'type': 'string', 'description': 'Poll ravn_status with this. Always set for DEPOSIT and compose; TRANSACTION otherwise uses the origin tx hash'}, 'typedData': {'type': 'object', 'description': 'SIGNATURE only', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'quoteToken': {'type': 'string', 'description': 'Pass to ravn_submit_signature and ravn_status. On compose this is the post-bind token from execute, not the original quote token'}, 'transaction': {'type': 'object', 'description': 'TRANSACTION only', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'approvalData': {'type': 'object', 'description': 'SIGNATURE only, 0x Gasless: a second EIP-712 payload some venues need signed for the approval itself', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'executionType': {'enum': ['DEPOSIT', 'TRANSACTION', 'SIGNATURE'], 'type': 'string'}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['status', 'venues'], 'properties': {'status': {'enum': ['ok', 'degraded'], 'type': 'string'}, 'venues': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'healthy'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'healthy': {'type': 'boolean'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['inputChainId', 'outputChainId', 'inputToken', 'outputToken', 'inputAmount', 'userAddress'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'inputToken': {'type': 'string', 'description': "Token contract address, or 0xEeeeeEeeeEeEeeEeEeEeeeEEeeeeEeeeeeeeEEeE for the chain's native coin"}, 'inputAmount': {'type': 'string', 'description': "Positive integer string, in the input token's smallest unit (no decimals)"}, 'outputToken': {'type': 'string', 'description': "Token contract address, or 0xEeeeeEeeeEeEeeEeEeEeeeEEeeeeEeeeeeeeEEeE for the chain's native coin"}, 'rankingMode': {'enum': ['best_output', 'fastest'], 'type': 'string', 'description': 'best_output (default) picks the highest net output; fastest picks the quickest-settling quote within slippageBps'}, 'slippageBps': {'type': 'integer', 'maximum': 5000, 'minimum': 1, 'description': 'Max acceptable slippage in basis points'}, 'userAddress': {'type': 'string', 'description': 'Address the input asset will be sent from'}, 'confidential': {'type': 'boolean', 'description': "Settle privately via NEAR Intents' Confidential Intents so the deposit and payout can't be linked on-chain. Only NEAR quotes it (NO_LIQUIDITY if it can't, never a public fallback). ~0.3 bps extra on EVM-to-EVM, ~5-8 bps extra when Bitcoin or Solana is a leg, and it can settle slower than a public swap (Bitcoin-source: 13 min public vs 43 min confidential) â\x80\x94 read estimatedTimeSeconds before executing"}, 'inputChainId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Numeric chain id, e.g. 1=Ethereum, 8453=Base, -1=Bitcoin, -2=Solana â\x80\x94 see ravn_chains for the full list, or ravn_health for live venue status'}, 'excludeVenues': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Drop specific venues from this race, e.g. a risk objection to one of them or ravn_health showing it degraded. Naming a venue that was never eligible for this pair is a no-op, not an error'}, 'outputChainId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Numeric chain id, e.g. 1=Ethereum, 8453=Base, -1=Bitcoin, -2=Solana â\x80\x94 see ravn_chains for the full list, or ravn_health for live venue status'}, 'refundAddress': {'type': 'string', 'description': 'Where to refund the input asset if the swap fails. Required here, at quote time, for a Bitcoin-source Relay or THORChain quote â\x80\x94 neither has an execute-time re-bind, so omitting it returns a priced-but-unexecutable preview and supplying it later on ravn_execute has no effect. Other BTC-source venues (Garden, Chainflip, Rift) support binding this at execute time instead. Validated against the INPUT chain (refunds are paid back on the origin), with the same non-wallet-address check as destinationAddress'}, 'destinationAddress': {'type': 'string', 'description': "Where output should land, if different from userAddress. Required here, at quote time, to get an executable quote from Relay (Bitcoin as the source), THORChain (Bitcoin either direction), Across (a Solana-touching route), or Eco (a cross-ecosystem route) â\x80\x94 omit it there and you get back a priced-but-unexecutable preview instead (see ravn_quote's executable), not an error. A malformed address, one from the wrong ecosystem, or a known non-wallet address (a RAVN-listed token's mint/contract, this swap's own tokens, the native-coin sentinel, burn addresses, Solana core programs, and via an on-chain lookup a Solana token account or program â\x80\x94 the token-account error names the owning wallet, which is the address to use) IS an error here â\x80\x94 funds sent there are unrecoverable. Omit the field rather than passing an empty string; an empty string is treated as omitted"}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['quoteToken', 'venue', 'routeType', 'input', 'output', 'fee', 'executable', 'slippage', 'gas', 'inputUsd', 'outputUsd', 'estimatedTimeSeconds', 'estimatedTimeIsGuess', 'expiresAt', 'alternatives'], 'properties': {'fee': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'gas': {'anyOf': [{'type': 'object', 'required': ['native', 'nativeSymbol', 'usd', 'estimated'], 'properties': {'usd': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'native': {'type': 'string'}, 'estimated': {'type': 'boolean'}, 'nativeSymbol': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'The native gas the user must hold; null on gasless venues'}, 'hops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}, 'description': '2-hop / dest-call: the venues actually used. Sign hop 1; hop 2 is a unique deposit'}, 'input': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'venue': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'output': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'inputUsd': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': "USD value of the input amount, same price source as gas.usd. Null when the token can't be priced"}, 'slippage': {'anyOf': [{'type': 'object', 'required': ['bps', 'isFirm', 'guaranteedMin'], 'properties': {'bps': {'type': 'number'}, 'isFirm': {'type': 'boolean'}, 'guaranteedMin': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Null when the venue reports no slippage bound'}, 'expiresAt': {'type': 'number'}, 'outputUsd': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'USD value of the output amount. Compare against inputUsd for price impact'}, 'routeType': {'type': 'string'}, 'executable': {'type': 'boolean', 'description': 'False = preview-only price, priced against a placeholder destination/refund address. ravn_execute will fail with QUOTE_NOT_EXECUTABLE â\x80\x94 request a fresh quote with destinationAddress/refundAddress supplied instead'}, 'quoteToken': {'type': 'string', 'description': 'Opaque token â\x80\x94 pass to ravn_execute'}, 'alternatives': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'description': 'Every other venue that raced and produced a usable quote, best output first. Each has its own quoteToken to pass to ravn_execute instead. Empty when no other venue could serve this pair, or when a route was excluded via excludeVenues'}, 'estimatedTimeIsGuess': {'type': 'boolean', 'description': "True when the time is RAVN's estimate, not the venue's own figure"}, 'estimatedTimeSeconds': {'type': 'number'}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['quoteToken', 'ref'], 'properties': {'ref': {'type': 'string', 'description': 'deposit address (DEPOSIT venues) or statusRef (SIGNATURE venues) from ravn_execute'}, 'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'quoteToken': {'type': 'string', 'description': 'The quoteToken from ravn_quote â\x80\x94 the venue is decoded from it'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['status', 'venue'], 'properties': {'venue': {'type': 'string'}, 'status': {'type': 'string'}, 'txHash': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The destination-chain tx that paid the user out, when the venue names one. Only populated once status is terminal (success/refunded/failed), never while still in flight'}, 'tracking': {'type': 'string', 'const': 'unavailable', 'description': 'Present instead of venueStatus when this venue has no live tracker yet'}, 'venueStatus': {'type': 'string'}, 'deliveredAmount': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': "Actual delivered output, in the output token's smallest unit, when the venue exposes it"}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['quoteToken', 'signature'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'signature': {'type': 'string', 'pattern': '^0x[0-9a-fA-F]+$', 'description': 'Signature over the typedData from ravn_execute'}, 'quoteToken': {'type': 'string', 'description': 'The quoteToken from ravn_quote'}, 'approvalSignature': {'type': 'string', 'pattern': '^0x[0-9a-fA-F]+$', 'description': '0x Gasless only: signature over approvalData, when ravn_execute returned one'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['statusRef', 'venue'], 'properties': {'venue': {'type': 'string'}, 'statusRef': {'type': 'string', 'description': 'Pass to ravn_status as `ref` to poll this swap'}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['chainId'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'chainId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Numeric chain id, e.g. 1=Ethereum, 8453=Base, -1=Bitcoin, -2=Solana â\x80\x94 see ravn_chains for the full list, or ravn_health for live venue status'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'array', 'items': {'type': 'object', 'required': ['symbol', 'name', 'address', 'decimals', 'chainId', 'isNative'], 'properties': {'name': {'type': 'string'}, 'symbol': {'type': 'string'}, 'address': {'type': 'string'}, 'chainId': {'type': 'number'}, 'logoUrl': {'type': 'string'}, 'decimals': {'type': 'number'}, 'isNative': {'type': 'boolean'}}, 'additionalProperties': False}}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Schéma d’entrée
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['chainId', 'address'], 'properties': {'apiKey': {'type': 'string', 'description': 'Your RAVN API key, if you have one â\x80\x94 raises your rate limit'}, 'address': {'type': 'string', 'description': 'Token contract address / mint to resolve'}, 'chainId': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Numeric chain id, e.g. 1=Ethereum, 8453=Base, -1=Bitcoin, -2=Solana â\x80\x94 see ravn_chains for the full list, or ravn_health for live venue status'}}}
Schéma de sortie
{'type': 'object', 'anyOf': [{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'object', 'required': ['token'], 'properties': {'token': {'type': 'object', 'required': ['symbol', 'name', 'address', 'decimals', 'chainId', 'isNative'], 'properties': {'name': {'type': 'string'}, 'symbol': {'type': 'string'}, 'address': {'type': 'string'}, 'chainId': {'type': 'number'}, 'logoUrl': {'type': 'string'}, 'decimals': {'type': 'number'}, 'isNative': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'object', 'required': ['error', 'meta'], 'properties': {'meta': {'type': 'object', 'required': ['requestId', 'version'], 'properties': {'version': {'type': 'string'}, 'requestId': {'type': 'string'}}, 'additionalProperties': False}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'details': {}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}], '$schema': 'https://json-schema.org/draft/2020-12/schema'}
Modifications récentes des outils
Serveurs MCP similaires
Delx Commerce — Pay-per-Result APIs for Agents
Provides pay-per-result APIs and agent protocol tools for continuity, multi-agent coordination, document OCR, and crypto-related …
SAP MCP Server
Provides an MCP gateway connecting SAP-related tools with Solana, DeFi, decentralized identity, and x402 payments.
TheProtocol — Sovereign AI Agent Platform
Manages sovereign AI agents, identities, contracts, payments, governance, exchanges, and cross-frame token transfers.
The Stall
Provides pay-per-call tools for YouTube keyword research and research on stocks, crypto, DeFi, options, and macroeconomic data.
Crank Protocol
Provides non-custodial Solana and EVM tools for swaps, derivatives, lending, staking, tokenized equities, bridging, and strategy …
x402-services
Provides on-chain, trading, and AI tools for Robinhood Chain.
apex-x1
Provides X1 and Arc token screening, liquidity and exit-risk checks, wallet and bridge data, non-custodial token operations, comm…
Crypto Bot Audit + Market Data (x402 paid)
Audits crypto bot source code and provides paid crypto market, token, gas, stablecoin, and DeFi TVL data.