返回市场
木星-mcp

木星-mcp

作者:kukapay22 星标更新:2025-06-15

项目介绍

Jupiter MCP Server

用于在Solana区块链上执行代币交换的MCP服务器,使用Jupiter的新Ultra API。

License Node.js Status

功能

  • 从Jupiter的Ultra API获取交换订单,结合DEX路由和RFQ(询价请求)以获得最优价格。
  • 通过Jupiter的Ultra API执行交换,处理滑点、优先费用和交易落地。

预备条件

  • Node.js: 版本18或更高(支持原生fetch)。
  • Solana钱包: 私钥(base58编码),用于签名交易。
  • RPC端点: 访问Solana RPC节点(例如:https://api.mainnet-beta.solana.com)。

安装

  1. 克隆仓库:

    git clone https://github.com/kukapay/jupiter-mcp.git
    cd jupiter-mcp
    
  2. 安装依赖: 确保已安装MCP服务器包及其他所需依赖项:

    npm install
    
  3. 客户端配置:

{
  "mcpServers": {
    "Jupiter-MCP": {
      "command": "node",
      "args": ["path/to/jupiter-mcp/server/index.js"],
      "env": {
        "SOLANA_RPC_URL": "你可以访问的solana rpc url",
        "PRIVATE_KEY": "你的私钥"
      }
    }
  }
}

工具

Ultra API工具

  • get-ultra-order:

    • 描述: 从Jupiter的Ultra API获取交换订单,利用DEX路由和RFQ以获得最优价格。
    • 输入:
      • inputMint: 输入代币铸造地址(例如:SOL或代币公钥)。
      • outputMint: 输出代币铸造地址(例如:USDC或代币公钥)。
      • amount: 输入金额作为字符串(例如:"1.23")。
      • slippageBps: 滑点容忍度,以基点表示(例如:50表示0.5%)。
    • 输出: 包含requestIdtransaction(base64编码)、inputMintoutputMintinAmountoutAmountprice的JSON。
  • execute-ultra-order:

    • 描述: 请求Jupiter代表钱包所有者执行交换交易,处理滑点、优先费用和交易落地。
    • 输入:
      • requestId: 来自get-ultra-order的唯一标识符。
      • transaction: 来自get-ultra-order的base64编码交易。
    • 输出: 包含statustransactionIdslotinputAmountResultoutputAmountResultswapEvents的JSON。

示例交互

以下是使用自然语言提示与服务器交互的例子及其预期响应:

获取交换订单

  • 提示: "获取一个交换订单,用1.23 SOL兑换USDC。"
  • 输入:
    • 工具: get-ultra-order
    • 参数:
      • inputMint: "So11111111111111111111111111111111111111112" (SOL)
      • outputMint: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" (USDC)
      • amount: "1.23"
      • slippageBps: 50
  • 响应:
    {
      "requestId": "a770110b-82c9-46c8-ba61-09d955b27503",
      "transaction": "AQAAAA...base64-encoded-transaction...==",
      "inputMint": "So11111111111111111111111111111111111111112",
      "outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "inAmount": "1230000000",
      "outAmount": "19950000",
      "price": 0.01621951219512195
    }
    

执行交换

  • 提示: "使用提供的交易执行请求ID 'a770110b-82c9-46c8-ba61-09d955b27503' 的交换订单。"
  • 输入:
    • 工具: execute-ultra-order
    • 参数:
      • requestId: "a770110b-82c9-46c8-ba61-09d955b27503"
      • transaction: "AQAAAA...base64-encoded-transaction...=="
  • 响应:
    {
      "status": "Success",
      "transactionId": "5x...solana-transaction-signature...",
      "slot": 299283763,
      "inputAmountResult": "1230000000",
      "outputAmountResult": "19950000",
      "swapEvents": [
        {
          "type": "swap",
          "inputMint": "So11111111111111111111111111111111111111112",
          "outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
          "inAmount": "1230000000",
          "outAmount": "19950000"
        }
      ]
    }
    

许可证

此项目根据MIT许可证发布。详情见LICENSE文件。