XRPL Token Guard

io.github.RiehnbeanPublished by GitHub account Riehnbeanv0.1.0Updated Oct 25, 2026

Read-only XRP Ledger token-risk, issuer-authenticity and wallet-security checks.

VerifiedStreamable HTTPWeb executableFinanceSecurity & Monitoring

Overview

AI-generated overview

A read-only MCP server that checks XRP Ledger tokens for impersonation and issuer risk, and checks wallets for drainer-style signer changes.

What you can do
Check a token's safety: verdict, reasons and a spoken summary covering impersonation, issuer mint/freeze/clawback powers, transfer fees, domains, holder concentration and AMM liquidity. Confirm whether a ticker such as RLUSD, USDC or SOLO comes from the official issuer. Check a wallet for an unexpected regular key or multisig signer list, flagging recent changes as urgent. Use a voice-oriented prompt that keeps answers to two sentences without buy/sell advice.
When to use it
Useful when an assistant is asked whether an XRP Ledger token is genuine or safe, or whether a wallet has been compromised, and the answer should be short enough to speak. It suits quick pre-trade sanity checks and voice-assistant demos rather than deep due diligence.
Requirements
The hosted endpoint is a remote Streamable HTTP server; a local clone can be built with npm and run over stdio or HTTP. No API keys or wallet credentials are needed. It queries public XRPL JSON-RPC endpoints, configurable via XRPL_RPC_URLS, and the hosted service is rate limited to 60 requests per minute per IP.
Before you install
Read-only: it does not sign, send transactions or ask for keys. Verdicts are mechanical ledger facts at check time, not financial advice or a guarantee of safety, and the 0-100 score is only a rough guide. The README mentions separate paid reports (5, 3 and 10 XRP) and a pay-per-call API from the same provider; Token Guard itself stays free.

Installation

In SourceWeft

  1. Open XRPL Token Guard in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.Riehnbean%2Fxrpl-token-guard/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "xrpl-token-guard": {
      "type": "http",
      "url": "https://cocoeatsai.com/area4/guard/mcp"
    }
  }
}

README

XRPL Token Guard

Ask your AI agent, or your voice assistant, "is this token safe?" and get an honest answer with reasons.

XRPL Token Guard is an open-source MCP server. It checks XRP Ledger tokens and wallets using live, read-only mainnet data, and returns three things:

  • a verdict: High risk / Caution / No red flags found / Not enough data
  • the reasons behind it, each naming the exact ledger fact
  • a one-sentence spoken summary, ready for text-to-speech on Alexa+ or any other voice assistant

It never signs, never sends a transaction and never asks for keys.

Need more than a quick check?

Try the free hosted demo or browse the free token evidence pages. Launch Lab offers a Token Report for 5 XRP, a Wallet Checkup for 3 XRP, and a Token Launch Kit for 10 XRP. Preview the findings before choosing a paid report. These are factual ledger checks, not buy/sell advice or a guarantee of safety; Token Guard stays free.

Hosted MCP: https://cocoeatsai.com/area4/guard/mcp (Streamable HTTP). The hosted demo supports typed questions and example buttons; microphone input is currently disabled by the hosting policy. It is a voice-assistant simulator, not an actual Alexa integration.

For Claude Desktop (claude_desktop_config.json) or Cursor (.cursor/mcp.json), build a local clone using the commands below, then replace the absolute path in this configuration:

json
{"mcpServers": {  "xrpl-token-guard": {"command": "node", "args": ["/absolute/path/to/xrpl-token-guard/dist/stdio.js"]}}}

Example risk interpretation (not a trading recommendation):

You:    "Is this RLUSD real?"Guard:  "Warning, high risk. This token calls itself RLUSD, but it is not the real Ripple USD.         The real one comes from a different issuer. A matching name does not establish authenticity."

Why it exists

Scammers on the XRP Ledger copy famous names. On mainnet today there are several tokens called RLUSD that aren't Ripple's. Many of them have a black-holed issuer, which naive checkers score as "safe" because nobody can mint more. Token Guard knows the official issuers and flags the copy first. It explains that a locked supply doesn't make an imitation genuine.

Answers have to be short enough to speak and specific enough to trust. Every finding carries both a precise message (for screens and agents) and a spoken line (for voice).

Tools

ToolWhat it answersLedger calls
check_token_safety"Is this token safe?" Checks for: imitations of RLUSD/USDC/SOLO, issuers that can still mint, freeze or claw back, Global Freeze, transfer fees, unverified or launchpad-only domains, whale concentration (AMM pool excluded), thin AMM liquidity, brand-new issuers.account_info, gateway_balances, amm_info, account_lines, account_tx
is_it_the_real_token"Is this the real RLUSD?" Answers instantly from verified official issuers (each issuer's on-ledger Domain points at the brand's own site).none
check_wallet_security"Was my wallet hacked?" Finds a stranger's regular key or multisig signer list (the classic drainer setup), and marks changes from the last 7 days as urgent.account_info, account_tx

There's also a prompt, voice_token_check, that tells a voice assistant how to answer: two sentences, the verdict and the main reason, no buy/sell advice.

Every tool has:

  • readOnlyHint: true
  • an outputSchema, with typed structuredContent in each response
  • a human-readable text block

Tickers are resolved case-insensitively against the issuer's real obligations, so asking for "bigds" finds $BIGDS.

Run it

bash
npm installnpm run buildnpm start                 # Streamable HTTP on http://127.0.0.1:8787/mcp, voice demo on http://127.0.0.1:8787/npm run stdio             # stdio transport for Claude Desktop / Claude Code / Cursornpm test                  # 14 unit + end-to-end MCP tests (LIVE=1 adds a mainnet check)

Transport: Streamable HTTP, MCP protocol 2025-11-25.

  • Stateless: every POST /mcp gets a fresh server, so it scales horizontally.
  • JSON responses.
  • Rate limit: 60 requests per minute per IP.
  • Origin allow-list via ALLOWED_ORIGINS.
  • GET /health reports the transport and protocol.

Docker:

bash
# Web demo + Streamable HTTP (default target)docker build -t xrpl-token-guard .docker run --rm -p 8787:8787 xrpl-token-guard
# stdio MCP clients / Glama: keep stdin open; do not allocate a TTYdocker build --target stdio -t xrpl-token-guard:stdio .docker run --rm -i xrpl-token-guard:stdio

For a Glama build spec that uses the default image, set CMD arguments to node dist/stdio.js. No API keys or wallet credentials are required.

Claude Desktop (claude_desktop_config.json):

json
{ "mcpServers": { "xrpl-token-guard": { "command": "node", "args": ["/path/to/xrpl-token-guard/dist/stdio.js"] } } }

Configuration

EnvDefaultMeaning
XRPL_RPC_URLShttps://xrplcluster.com,https://s1.ripple.com:51234,https://s2.ripple.com:51234Public XRPL JSON-RPC endpoints, tried in order
HOST / PORT127.0.0.1 / 8787Bind address
ALLOWED_ORIGINS(any)Comma-separated Origin allow-list for /mcp
TOKEN_GUARD_LINKSonAdds a link to a free ledger-evidence page for the token when one exists; off disables it

Voice demo (Alexa+-style simulator)

Open http://127.0.0.1:8787/ and tap the mic (Chrome), or type.

  • The page is a small MCP client that speaks Streamable HTTP to /mcp. It turns the question into a tool call and reads spoken_summary aloud.
  • The right-hand panel shows the live tools/call request and result.
  • /?demo=1 plays a scripted run with captions, for screen recording.

How the verdict works

SeverityExamplesEffect
⛔ highimpersonation of an official token, Global Freeze on, clawback enabled, issuer doesn't exist, nothing issuedverdict High risk
⚠️ cautionissuer can mint / freeze, >1% transfer fee, one wallet >50% or top 10 >80% (AMM pool excluded), fewer than 25 holders, under 500 XRP of AMM liquidity, issuer under 14 days old, domain doesn't list the issuerverdict Caution
✅ good / ℹ️ infoofficial issuer, black-holed supply, verified domain, deep liquiditycontext only

Regulated stablecoins may retain issuer controls. Official identity remains separate from the control-policy verdict: clawback is a hard failure, even for an official issuer. The score (0–100) is a rough guide only. Not financial advice. These are ledger facts at the time of the check.

Built by

Zach Riehn (Launch Lab, XRPL tools for people and AI agents). Launch Lab also runs a pay-per-call x402 API (XRP/RLUSD on XRPL, USDC on Base) for deeper wallet and token reports. Token Guard is the free, open core.

MIT licensed.

Issuer-control policy (2026-10-18)

The freeze-control condition passes when NoFreeze is set OR master is disabled, RegularKey is exactly rrrrrrrrrrrrrrrrrrrrBZbvji, and no signer list exists. Clawback permission is a hard failure for every issuer, including regulated stablecoins; Global Freeze already active is also a failure. The MCP structured output reports freeze_control_pass, issuer_controls_pass and the exact rule. A missing regular key is not the requested blackhole proof. NoFreeze alone does not prevent minting or enabling Global Freeze. Identity, concentration and other checks still apply. Scores are mechanical, not probabilities of safety.

Source: README.md at commit 92fbda9

Tools

3

check_token_safety

Check an XRPL token's safety

Live safety check of an XRP Ledger token (issued currency). Detects fake look-alikes of famous tokens (e.g. a fake RLUSD), issuers that can still mint, freeze or claw back, global freezes, transfer fees, unverified domains, whale concentration, thin AMM liquidity and brand-new issuers. Returns a verdict (High risk / Caution / No red flags found / Not enough data), the reasons behind it with the exact ledger facts, and a one-sentence spoken summary.

Parametersissuerrequiredcurrencyrequired

is_it_the_real_token

Is this the real token?

Answers "is this the real RLUSD / USDC / SOLO?" using the verified official issuers (RLUSD: rMxCKbEDwqr76QuheSUMdEGf4B9xJ8m5De; USDC: rGm7WCVp9gb4jZHWTEtGUr4dd74z2XuWhE; SOLO: rsoLo2S1kiGeCcn6hCUXVrCpGMWLrRrLZz). Give the ticker alone to learn the official issuer, or ticker + issuer to confirm or expose an imitation. Instant, no ledger call.

Parametersissuertickerrequired

check_wallet_security

Check an XRPL wallet for takeover signs

Checks whether anyone besides the owner can sign for an XRPL wallet: an unexpected regular key or multisig signer list (the classic drainer setup), and flags changes made in the last 7 days as urgent. Read-only.

Parametersaddressrequired

Version history

1
  1. v0.1.0LatestOct 18, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts