返回市场
泵交换-mcp

泵交换-mcp

作者:kukapay5 星标更新:2025-05-06

项目介绍

PumpSwap MCP 服务器

一个使AI代理能够与PumpSwap进行实时代币交换和自动链上交易的MCP服务器。

License Python Status

特性

  • 购买代币:使用SOL购买代币,可自定义滑点和优先费用。
  • 出售代币:将代币出售换得SOL,参数可配置。
  • 查询代币价格:获取当前代币价格(以SOL计)。
  • 获取池数据:获取并显示给定代币铸造的详细池信息。

预备条件

  • Python 3.13或更高版本
  • uv用于依赖管理和脚本执行
  • Solana RPC端点(例如:https://api.mainnet-beta.solana.com
  • 有效的Solana私钥用于交易签名

安装

  1. 克隆仓库

    git clone https://github.com/kukapay/pumpswap-mcp.git
    cd pumpswap-mcp
    
  2. 安装uv: 如果未安装uv,请遵循官方uv安装指南。例如:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  3. 设置依赖项: 使用uv安装依赖项:

    uv sync
    
  4. 配置环境变量: 在项目根目录创建.env.private文件,并添加以下变量:

    HTTPS_RPC_ENDPOINT=https://api.mainnet-beta.solana.com
    BUY_SLIPPAGE=0.3
    SELL_SLIPPAGE=
    SWAP_PRIORITY_FEE=1500000
    PRIVATE_KEY=your-solana-private-key
    

    your-solana-private-key替换为您的实际Solana私钥。

使用方法

运行MCP服务器

使用uv运行服务器:

uv run main.py

该服务器将监听MCP命令,并提供以下工具:

  • buy_token(mint: str, sol_amount: float, user_private_key: str): 使用SOL购买代币。
  • sell_token(mint: str, token_amount: float, user_private_key: str): 出售代币换得SOL。
  • get_token_price(mint: str): 获取当前代币价格(以SOL计)。
  • get_pool_data(mint: str): 获取代币的格式化池数据。

购买代币

提示

用铸造地址为FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump的代币购买0.1 SOL。

这会触发buy_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 0.1)

预期输出

成功购买了价值0.1 SOL的代币FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump
交易ID:<交易ID>
数量:<代币数量>
代币价格(SOL):<价格>

出售代币

提示

出售1000个FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump代币。

这会触发sell_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 1000)

预期输出

成功出售了1000个FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump代币
交易ID:<交易ID>
数量:<SOL数量>
代币价格(SOL):<价格>

查询代币价格

提示

FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump代币的当前价格是多少?

这会触发get_token_price("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump")

预期输出

代币FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump的当前价格是<价格> SOL。

获取池数据

提示

显示FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump代币的池数据。

这会触发get_pool_data("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump")

预期输出

PumpPool 数据对于铸造FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump:
池Bump:<bump>
索引:<index>
创建者:<creator-pubkey>
基础铸造:<base-mint>
报价铸造:<quote-mint>
LP铸造:<lp-mint>
池基础代币账户:<base-account>
池报价代币账户:<quote-account>
LP供应量:<supply>

环境变量

服务器使用以下环境变量,从.env.private加载:

变量名描述默认值
HTTPS_RPC_ENDPOINTSolana RPC端点URLhttps://api.mainnet-beta.solana.com
BUY_SLIPPAGE购买交易的滑点容忍度0.3 (30%)
SELL_SLIPPAGE出售交易的滑点容忍度0.1 (10%)
SWAP_PRIORITY_FEE交易的优先费用(以lamports计)1500000
PRIVATE_KEY用于签署交易的Solana私钥None (必需)

确保设置了PRIVATE_KEY,因为如果缺少它,服务器将引发错误。

许可证

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

免责声明

此软件与去中心化金融(DeFi)协议交互,并处理敏感数据如私钥。请自行承担风险使用。确保您的.env.private文件安全且永不分享您的私钥。作者不对因使用此软件而产生的任何财务损失或安全问题负责。