Provides comprehensive access to the XRP Ledger (XRPL) through various endpoints including account information, decentralized exchange functionality, NFT operations, trust lines & payments, and system operations.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@xrpl-mcp-serviceget account balances for rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
XRPL MCP Service
A Model Context Protocol (MCP) server providing comprehensive access to the XRP Ledger (XRPL). This service enables AI models to interact with XRPL through standardized endpoints.
Features
Account Information
xrpl_account_info- Basic account detailsxrpl_account_balances- XRP and token balances (human-readable)xrpl_account_lines- Trust linesxrpl_account_offers- Active trading offersxrpl_account_nfts- NFT holdingsxrpl_account_tx- Transaction history
Decentralized Exchange
xrpl_order_book- View order book for currency pairsxrpl_market_price- Get current market pricesxrpl_amm_info- Automated Market Maker information
NFT Operations
xrpl_nft_offers- View NFT buy/sell offers
Trust Lines & Payments
xrpl_set_trust_line- Establish new trust linesxrpl_remove_trust_line- Remove existing trust linesxrpl_payment_channels- Payment channel informationxrpl_find_path- Payment path findingxrpl_deposit_auth- Check payment authorization
System
xrpl_server_info- Node status and informationxrpl_submit_tx- Submit signed transactions
Related MCP server: @lex-tools/codebase-context-dumper
Setup
Create a
.envfile:
XRPL_NODE_URL=https://xrplcluster.comInstall dependencies:
pip install xrpl-py fastapi uvicorn python-dotenvRun the server:
uvicorn main:app --host 0.0.0.0 --port 8000 --reloadAPI Usage Examples
Get Account Info
POST /call-tool/xrpl_account_info
{
"account": "rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
}Get Account Balances
POST /call-tool/xrpl_account_balances
{
"account": "rsuUjfWxrACCAwGQDsNeZUhpzXf1n1NK5Z"
}Set Trust Line
POST /call-tool/xrpl_set_trust_line
{
"wallet_seed": "sXXXXXXXXXXXXXXXXXXXX",
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B",
"limit": "1000"
}Get AMM Info
POST /call-tool/xrpl_amm_info
{
"asset": {
"currency": "XRP"
},
"asset2": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
}
}Get Market Price
POST /call-tool/xrpl_market_price
{
"base_currency": {
"currency": "XRP"
},
"quote_currency": {
"currency": "USD",
"issuer": "rvYAfWj5gh67oV6fW32ZzP3Aw4Eubs59B"
}
}Project Structure
├── main.py # FastAPI application entry point
├── tools/
│ ├── __init__.py
│ ├── register_tools.py # Tool registration
│ └── xrpl_tools.py # XRPL endpoint implementationsKey Components
xrpl_tools.py
Core XRPL interaction functions
Async implementation with event loop handling
Error handling and response formatting
register_tools.py
MCP tool registration
Endpoint mapping and configuration
Future Enhancements
AMM (Liquidity Pool) Operations
Create pools
Add/remove liquidity
Vote on pool parameters
Advanced Trading
Create/cancel offers
Automated trading functions
Price alerts
NFT Operations
Mint NFTs
Create/accept offers
Collection management
Common Issues
Async Event Loop: If you see "asyncio.run() cannot be called from a running event loop", check the async implementation in xrpl_tools.py
Rate Limiting: Consider implementing rate limiting for production use
Contributing
Fork the repository
Create a feature branch
Implement your changes
Submit a pull request
Important Notes
Always use "validated" ledger for production
Secure wallet seeds and private keys
Monitor transaction fees
Test thoroughly on testnet first
Resources
License
MIT
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.