About XRPL MCP Service
XRPL MCP Service is a Python MCP server for AI models and applications that need XRP Ledger data or operations. Its tools cover accounts, trading markets, NFTs, payments, and signed transaction submission.
Key features
- 01Account details and balances
- 02Order books and market prices
- 03NFT offer lookup
- 04Trust lines and payment paths
- 05Signed transaction submission
Use cases
- 01Checking XRPL account holdings and history
- 02Inspecting currency markets and AMMs
- 03Reviewing NFT offers
- 04Submitting signed transactions
MCP support
It registers XRPL operations as MCP tools for clients, including account, market, NFT, payment, and transaction functions.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEXRPL 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
Setup
- Create a
.envfile:
XRPL_NODE_URL=https://xrplcluster.com
- Install dependencies:
pip install xrpl-py fastapi uvicorn python-dotenv
- Run the server:
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
API 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 implementations
Key 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
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.