XRPLHub — XRPLScore, MPT issuer risk & payment pre-checks について
XRPLHubは、XRPLウォレットのスコア、オンチェーンサービス、モニタリング、スクリーニング、MPTと資格情報の照会を提供し、XRPL利用者やAPIを使う事業者を対象とします。トランザクションは構築しますが、署名は利用者自身のウォレットで行い、AIやLLM機能はありません。
主な機能
- 01公開台帳の情報に基づくウォレット評価
- 02ウォレット署名用トランザクションの構築
- 03Webhookを使ったウォレット監視
- 04MPT発行者と資格情報の照会
- 05OFACアドレススクリーニング
活用シーン
- 01XRPLウォレットのスコア確認
- 02署名前のオンチェーントランザクション準備
- 03ウォレット監視とWebhook受信
- 04MPT発行者や資格情報の照会
MCP 対応
READMEではAPIルートの一つとしてMCPに触れていますが、MCPサービスがクライアントに提供する機能は説明されていません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://www.xrplhub.io/api/mcpclaude mcp add --transport http dcroyalty-xrplhub https://www.xrplhub.io/api/mcp{"mcpServers":{"dcroyalty-xrplhub":{"type":"http","url":"https://www.xrplhub.io/api/mcp"}}}Cursor で開く{"servers":{"dcroyalty-xrplhub":{"type":"http","url":"https://www.xrplhub.io/api/mcp"}}}VS Code で開く{"mcpServers":{"dcroyalty-xrplhub":{"type":"http","url":"https://www.xrplhub.io/api/mcp"}}}{"mcpServers":{"dcroyalty-xrplhub":{"serverUrl":"https://www.xrplhub.io/api/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
21| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| uuid | string | いいえ | 2 回目の呼び出しのみ:最初の呼び出しで返された支払い uuid。ユーザーが Xaman で署名した後に使用します。 |
| currency | enum | いいえ | 支払い通貨。デフォルトは XRP です。XRP | RLUSD |
| wallet_address | string | はい | 資格情報の対象となる XRP Ledger ウォレットアドレス(r で始まる) |
詳細
XRPLHub.io — バックエンド
xrplhub.io の本番アプリです。Vercel 上で稼働する Next.js(App Router、TypeScript)、Prisma 経由の Neon Postgres、ローテーションされる公開ノードプールを介した XRP Ledger の読み取り、署名に使用する Xaman / Crossmark / GemWallet で構成されています。 公開コードには AI も LLM も含まれていません。
このアプリの機能
| 製品 | 内容 |
|---|---|
| XRPLScore | XRPL ウォレットを 8 つの公開台帳シグナルから評価する、300〜850 のスコアです(エンジンは 1 つで、src/lib/xrplscore.ts にあります)。無料の検索結果は 15 分間のキャッシュから返される場合があり、レスポンスにその旨が示されます(fromCache、cacheAgeSeconds)。 |
| トランザクションサービス | 有料のオンチェーン操作(トラストライン、エスクロー、AMM、NFT など)です。正確なトランザクションをこちらで作成し、購入者が自身のウォレットで署名します。件数は src/app/api/execute/serviceCatalog.ts の BUILDABLE_SERVICE_IDS のみに基づきます。 |
| B2B API | RLUSD/XRP で販売されるキー(/api/v1/*、/api/monitor/*、/api/screen/ofac、融資エンドポイント)です。プランは src/lib/plans.ts にあり、割り当て上限は厳格です(上限到達時は HTTP 429)。 |
| x402 従量課金 | スコア、レポート、スクリーニングの各エンドポイントで、リクエストごとに支払います(t54 XRPL ファシリテーター経由の RLUSD、Coinbase のファシリテーター経由の Base 上の USDC)。 |
| 継続的なモニタリング | 監視対象ウォレット、HMAC 署名付き Webhook、疎なアテスト済み観測データを扱います。リアルタイムではなく、1 日 1 回です。詳細は docs/MONITORING.md をご覧ください。 |
| OFAC スクリーニングの受領記録 | OFAC SDN リストに掲載された XRP アドレスとの完全一致を確認し、そのプロセスのみを証明する受領記録として保存します。アドレスが問題ない、または制裁対象であると証明するものではありません。 |
| MPT / 認証情報の検索 | Multi-Purpose Token の発行者と XLS-70 認証情報を読み取り専用で表示し、それぞれのカバレッジを明示します。 |
| コミュニティ助成金 | すべての申請を人が審査します。自動で決定または支払いが行われることはありません。承認済みの助成金が資金待ちのため、現在、申請受付を一時停止しています(src/lib/grantsStatus.ts の GRANT_APPLICATIONS_OPEN)。寄付は引き続き受け付けています。 |
XRPLHub は銀行、信用調査機関、消費者信用情報機関、規制対象事業者ではありません。また、返される情報はいずれも法律、金融、コンプライアンスに関する助言ではありません。
このコードベースで意図的に保証していること
- 価格はすべてサーバーが決定します。 価格表は
src/lib/servicePrices.tsのみです。クライアントから送信された金額や通貨に関する情報は読み取りません。 - 支払いは台帳で一度だけ検証されます。
src/lib/paymentGate.tsは、価格を満たす、財務口座への有効かつ成功済みの Payment を、XRP または実際の発行者による RLUSD で確認します。各支払いハッシュはデータベースで一度だけ使用できます。 - 請求書の照合にスキャン範囲の制限はありません。 チェックアウトの請求書(
src/lib/rlusd.ts)は、トランザクションハッシュが分かる場合はそのハッシュで正確に特定し、分からない場合は請求書の作成時点まで財務口座の履歴を遡って確認します。そのため、少額の取引が大量にあっても、実際の支払いが確認対象から外れることはありません。台帳を最後まで読み取った後にのみ、請求書をクローズします。 - 入力ミスのあるアドレスはスクリーニングせず、拒否します。 すべてのアドレスは
src/lib/address.ts(base58check)で検証されます。 - キャッシュされたスコアがアテステーションに使われることはありません。
scripts/check-attestation-freshness.mjsはnpm run buildで実行され、アテステーション用モジュールがキャッシュをインポートしている場合、またはキャッシュを使ったスコアルートから取得している場合は失敗します。 - 不完全なデータを完全なものとして扱うことはありません。 台帳の読み取りに失敗した場合は 503 を返すか、
degraded/complete:falseフラグを設定し、問題のない結果に見せかけることはありません。 - あらゆる判断結果に免責事項が含まれます。
- 財務口座は単一キーの XRPL アカウントです。 台帳上に署名者リストはありません。複数署名による保護を実現するまでは、その保護があると主張できません。
構成
src/app/api/… route handlers (payments, scoring, screening, monitoring, x402, MCP, admin, cron)
src/app/… the site (homepage, pricing, donate, verify pages)
src/lib/… engine, pricing + payment gate, x402, monitoring, screening, MPT/credentials, watchdog
prisma/schema.prisma
scripts/ build gates (freshness, service parity) and operator scripts
docs/ AUTONOMY.md (what runs unattended), MONITORING.md, CREDENTIAL-SPEC.md, calibration notes
ローカルでの実行
npm install
cp .env.example .env # fill in DATABASE_URL and the keys you need
npx prisma db push # creates/updates tables on your Neon database
npm run dev
npm run build は、2 つのビルドゲート(アテステーションの鮮度、サービスのパリティ)、prisma generate、続いて next build を実行し、TypeScript のエラーを強制的に検出します。
主な環境変数(.env.example を参照してください。未設定の項目がある場合は、静かに処理を続けず、明示的にエラーになります):
| 変数 | 用途 |
|---|---|
DATABASE_URL | Neon Postgres |
TREASURY_ADDRESS、RLUSD_ISSUER、RLUSD_CURRENCY | 支払い先と、RLUSD として扱う通貨 |
XUMM_API_KEY、XUMM_API_SECRET | Xaman のサインインと支払いリクエスト |
ADMIN_API_TOKEN | すべての管理者向けルート(未設定の場合は処理を拒否します) |
CRON_SECRET | 1 日 2 回実行される cron |
CREDENTIAL_SIGNING_SECRET | 有料のオフレジャー証明書(未設定の場合、発行されません) |
ANCHOR_WALLET_SEED、MPT_ANCHOR_ENABLED | オンレジャーの Merkle ルートアンカー |
BITHOMP_API_KEY | MPT レジストリの保有者数 |
CDP_API_KEY_ID、CDP_API_KEY_SECRET | USDC-on-Base x402 ファシリテーター |
ERROR_WEBHOOK_URL、HEALTHCHECK_PING_URL | アラートと外部デッドマンスイッチ |
運用
docs/AUTONOMY.md が、自動実行される処理(Vercel の cron 2 件、UTC 06:00 と 07:00)、有効期限とその時期、ウォッチドッグ、および長期間不在にした後に最初に確認する項目についての正式な情報源です。デプロイは main へのプッシュごとに行われます。Vercel のビルドキャッシュを オフ にして再デプロイしてください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。