Know what you're signing — before you sign it.
The most dangerous moment for an agent is the signature — after it, nothing is reversible. This decodes an unsigned transaction into plain intent, dry-runs it against the live ledger (never submitted, never signed) for the exact balance changes and whether it would even succeed, and scans for XRPL's account-takeover and value-loss footguns: handing over your signing key, disabling your master key, enabling clawback, partial-payment tricks, trustlines to blocklisted issuers, sends to flagged addresses. The traps an EVM scanner can't see and nobody screens for XRPL agents.
MCP tool: check_transaction Price: $0.01 / callLayer 03 · Transaction intent
Parameters
| Param | Description |
|---|---|
transaction | the unsigned XRPL transaction (JSON object or string) |
account | signing account, if not already in the transaction's Account field (optional) |
Example
Call (MCP tools/call arguments):
{
"transaction": {
"TransactionType": "SetRegularKey",
"Account": "rYourAccount\u2026",
"RegularKey": "rSomeOtherAddress\u2026"
}
}
Result:
{
"ok": true,
"verdict": "danger",
"confidence": "high",
"transaction_type": "SetRegularKey",
"intent": [
"sets a RegularKey (rSomeOtherAddress\u2026) that can sign for rYourAccount\u2026"
],
"warnings": [
{
"severity": "danger",
"code": "regular_key_set",
"message": "grants rSomeOtherAddress\u2026 authority to SIGN transactions for your account. If that key is not one you control, this is account takeover."
}
],
"simulation": {
"available": true,
"would_succeed": true,
"engine_result": "tesSUCCESS",
"signer_net": [
{
"currency": "XRP",
"value": "-0.00001"
}
]
},
"source": "Cerberus XRPL engine + ledger simulation"
}
FAQ
How can you show what a transaction does without submitting it?
The XRP Ledger has a `simulate` method that runs an unsigned transaction against current ledger state and returns the real engine result and metadata — the exact balance changes per account — without ever submitting or signing it. This tool runs that dry-run and parses the balance changes, so you see what would happen before you commit.
What drain vectors does it catch that a normal wallet doesn't?
XRPL-specific account-takeover and value-loss patterns: SetRegularKey and SignerListSet (which hand signing authority over your account to another key), AccountSet disabling your master key or enabling clawback/global-freeze, the tfPartialPayment flag (where the delivered amount can be far less than the stated amount), trustlines to issuers on our rug blocklist, and payments to flagged or burn addresses.
Would it have told me a transaction was going to fail?
Yes. Because it simulates against live state, it catches transactions that would fail on-chain — insufficient funds, a destination that requires a destination tag (a common way to lose funds sent to exchanges), malformed fields — and reports the exact engine result, so you don't waste a fee or lose funds discovering it the hard way.
Which chains does this cover?
The XRP Ledger today — where transactions are typed and simulatable, and where no one else offers pre-sign intent screening for agents. EVM transaction simulation is a planned extension of this layer.
https://cerberusindex.com/mcp — see
the quickstart. Payment is automatic for x402-aware clients.
Verdicts are informational risk signals, not financial advice.