Two things shipped, and both are live rather than planned:
402 Payment Required and settle in USDC on Solana mainnet.
Roughly 28 country routes are exposed publicly.io.github.DaimyoVegan/xrplme-paid, pointing at
https://api.xrplme.online/mcp.Hit a Solana route with no payment and you get the terms back — verified live against
/wc/v1/thailand/bot-solana:
network : solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp asset : EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v # native USDC amount : 50000 # 0.05 USDC payTo : 5KMiN7b7qBAqE2o5ucoCJ5xH9vZaFfzvq3dHeiGGvcMw feePayer : 32jx1jS6Dkkf7fuGv33h1rVgbAaMHNtnVbGkTWhW8heL qrData : solana:5KMiN7b7qBAqE2o5ucoCJ5xH9vZaFfzvq3dHeiGGvcMw?amount=0.05
The qrData field is a Solana Pay
URI, so a phone wallet can scan it directly. The feePayer is the part that makes
this work for a buyer: the payer needs USDC and nothing else — no SOL
required to cover network fees.
Settlement runs through a facilitator we host ourselves, using the facilitator that ships inside the x402 SDK. That means no third-party facilitator fee and no third party able to gate the collector address. Two wallets are involved, with deliberately separate jobs:
| Role | Holds | Key location |
|---|---|---|
Collector (payTo) | All USDC and XRP revenue | Not on the server — address only |
| Fee payer | SOL for network fees | Server, in a 0600 env file |
| Payer (buyer) | USDC only | Buyer’s wallet |
The receiver never pays the network fee. Separating the gas wallet from the collector means the wallet holding revenue does not need its key on the server at all.
These are mainnet settlements, each one a real token movement. They are public and independently checkable on any Solana explorer:
Until now, using the API meant already knowing the URL. Agents now have a discovery path:
the server is indexed in the official
MCP Registry under
io.github.DaimyoVegan/xrplme-paid.
| Field | Value |
|---|---|
| Registry name | io.github.DaimyoVegan/xrplme-paid |
| Transport | streamable-http |
| Endpoint | https://api.xrplme.online/mcp |
The registry entry advertises the free discovery tools and the paid tools. The paid ones demand payment correctly — calling one without paying returns a payment-required error naming both rails and their prices, rather than returning data.
There are no accounts to create and no API keys to manage. Each endpoint answers with a
402 carrying its terms; you pay, then retry the request with the payment
signature and receive the data. The free
API docs walk through the full flow, and the
developers page has runnable client examples.
curl -X POST https://xrplme.online/wc/v1/thailand/bot-solana \
-H "Content-Type: application/json" \
-d '{"message":"What are the current visa and entry requirements?"}'
Expect a 402 with the terms above. Coverage spans
30 countries. Data is informational only and is not legal advice.
Related reading: x402.org — the payment protocol; xrpl.org — the XRP Ledger; solana.com — Solana documentation; the MCP Registry.