XRPL协议服务

一个提供全面访问XRP账本(XRPL)的模型上下文协议(MCP)服务器,使AI模型能够通过标准化端点与XRPL交互。

  • by tedlikeskix
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 tedlikeskix/xrpl-mcp-service

使用说明

XRPL MCP服务

模型上下文协议(MCP)服务器,提供对XRP分类账(XRPL)的全面访问。该服务使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 -提交已签名的交易

设置

  1. 创建一个 .env 文件:
XRPL_NODE_URL=https://xrplcluster.com
  1. 安装依赖项:
pip install xrpl-py fastapi uvicorn python-dotenv
  1. 运行服务器:
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

关键组件

  1. xrpl_tools.py

    • 核心XRPL交互功能
    • 具有事件循环处理的异步实现
    • 错误处理和响应格式
  2. register_tools.py

    • MCP工具注册
    • 端点映射和配置

未来的增强功能

  1. AMM(流动性池)业务

    • 创建池
    • 添加/删除流动性
    • 对池参数进行投票
  2. 高级交易

    • 创建/取消优惠
    • 自动交易功能
    • 价格提醒
  3. NFT操作

    • 如 NFT
    • 创建/接受报价
    • 馆藏管理

常见问题

  1. 异步事件循环:如果您看到“无法从正在运行的事件循环调用asyncio.run()”,请检查xrpl_tools.py中的异步实现

  2. 速率限制:考虑对生产使用实施限速

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 实施您的更改
  4. 提交拉取请求

重要提示

  • 始终使用“经过验证的”分类账进行生产
  • 安全的钱包种子和私钥
  • 监控交易费用
  • 首先在测试网上进行彻底测试

资源

许可证

麻省理工学院