# xrpldashboard

> Public read-only data for the XRP Ledger, computed directly from XRPL and Ethereum nodes. Every page discloses its data source, cache TTL, and known limitations. No third-party analytics APIs feed any metric — price, volume, TVL, balances are all computed from on-chain state. Free for humans and identified crawlers.

Every public claim is catalogued in [CLAIMS.yaml](https://github.com/Enkryptedx/xrpldashboard/blob/main/CLAIMS.yaml) (Layer 4 of the four-layer truth audit — see [/methodology](https://xrpldashboard.com/methodology) and [docs/TRUTH_AUDIT_DESIGN.md](https://github.com/Enkryptedx/xrpldashboard/blob/main/docs/TRUTH_AUDIT_DESIGN.md)). Each claim carries a permanent URI at [/claims/xrpl.<domain>.<series>](https://xrpldashboard.com/claims) with a traffic-light sovereignty tier (green = own infrastructure / signable, yellow = public XRPL RPC or unverified, red = third-party derived). Machine-readable index: [https://xrpldashboard.com/claims/index.json](https://xrpldashboard.com/claims/index.json). Signed integrity snapshots are published daily.

## Data pages
- [/rlusd](https://xrpldashboard.com/rlusd): RLUSD supply history — cross-chain supply, mint/burn events (XRPL + Ethereum), computed live from both ledgers.
- [/whales](https://xrpldashboard.com/whales): XRPL whale transfers live — every XRP payment above 100,000 XRP, streamed as it validates.
- [/rwa](https://xrpldashboard.com/rwa): real-world-asset tokens on XRPL with issuer attestation.
- [/tokens](https://xrpldashboard.com/tokens): verified XRPL token supply — full token registry with domain-attested labels and on-ledger activity.
- [/mpts](https://xrpldashboard.com/mpts): MPT (Multi-Purpose Token) registry and issuer roll-ups.
- [/pools](https://xrpldashboard.com/pools): AMM pools ranked by TVL and volume.
- [/amendments](https://xrpldashboard.com/amendments): current XRPL amendment status — enabled, voting, and vetoed amendments with validator support tallies.
- [/analytics](https://xrpldashboard.com/analytics): first-party page-view analytics, bot-filtered.
- [/coverage](https://xrpldashboard.com/coverage): what this site covers versus the XRPL's canonical object-type inventory.
- [/lending](https://xrpldashboard.com/lending): LendingProtocol amendment status.
- [/regulation](https://xrpldashboard.com/regulation): plain-English CLARITY Act (H.R. 3633) status tracker.
- [/check](https://xrpldashboard.com/check): OFAC SDN, domain-age, and earliest-SSL-cert lookup for any XRPL address or URL.
- [/cold-storage](https://xrpldashboard.com/cold-storage): known cold-wallet balances.

## How this is computed
- [/methodology](https://xrpldashboard.com/methodology): per-surface freshness contracts, cache TTLs, data sources, known limitations. See especially the "For AI agents" section.
- [/about](https://xrpldashboard.com/about): mission, funding, principles.
- [/health](https://xrpldashboard.com/health): live infrastructure status endpoint.
- [/terms](https://xrpldashboard.com/terms): terms of use.
- [/privacy](https://xrpldashboard.com/privacy): privacy policy.

## Integrity and verification
- Signed snapshot chain: [https://xrpldashboard.com/.well-known/snapshots/chain.json](https://xrpldashboard.com/.well-known/snapshots/chain.json) — daily Ed25519-signed database snapshots, chain-linked.
- Snapshot public key: [https://xrpldashboard.com/.well-known/snapshots/pubkey.pem](https://xrpldashboard.com/.well-known/snapshots/pubkey.pem) — pin this for verification.
- Public claims manifest: [https://xrpldashboard.com/claims](https://xrpldashboard.com/claims) — every claim on the site has a permanent URI + traffic-light sovereignty tier; content-negotiated JSON via `Accept: application/json` or `.json` suffix on the URI.
- Copy-pasteable client snippets (curl, Python, JavaScript for fetching a claim envelope + a Python end-to-end verifier for the daily signed snapshots): [https://xrpldashboard.com/claims#use-this-data](https://xrpldashboard.com/claims#use-this-data). Every snippet on that page was executed against live prod before shipping.
- Security contact: [https://xrpldashboard.com/.well-known/security.txt](https://xrpldashboard.com/.well-known/security.txt).
- Source code: [github.com/Enkryptedx/xrpldashboard](https://github.com/Enkryptedx/xrpldashboard) (MIT-licensed Flask app).

## For agent authors
- Agent identification, rate limits, and preferred crawl behavior: [https://xrpldashboard.com/.well-known/agents.json](https://xrpldashboard.com/.well-known/agents.json).
- OpenAPI spec (machine-readable index of the LIVE free surface + envelope schema + MCP tool inventory): [https://xrpldashboard.com/openapi.json](https://xrpldashboard.com/openapi.json). Swagger UI: [https://xrpldashboard.com/docs](https://xrpldashboard.com/docs).
- Freshness contract for this file and the agent-tier surfaces (llms.txt, agents.json, openapi.json, /methodology#for-ai-agents): last verified 2026-08-05. Bumped whenever the agent-tier surface changes.
- MCP server (public beta through 2026-09): `https://mcp.xrpldashboard.com/mcp` — streamable-http transport, MCP protocol version 2025-06-18, no auth. Backed by our own rippled node on the Lenovo box; source at `mcp_server.py` + `mcp_tools_*.py` in the repo. Tool inventory is machine-readable at `info.x-mcp-tools` in the OpenAPI spec above. Session rate limit: 600 tool calls/hour/session, enforced live (see `mcp_session_rate_limit.py`; 429 with Retry-After on breach). No payment rails; free for identified agents at reasonable volume.
- Connect an MCP client in 60 seconds — copy-paste config for Claude Desktop or the mcp-remote bridge, plus three sample prompts (primitive / aggregation / verify-signed-snapshot): [https://xrpldashboard.com/connect#connect-in-60-seconds](https://xrpldashboard.com/connect#connect-in-60-seconds). Dogfooded against the public URL on 2026-08-05 before publishing.
- Every response from the MCP server is wrapped in a proof-annotation envelope. Shape: `{data, proof:{source, as_of, freshness_contract, methodology_url, claims_ref?, cross_check_status, honest_partial, scope_note?}, server:{name, version, public_key_fingerprint, docs}}` — verify locally against the signed snapshot chain rather than trusting the score. Full JSON schema at `#/components/schemas/ProofAnnotationEnvelope` in the OpenAPI spec. The read-only HTTP API will emit the same envelope when it ships.
