Criptonlabs Agent APIs
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Read-only XRPL and Solana data for agents: fees, slippage, readiness. Free /mcp; x402 /mcp/pro.
| Author | com.criptonlabs |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 529 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Criptonlabs Agent APIs": {
"url": "https://api.criptonlabs.com/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (16)
xrpl_feeread-onlyCurrent XRPL fee tiers in drops with a congestion score. When to use: Before submitting a transaction, to choose a `Fee` and to decide whether the network is congested. Prefer another tool: Not a price feed and not a historical series; it describes the latest validated ledger only. Example: xrpl_fee {}
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_network_healthread-onlyOverall and per-node health of the upstream XRPL nodes. When to use: To decide whether to trust or retry data, or to explain a 503 from another endpoint. Prefer another tool: Not a probe of your own connectivity; it reports the service's upstream nodes. Example: xrpl_network_health {}
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_orderbookread-onlyCLOB order book for a currency pair with unfunded offers removed. When to use: To read executable liquidity for a pair on the XRPL central limit order book (CLOB). Prefer another tool: Not for AMM liquidity (use the amm page) and not for a cost estimate (use the slippage page). Example: xrpl_orderbook {"base":"XRP","quote":"USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
base(required) — string — Base currency: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)quote(required) — string — Quote currency: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)depth— string — Levels per side: a positive integer, rounded up to 10, 50, 100 or 200 (max 200)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_slippageread-onlySlippage and average price for buying an amount of base currency. When to use: Before placing a market-style trade, to size it against available depth and to see whether the CLOB or the AMM pool is the cheaper venue. Prefer another tool: It is an estimate, not a quote, and it does not split an amount across venues or route through other pairs. To read pool reserves, use the amm page. Example: xrpl_slippage {"base":"XRP","quote":"USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh","amount":"1000"}
Parameters:
base(required) — string — Base currency: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)quote(required) — string — Quote currency: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)amount(required) — string — Positive decimal amount of base to buydepth— string — Levels per side: a positive integer, rounded up to 10, 50, 100 or 200 (max 200)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_ammread-onlyAMM pool reserves and trading fee for an asset pair. When to use: To read AMM pool depth and fee for a pair. Prefer another tool: It does not estimate slippage or compare venues (use the slippage page for the CLOB vs AMM comparison); a pair without a pool returns 404. Example: xrpl_amm {"a":"XRP","b":"USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
a(required) — string — First asset: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)b(required) — string — Second asset: `XRP` (no issuer) or `CODE.issuer` with a valid classic-address issuer (e.g. `USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh`)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_account_summaryread-onlyXRP balance, sequence, owner count, transfer rate and trust lines (capped) for an account. When to use: To inspect an account before building a transaction for it. Prefer another tool: Not for transaction history, reserves or account flags; it is a summary, not a full account dump. Example: xrpl_account_summary {"address":"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
address(required) — string — Valid classic XRPL account address (r..., checksum verified)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_account_linesread-onlyOne page of an account's trust lines, with an opaque cursor for the next page. When to use: To list every trust line of an account (balances, limits, freeze and authorization flags), page by page. Prefer another tool: For a quick capped overview with the XRP balance, use `/v1/xrpl/account/{address}/summary`; for issued totals of a token, use the token endpoint. Example: xrpl_account_lines {"address":"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
address(required) — string — Valid classic XRPL account address (r..., checksum verified)peer— string — Only lines with this counterparty (classic address)limit— string — Lines per page: an integer from 10 to 400 (default 100)marker— string — Opaque cursor from the previous page's `marker`, for the same address
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_account_transactionsread-onlyOne page of an account's most recent validated transactions, newest first. When to use: To check what an account did recently (payments sent or received, offers, trust line changes) and whether each transaction succeeded. Prefer another tool: For balances and trust lines, use `/v1/xrpl/account/{address}/summary` or `/v1/xrpl/account/{address}/lines`; for full archival history, use a full-history node or indexer: history depth depends on the serving node and older pages may be slower. Example: xrpl_account_transactions {"address":"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
address(required) — string — Valid classic XRPL account address (r..., checksum verified)limit— string — Transactions per page: an integer from 1 to 50 (default 20)marker— string — Opaque cursor from the previous page's `marker`, for the same address
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_tokenread-onlyIssuer data for an issued asset: flags, domain, transfer fee and total issued. When to use: Before accepting or sending an issued token: check that the issuer exists, is not frozen, whether holders need authorization, and the transfer fee charged on every transfer between non-issuer accounts. Prefer another tool: For XRP (not an issued asset; 400), for one account's own balances use `/v1/xrpl/account/{address}/lines`, and for prices use `/v1/xrpl/orderbook` or `/v1/xrpl/amm/{a}/{b}`. Example: xrpl_token {"asset":"USD.rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh"}
Parameters:
asset(required) — string — Issued asset as CODE.issuer (3-character or 40-hex code, classic issuer address); not XRP
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_payment_readinessread-onlyPre-payment check: can this payment from source to destination succeed now? When to use: Right before sending a payment: to catch a missing or unfunded destination, a required destination tag, deposit authorization, missing or frozen trust lines, insufficient balance and issuer freezes, in one call. Prefer another tool: To find a multi-hop route or the source amount needed for a cross-currency payment (use the paths endpoint), or to list balances (use `/v1/xrpl/account/{address}/summary`). Example: xrpl_payment_readiness {"source":"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh","destination":"rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"}
Parameters:
source(required) — string — Sending account: valid classic XRPL address (r..., checksum verified)destination(required) — string — Receiving account: valid classic XRPL address, different from sourceasset— string — XRP (default) or CODE.issuer (3-character or 40-hex code, classic issuer)amount— string — Positive decimal amount of asset; omit to skip amount-dependent checksdestination_tag— string — Destination tag you will send: an integer from 0 to 4294967295
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_pathsread-onlyMulti-hop payment paths and their source cost. When to use: Before a cross-currency or multi-hop payment: to see whether a route exists and how much the source would spend to deliver the amount. A call can take up to about 20 seconds and paths may be non-optimal. Prefer another tool: To check whether a direct payment can succeed (use `/v1/xrpl/payment-readiness`), or for the single-hop cost of a trade on one pair (use `/v1/xrpl/slippage`, which compares the order book and the AMM). Example: xrpl_paths {"source":"rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh","destination":"rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B","asset":"XRP","amount":"1"}
Parameters:
source(required) — string — Sending account: valid classic XRPL address (r..., checksum verified)destination(required) — string — Receiving account: valid classic XRPL addressasset(required) — string — Asset delivered: XRP or CODE.issuer (3-character or 40-hex code, classic issuer)amount(required) — string — Positive decimal amount of asset the destination receivessend_max— string — Most the source may spend, in send_max_asset; not with source_assetssource_assets— string — Comma-separated assets the source may spend (1 to 4); not with send_maxsend_max_asset— string — Asset of send_max: XRP or CODE.issuer; give it with send_max
Hints: read-only yes · destructive no · idempotent yes · open-world yes
xrpl_latest_ledgerread-onlyLatest validated ledger index, hash and close time. When to use: To anchor other readings to a ledger or to check how current the network view is. Prefer another tool: Not for transaction data or account state; use the account endpoint for those. Example: xrpl_latest_ledger {}
Hints: read-only yes · destructive no · idempotent yes · open-world yes
solana_transfer_readinessread-onlyWill this Solana transfer succeed? A verdict for SOL or an SPL or Token-2022 token. When to use: Before building or signing a Solana transfer, to learn whether it will fail and what it will cost in rent and fees. Prefer another tool: Not a simulation of the exact transaction (no priority fee, no program logic), not a token price or holder lookup, and not a way to read raw accounts. Example: solana_transfer_readiness {"source":"83astBRguLMdt2h5U1Tpdq5tjFoJ6noeGwaY3mDLVcri","destination":"A1TMhSGzQxMr1TboBKtgixKz1sS6REASMxPo1qsyTSJd","mint":"SOL","amount":"0.5"}
Parameters:
source(required) — string — Sending wallet: Solana wallet address: a base58 string that decodes to exactly 32 bytesdestination(required) — string — Receiving wallet (not its token account): Solana wallet address: a base58 string that decodes to exactly 32 bytesmint(required) — string — `SOL` for native SOL, or the mint address of an SPL Token or Token-2022 tokenamount(required) — string — Positive decimal amount in UI units (SOL or tokens, not lamports or raw units)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
solana_tokenread-onlyIs this Solana token safe to hold or receive? A SAFE, WARN or DANGER verdict. When to use: Before accepting or swapping into an unfamiliar token, to see whether its mint can freeze, mint more, move or tax balances. Prefer another tool: Not a price, liquidity or holder lookup and not an audit of the token's project; it reads only the mint account. Example: solana_token {"mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"}
Parameters:
mint(required) — string — Mint address of an SPL Token or Token-2022 token (base58, 32 bytes)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
solana_latest_slotread-onlyLatest finalized Solana slot and its block time. When to use: To check how fresh the finalized view of Solana is, or to anchor a read to a slot. Prefer another tool: Not a tip-of-chain feed: it is finalized, not processed or confirmed, and it is cached for 2 seconds. Example: solana_latest_slot {}
Hints: read-only yes · destructive no · idempotent yes · open-world yes
solana_network_healthread-onlyWhether Solana data is currently being served: latest probe status and finalized slot. When to use: Before relying on the Solana verdict endpoints, or to explain a 503 from them. Prefer another tool: Not a measure of the Solana network itself, only of this service's access to it; use the latest-slot endpoint to see chain progress. Example: solana_network_health {}
Hints: read-only yes · destructive no · idempotent yes · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.