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
- 提交已签名的交易
设置
- 创建
.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 交互功能
- 通过事件循环处理实现异步
- 错误处理和响应格式
- 注册工具
未来的增强功能
- AMM(流动性池)操作
- 高级交易
- NFT 操作
常见问题
- 异步事件循环:如果您看到“无法从正在运行的事件循环中调用 asyncio.run()”,请检查 xrpl_tools.py 中的异步实现
- 速率限制:考虑在生产环境中实施速率限制
贡献
- 分叉存储库
- 创建功能分支
- 实施您的更改
- 提交拉取请求
重要提示
- 始终使用“已验证”的分类账进行生产
- 保护钱包种子和私钥
- 监控交易费用
- 首先在测试网上进行彻底测试
资源
执照
麻省理工学院