Skip to content
Eden Engine

XRP Ledger Order Book

xrplrpc/book-offers

The offers on the XRP Ledger's built-in exchange for one currency pair at the newest ledger, best price first, 1 to 20 per call: who offers, how much they give (`taker_gets`) and want (`taker_pays`), and the quality. XRP amounts are drops strings; issued-currency amounts are objects with a decimal string `value`. Read from the public Honeycluster XRP Ledger server, which offers no SLA, can be slow, throttled or a ledger behind, and is the only server: there is no failover. Served by Eden Engine; not an official product of the XRP Ledger Foundation, Ripple or any server operator.

activeper callv1

Price

$0.0026 per call

You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.

Data source

Public blockchains

On-chain data read from public XRP Ledger servers; no licence or credit is required. Served by Eden Engine; not an official product of the XRP Ledger Foundation, Ripple or any server operator.

Use it

Your AI assistant does the work: it finds this tool, shows you the price first, runs it, and you are charged when the run finishes. There is nothing to set up for this tool in particular.

Connect once and your AI can find and run this tool, and any other it needs.

For developers: the calls your assistant makes
agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "xrplrpc/book-offers" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "xrplrpc/book-offers" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "xrplrpc/book-offers", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "xrplrpc/book-offers", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0026
Updated
Oct 28, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "network",
    "taker_gets",
    "taker_pays"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 20,
      "minimum": 1,
      "description": "Offers to return, 1 to 20 (default 10)."
    },
    "network": {
      "enum": [
        "mainnet"
      ],
      "type": "string",
      "description": "The network to read: mainnet (XRP Ledger mainnet). Required; there is no default, so a call never reads the wrong chain silently."
    },
    "taker_gets": {
      "type": "object",
      "required": [
        "currency"
      ],
      "properties": {
        "issuer": {
          "type": "string",
          "pattern": "^r[1-9A-HJ-NP-Za-km-z]{24,34}$",
          "description": "The issuing account. Required for every currency except XRP, which has no issuer."
        },
        "currency": {
          "type": "string",
          "pattern": "^([A-Za-z0-9]{3}|[0-9A-Fa-f]{40})$",
          "description": "A 3-character currency code (XRP, USD, EUR) or a 40-hex-digit currency code."
        }
      },
      "description": "The currency the taker receives (what offers sell). For XRP give only {\"currency\": \"XRP\"}.",
      "additionalProperties": false
    },
    "taker_pays": {
      "type": "object",
      "required": [
        "currency"
      ],
      "properties": {
        "issuer": {
          "type": "string",
          "pattern": "^r[1-9A-HJ-NP-Za-km-z]{24,34}$",
          "description": "The issuing account. Required for every currency except XRP, which has no issuer."
        },
        "currency": {
          "type": "string",
          "pattern": "^([A-Za-z0-9]{3}|[0-9A-Fa-f]{40})$",
          "description": "A 3-character currency code (XRP, USD, EUR) or a 40-hex-digit currency code."
        }
      },
      "description": "The currency the taker pays (what offers want).",
      "additionalProperties": false
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "required": [
    "found",
    "offers"
  ],
  "properties": {
    "found": {
      "type": "boolean",
      "description": "False when the node has no such item; then no other field is present."
    },
    "offers": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      },
      "description": "Offers, best price first. `TakerGets` / `TakerPays` are a drops string (XRP) or {currency, issuer, value}."
    },
    "ledger_current_index": {
      "type": [
        "integer",
        "null"
      ]
    }
  },
  "description": "The best offers of one pair.",
  "additionalProperties": true
}