mcpField
X
XRPL MCP Service

XRPL MCP Service

Local
github.com/tedlikeskixFinance4Updated 91w ago

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

  1. 01Account details and balances
  2. 02Order books and market prices
  3. 03NFT offer lookup
  4. 04Trust lines and payment paths
  5. 05Signed transaction submission

Use cases

  1. 01Checking XRPL account holdings and history
  2. 02Inspecting currency markets and AMMs
  3. 03Reviewing NFT offers
  4. 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.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

XRPL MCP Service

smithery badge

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 details
  • xrpl_account_balances - XRP and token balances (human-readable)
  • xrpl_account_lines - Trust lines
  • xrpl_account_offers - Active trading offers
  • xrpl_account_nfts - NFT holdings
  • xrpl_account_tx - Transaction history
Decentralized Exchange
  • xrpl_order_book - View order book for currency pairs
  • xrpl_market_price - Get current market prices
  • xrpl_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 lines
  • xrpl_remove_trust_line - Remove existing trust lines
  • xrpl_payment_channels - Payment channel information
  • xrpl_find_path - Payment path finding
  • xrpl_deposit_auth - Check payment authorization
System
  • xrpl_server_info - Node status and information
  • xrpl_submit_tx - Submit signed transactions

Setup

  1. Create a .env file:
XRPL_NODE_URL=https://xrplcluster.com
  1. Install dependencies:
pip install xrpl-py fastapi uvicorn python-dotenv
  1. 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

  1. xrpl_tools.py

    • Core XRPL interaction functions
    • Async implementation with event loop handling
    • Error handling and response formatting
  2. register_tools.py

    • MCP tool registration
    • Endpoint mapping and configuration

Future Enhancements

  1. AMM (Liquidity Pool) Operations

    • Create pools
    • Add/remove liquidity
    • Vote on pool parameters
  2. Advanced Trading

    • Create/cancel offers
    • Automated trading functions
    • Price alerts
  3. NFT Operations

    • Mint NFTs
    • Create/accept offers
    • Collection management

Common Issues

  1. Async Event Loop: If you see "asyncio.run() cannot be called from a running event loop", check the async implementation in xrpl_tools.py

  2. Rate Limiting: Consider implementing rate limiting for production use

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Implement your changes
  4. 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

Markdown supported

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.