XRPL MCP Service について
XRPL MCP Serviceは、XRP Ledgerのデータ参照や操作を必要とするAIモデルやアプリ向けのPython製MCPサーバーです。口座、取引市場、NFT、決済、署名済みトランザクションの送信に対応します。
主な機能
- 01口座情報と残高の確認
- 02オーダーブックと市場価格の参照
- 03NFTオファーの確認
- 04トラストラインと決済経路の操作
- 05署名済みトランザクションの送信
活用シーン
- 01XRPL口座の資産と履歴の確認
- 02通貨市場やAMM情報の調査
- 03NFTオファーの確認
- 04署名済みトランザクションの送信
MCP 対応
口座、市場、NFT、決済、トランザクション機能をMCPツールとして登録し、クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
XRPL MCP サービス
XRP Ledger(XRPL)に包括的にアクセスできる Model Context Protocol(MCP)サーバーです。このサービスを使用すると、標準化されたエンドポイントを通じて AI モデルが XRPL とやり取りできます。
機能
アカウント情報
xrpl_account_info- アカウントの基本情報xrpl_account_balances- XRP とトークンの残高(人間が読みやすい形式)xrpl_account_lines- トラストラインxrpl_account_offers- 有効な取引オファーxrpl_account_nfts- NFT の保有状況xrpl_account_tx- トランザクション履歴
分散型取引所
xrpl_order_book- 通貨ペアの注文板を表示xrpl_market_price- 現在の市場価格を取得xrpl_amm_info- 自動マーケットメーカーの情報
NFT 操作
xrpl_nft_offers- NFT の購入/販売オファーを表示
トラストラインと支払い
xrpl_set_trust_line- 新しいトラストラインを設定xrpl_remove_trust_line- 既存のトラストラインを削除xrpl_payment_channels- ペイメントチャネルの情報xrpl_find_path- 支払い経路の検索xrpl_deposit_auth- 支払いの承認状況を確認
システム
xrpl_server_info- ノードの状態と情報xrpl_submit_tx- 署名済みトランザクションを送信
セットアップ
.envファイルを作成します:
XRPL_NODE_URL=https://xrplcluster.com
- 依存関係をインストールします:
pip install xrpl-py fastapi uvicorn python-dotenv
- サーバーを実行します:
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
API 使用例
アカウント情報の取得
POST /call-tool/xrpl_account_info
{
"account": "rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
}
アカウント残高の取得
POST /call-tool/xrpl_account_balances
{
"account": "rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
}
トラストラインの設定
POST /call-tool/xrpl_set_trust_line
{
"wallet_seed": "sXXXXXXXXXXXXXXXXXXXX",
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"limit": "1000"
}
AMM 情報の取得
POST /call-tool/xrpl_amm_info
{
"asset": {
"currency": "XRP"
},
"asset2": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
}
}
市場価格の取得
POST /call-tool/xrpl_market_price
{
"base_currency": {
"currency": "XRP"
},
"quote_currency": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
}
}
プロジェクト構成
├── main.py # FastAPI application entry point
├── tools/
│ ├── __init__.py
│ ├── register_tools.py # Tool registration
│ └── xrpl_tools.py # XRPL endpoint implementations
主なコンポーネント
-
xrpl_tools.py
- XRPL とのやり取りを行うコア関数
- イベントループ処理を備えた非同期実装
- エラー処理とレスポンスのフォーマット
-
register_tools.py
- MCP ツールの登録
- エンドポイントのマッピングと設定
今後の機能強化
-
AMM(流動性プール)操作
- プールの作成
- 流動性の追加/削除
- プールパラメーターへの投票
-
高度な取引
- オファーの作成/キャンセル
- 自動取引機能
- 価格アラート
-
NFT 操作
- NFT のミント
- オファーの作成/承認
- コレクション管理
よくある問題
-
非同期イベントループ:「asyncio.run() cannot be called from a running event loop」と表示される場合は、xrpl_tools.py の非同期実装を確認してください。
-
レート制限:本番環境で使用する場合は、レート制限の実装を検討してください。
コントリビューション
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更を実装します
- プルリクエストを送信します
重要な注意事項
- 本番環境では必ず「validated」レジャーを使用してください
- ウォレットのシードと秘密鍵を安全に保管してください
- トランザクション手数料を監視してください
- まずテストネットで十分にテストしてください
リソース
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。