UNPKG

@bbigu0898/fast-swap-mcp

Version:

Fast Swap MCP Server - Supports quickly initiating token buy/sell tasks, querying transaction results, and managing take-profit/stop-loss tasks.

304 lines (238 loc) 12.5 kB
[English](./README.md) | [中文](./README.zh-CN.md) # @dbot/fast-swap-mcp-server 快速买卖 MCP Server - 支持快速发起买卖代币任务,查询交易结果,管理止盈止损任务 ## 🚀 功能特性 以下为功能概述: - 🚀 **快速交易**: 支持多链快速买卖交易(Solana, Ethereum, Base, BSC, Tron) - 💼 **多钱包支持**: 支持使用多个钱包同时进行交易 - 📊 **订单查询**: 查询交易订单状态和详情 - 📈 **止盈止损**: 管理止盈止损任务 ## 快速开始 以下为使用方法: 在MCP客户端配置中添加: **示例:** ```json { "mcpServers": { "fast-swap": { "command": "npx", "args": ["-y", "@dbot/fast-swap-mcp-server@latest"], "env": { "DBOT_API_KEY": "your-api-key", "DBOT_WALLET_ID": "your-wallet-id" } } } } ``` ## 📚 典型场景 - **快速买入** - "帮我买入 solana 上的代币 9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump 0.001sol" - **快速卖出** - "帮我卖出 solana 上的代币 9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump 50%仓位" - **买入并设置止盈止损** - "帮我买入 solana 上的代币 9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump 0.001sol,价格上涨80%时卖出60%仓位,下跌30%时卖出80%仓位" - **修改止盈止损** - "帮我将止损单改为卖出100%仓位" - **管理止盈止损** - "帮我关闭止盈单" - "帮我打开止盈单" - "帮我删除止盈单" ## 🌱 环境变量 以下为环境变量说明: ### 必需的环境变量 - `DBOT_API_KEY`: DBot API密钥(必需) - `DBOT_WALLET_ID`: 默认钱包ID(必需) ### 可选的默认参数配置 - 如需更改可根据示例配置,如未更改将使用默认配置。 - 默认配置可通过与llm模型对话得到,例如 "请告诉我 快速买卖 工具的默认配置"。 - 所有环境变量默认值均可在对话时被覆盖。例如 系统默认开启防夹模式,对话时可要求将其覆盖,"买入 ....,请关闭防夹模式。" #### 基础配置 - `DBOT_CHAIN`: 默认链类型 (solana/ethereum/base/bsc/tron) - `DBOT_CUSTOM_FEE_AND_TIP`: 是否使用自定义费用 (true/false) - `DBOT_PRIORITY_FEE`: 优先费,例如:"0.0001" - `DBOT_GAS_FEE_DELTA`: gas费用增量,例如:5 - `DBOT_MAX_FEE_PER_GAS`: 最大gas费用,例如:100 - `DBOT_JITO_ENABLED`: 是否启用防夹模式 (true/false) - `DBOT_JITO_TIP`: 防夹小费,例如:0.001 - `DBOT_MAX_SLIPPAGE`: 最大滑点 (0.00-1.00),例如:0.1 - `DBOT_CONCURRENT_NODES`: 并发节点数 (1-3),例如:2 - `DBOT_RETRIES`: 重试次数 (0-10),例如:1 **示例:** ```json { "env": { "DBOT_API_KEY": "your-api-key", "DBOT_WALLET_ID": "your-wallet-id", "DBOT_CHAIN": "solana", "DBOT_CUSTOM_FEE_AND_TIP": "true", "DBOT_PRIORITY_FEE": "0.0002", "DBOT_GAS_FEE_DELTA": "5", "DBOT_MAX_FEE_PER_GAS": "100", "DBOT_JITO_ENABLED": "true", "DBOT_JITO_TIP": "0.001", "DBOT_MAX_SLIPPAGE": "0.1", "DBOT_CONCURRENT_NODES": "2", "DBOT_RETRIES": "1" } } ``` #### 交易配置 - `DBOT_AMOUNT_OR_PERCENT`: 默认交易数量或百分比,例如:0.001 - `DBOT_MIGRATE_SELL_PERCENT`: 迁移卖出百分比 (0.00-1.00),例如:1.0 - `DBOT_MIN_DEV_SELL_PERCENT`: 最小开发者卖出百分比 (0.00-1.00),例如:0.5 - `DBOT_DEV_SELL_PERCENT`: 开发者卖出百分比 (0.00-1.00),例如:1.0 **示例:** ```json { "env": { "DBOT_API_KEY": "your-api-key", "DBOT_WALLET_ID": "your-wallet-id", "DBOT_AMOUNT_OR_PERCENT": "0.001", "DBOT_MIGRATE_SELL_PERCENT": "1.0", "DBOT_MIN_DEV_SELL_PERCENT": "0.5", "DBOT_DEV_SELL_PERCENT": "1.0" } } ``` #### 止盈止损配置 - `DBOT_PNL_ORDER_EXPIRE_DELTA`: 止盈止损订单过期时间(毫秒),例如:43200000 - `DBOT_PNL_ORDER_EXPIRE_EXECUTE`: 是否执行过期订单 (true/false) - `DBOT_PNL_ORDER_USE_MID_PRICE`: 是否使用中间价 (true/false) - `DBOT_PNL_CUSTOM_CONFIG_ENABLED`: 是否启用自定义止盈止损配置 (true/false) **示例:** ```json { "env": { "DBOT_API_KEY": "your-api-key", "DBOT_WALLET_ID": "your-wallet-id", "DBOT_PNL_ORDER_EXPIRE_DELTA": "43200000", "DBOT_PNL_ORDER_EXPIRE_EXECUTE": "true", "DBOT_PNL_ORDER_USE_MID_PRICE": "false", "DBOT_PNL_CUSTOM_CONFIG_ENABLED": "true" } } ``` 注意: 1. 所有布尔类型的环境变量值应该使用字符串 "true" 或 "false" 2. 数字类型的环境变量值也应该使用字符串形式 3. 在调用时指定的参数值会覆盖环境变量中的默认值 4. 可以根据需要只配置部分参数,未配置的参数将使用系统默认值 ## 🛠️ 可用工具 以下为工具说明: ### create_fast_swap 创建快速买卖交易订单,支持多链交易(solana/ethereum/base/bsc/tron),支持买入与卖出时设定止盈止损 **参数:** - `chain` (string, 可选): 链 (solana/ethereum/base/bsc/tron),未指定时默认使用 solana。 - `pair` (string, 必需): 需要买入/卖出的代币地址或交易对地址。 - `walletId` (string, 可选): 使用的钱包的id,可通过"钱包信息 API"获取(如未提供将使用环境变量 DBOT_WALLET_ID)。 - `type` (string, 必需): 交易类型,值为'buy'和'sell'。 - `amountOrPercent` (number, 可选): 交易类型为buy时,填写买入金额(ETH/SOL/BNB/TRX),交易类型为sell时,填写卖出比例(0.00-1.00),默认为0.001。 - `customFeeAndTip` (boolean, 可选): "true"表示优先费和贿赂费均有效,"false"表示高速模式下只有优先费有效,防夹模式下只有贿赂费有效。默认为false。 - `priorityFee` (string, 可选): 优先费(SOL),对Solana有效,空字符串表示使用自动优先费。默认为"0.0001"。 - `gasFeeDelta` (number, 可选): 额外增加的gas(Gwei),对EVM链有效。默认为5。 - `maxFeePerGas` (number, 可选): 基础gas超过此值时将不进行交易(Gwei),对EVM链有效。默认为100。 - `jitoEnabled` (boolean, 可选): 是否启用防夹模式(Solana & Ethereum & Bsc)。默认为true。 - `jitoTip` (number, 可选): 防夹模式使用的贿赂费(Solana)。默认为0.001。 - `maxSlippage` (number, 可选): 最大滑点(0.00-1.00)。默认为0.1。 - `concurrentNodes` (number, 可选): 并发节点数(1-3)。默认为2。 - `retries` (number, 可选): 失败后的重试次数(0-10)。默认为1。 - `migrateSellPercent` (number, 可选): 迁移卖出比例(0.00-1.00)。默认为1.0。 - `minDevSellPercent` (number, 可选): 最小开发者卖出比例(0.00-1.00)。默认为0.5。 - `devSellPercent` (number, 可选): 开发者卖出比例(0.00-1.00)。默认为1.0。 - `stopEarnPercent` (number, 可选): 止盈百分比(0.00以上)。 - `stopLossPercent` (number, 可选): 止损百分比(0.00-1.00)。 - `stopEarnGroup` (array, 可选): 止盈分组设置,最多6组。 - `stopLossGroup` (array, 可选): 止损分组设置,最多6组。 - `trailingStopGroup` (array, 可选): 追踪止损设置,最多1组。 - `pnlOrderExpireDelta` (number, 可选): 止盈止损订单有效时长(毫秒)。默认为43200000。 - `pnlOrderExpireExecute` (boolean, 可选): 止盈止损订单过期是否执行。默认为false。 - `pnlOrderUseMidPrice` (boolean, 可选): 止盈止损订单是否使用中间价格。默认为false。 - `pnlCustomConfigEnabled` (boolean, 可选): 是否启用自定义止盈止损配置。默认为true。 - `pnlCustomConfig` (object, 可选): 自定义止盈止损配置。 ### create_fast_swaps 创建快速买卖交易订单,支持多链交易(solana/ethereum/base/bsc/tron),支持买入与卖出时设定止盈止损,使用多个钱包同时进行交易。 **参数:** - `chain` (string, 可选): 链 (solana/ethereum/base/bsc/tron),未指定时默认使用 solana。 - `pair` (string, 必需): 需要买入/卖出的代币地址或交易对地址。 - `walletIdList` (array, 必需): 使用的钱包ID列表,最多5个钱包。 - `type` (string, 必需): 交易类型,值为'buy'和'sell'。 - `customFeeAndTip` (boolean, 可选): "true"表示优先费和贿赂费均有效。默认为false。 - `priorityFee` (string, 可选): 优先费(SOL)。默认为空字符串。 - `gasFeeDelta` (number, 可选): 额外增加的gas(Gwei)。默认为5。 - `maxFeePerGas` (number, 可选): 基础gas超过此值时将不进行交易(Gwei)。默认为100。 - `jitoEnabled` (boolean, 可选): 是否启用防夹模式。默认为false。 - `jitoTip` (number, 可选): 防夹模式使用的贿赂费(Solana)。默认为0.001。 - `maxSlippage` (number, 可选): 最大滑点。默认为0.1。 - `concurrentNodes` (number, 可选): 并发节点数。默认为2。 - `retries` (number, 可选): 失败后的重试次数。默认为1。 - `minAmount` (number, 可选): 最小买入金额(ETH/SOL/BNB/TRX)。 - `maxAmount` (number, 可选): 最大买入金额(ETH/SOL/BNB/TRX)。 - `sellPercent` (number, 可选): 卖出比例(0.00-1.00)。默认为1.0。 - `stopEarnPercent` (number, 可选): 止盈百分比(0.00以上)。 - `stopLossPercent` (number, 可选): 止损百分比(0.00-1.00)。 - `stopEarnGroup` (array, 可选): 止盈分组设置,最多6组。 - `stopLossGroup` (array, 可选): 止损分组设置,最多6组。 - `trailingStopGroup` (array, 可选): 追踪止损设置,最多1组。 - `pnlOrderExpireDelta` (number, 可选): 止盈止损订单有效时长(毫秒)。默认为43200000。 - `pnlOrderExpireExecute` (boolean, 可选): 止盈止损订单过期是否执行。默认为false。 - `pnlOrderUseMidPrice` (boolean, 可选): 止盈止损订单是否使用中间价格。默认为false。 - `pnlCustomConfigEnabled` (boolean, 可选): 是否启用自定义止盈止损配置。默认为true。 - `pnlCustomConfig` (object, 可选): 自定义止盈止损配置。 ### get_swap_order_info 查询快速买卖的订单信息 **参数:** - `ids` (string): 订单ID列表,多个ID用逗号分隔 **[必需]** ### get_swap_records 获取用户所有的快速买卖记录 **参数:** - `page` (number, 可选): 页码,默认为 0。 - `size` (number, 可选): 每页数量(最大20),默认为 10。 - `chain` (string, 可选): 链名称 (solana/ethereum/base/bsc/tron)。 ### swap_tpsl_tasks 获取用户快速买卖创建的所有止盈止损任务 **参数:** - `page` (number, 可选): 页码,默认为 0。 - `size` (number, 可选): 每页数量(最大20),默认为 10。 - `chain` (string, 可选): 链名称 (solana/ethereum/base/bsc/tron)。 - `state` (string, 可选): 任务状态 (init/processing/done/fail/expired),默认为 'init'。 - `sourceId` (string, 可选): 快速买卖记录ID。 - `token` (string, 可选): 代币地址。 - `sortBy` (string, 可选): 排序字段。 - `sort` (number, 可选): 排序方向:1为升序,-1为降序,默认为-1。 ### edit_fastswap_tpsl_order 编辑快速买卖创建的止损止盈订单 **参数:** - `id` (string): 订单ID **[必需]** - `enabled` (boolean, 可选): 任务启用状态 - `groupId` (string, 可选): 分组id - `triggerPriceUsd` (string, 可选): 触发价格(美元) - `triggerDirection` (string, 可选): 'up' 或 'down' - `currencyAmountUI` (number, 可选): 买入金额或卖出比例 - `customFeeAndTip` (boolean, 可选): 自定义费用 - `priorityFee` (string, 可选): 优先费 - `gasFeeDelta` (number, 可选): Gas增量 - `maxFeePerGas` (number, 可选): 最大Gas费用 - `jitoEnabled` (boolean, 可选): 启用Jito - `jitoTip` (number, 可选): Jito小费 - `expireDelta` (number, 可选): 过期时间(毫秒) - `expireExecute` (boolean, 可选): 过期后执行 - `useMidPrice` (boolean, 可选): 使用中间价 - `maxSlippage` (number, 可选): 最大滑点 - `concurrentNodes` (number, 可选): 并发节点数 - `retries` (number, 可选): 重试次数 ### enable_fastswap_tpsl_order 开启/关闭快速买卖创建的止损止盈订单 **参数:** - `id` (string): 订单ID **[必需]** - `enabled` (boolean): 启用状态 **[必需]** ### delete_fastswap_tpsl_order 删除快速买卖创建的止损止盈订单 **参数:** - `id` (string): 订单ID **[必需]** ## 📚 API文档 完整的API文档请参考:https://api-bot-v1.dbotx.com/docs ## 📄 许可证 MIT ## 💡 支持 如有问题或建议,请访问:https://github.com/dbot-team/dbot-mcp-servers