返回市场
泵功能-mcp服务器

泵功能-mcp服务器

作者:noahgsolomon17 星标更新:2025-03-15

项目介绍

pumpfun-mcp

一个用于与Solana上的Pump.fun平台交互的模型上下文协议(MCP)服务器。此服务器使AI助手能够在Pump.fun平台上创建、购买和出售代币。

<img src="https://pump.fun/logo.png" width="250" height="250" alt="Pump.fun MCP Demo">

使用方法

https://github.com/user-attachments/assets/0b0f1f6f-6ea6-4ca8-92a8-b4cc895814e4

要使用此服务器与Claude或其他兼容MCP的AI助手一起工作,请在您的MCP客户端中添加以下配置:

如果您在MacOS上并希望在Claude Desktop中运行此服务,在您的~/Library/Application Support/Claude/claude_desktop_config.json文件中写入以下内容:

{
  "mcpServers": {
    "pumpfun": {
      "command": "node",
      "args": ["/Users/noahsolomon/Desktop/pumpfun-mcp/build/index.js"], // 注意这应该是您index.js的绝对路径,而不是我的。
      "env": {
        "HELIUS_RPC_URL": "https://your-helius-rpc-url.com"
      }
    }
  }
}

用您的Helius RPC URL替换https://your-helius-rpc-url.com

安装

  1. 克隆此仓库:

    git clone https://github.com/noahgsolomon/pumpfun-mcp.git
    cd pumpfun-mcp
    
  2. 安装依赖项:

    npm install
    
  3. 创建一个.env文件,并添加您的Solana RPC URL:

    HELIUS_RPC_URL=https://your-helius-rpc-url.com
    

    您可以从Helius获取免费的RPC URL。

    要使用现有的Solana钱包,请将您的私钥添加到.env文件中:

    PRIVATE_KEY=your-base58-encoded-private-key
    

    然后运行转换脚本以创建密钥对文件:

    node convert-key.js
    

    这将在.keys文件夹中创建一个名为default.json的文件,其中包含您的密钥对。

  4. 构建项目:

    npm run build
    
  5. 运行MCP服务器:

    node build/index.js
    

组件

工具

  • get-token-info

    • 获取有关Pump.fun代币的信息
    • 输入参数:
      • tokenAddress (字符串,必需):代币的铸造地址
  • create-token

    • 创建新的Pump.fun代币
    • 输入参数:
      • name (字符串,必需):代币名称
      • symbol (字符串,必需):代币符号
      • description (字符串,必需):代币描述
      • imageUrl (字符串,可选):本地图像文件路径
      • initialBuyAmount (数字,必需):初始购买金额(SOL,最小值0.0001)
      • accountName (字符串,可选):使用的账户名称(默认为"default")
  • buy-token

    • 购买Pump.fun代币
    • 输入参数:
      • tokenAddress (字符串,必需):代币的铸造地址
      • buyAmount (数字,必需):购买金额(SOL,最小值0.0001)
      • accountName (字符串,可选):使用的账户名称(默认为"default")
      • slippageBasisPoints (数字,可选):滑点容忍度(基点,默认为100)
  • sell-token

    • 出售Pump.fun代币
    • 输入参数:
      • tokenAddress (字符串,必需):代币的铸造地址
      • sellAmount (数字,必需):出售的代币数量(使用0表示全部出售)
      • accountName (字符串,可选):使用的账户名称(默认为"default")
      • slippageBasisPoints (数字,可选):滑点容忍度(基点,默认为100)
  • list-accounts

    • 列出keys文件夹中的所有账户
    • 不需要输入参数
  • get-account-balance

    • 获取账户的SOL和代币余额
    • 输入参数:
      • accountName (字符串,可选):检查的账户名称(默认为"default")
      • tokenAddress (字符串,可选):检查余额的代币地址

账户管理

MCP自动在.keys文件夹中创建和管理Solana密钥对。每个密钥对都存储为一个JSON文件,文件名是账户名称。

在创建代币时,铸造密钥对也会保存在.keys文件夹中,前缀为mint-

要使用MCP与您自己的账户一起工作,您需要:

  1. 将您的私钥添加到.env文件中并运行node convert-key.js
  2. 确保该钱包中有足够的SOL

独立脚本

该项目包括几个可以直接运行的独立脚本:

  • 获取代币信息node build/get-token-info.js <token_address>
  • 创建代币node build/create-token.js <name> <symbol> <description> <initial_buy_amount> [account_name] [image_url]
  • 购买代币node build/buy-token.js <token_address> <buy_amount_sol> [account_name] [slippage_basis_points]
  • 出售代币node build/sell-token.js <token_address> <sell_amount> [account_name] [slippage_basis_points]
  • 列出账户node build/list-accounts.js
  • 获取账户余额node build/get-token-balance.js <account_name> [token_address]

重要注意事项

  • 安全性:密钥对未加密地存储在.keys文件夹中。确保适当保护此文件夹。
  • 费用:Solana上的所有交易都需要SOL作为交易费用。确保您的账户有足够的SOL。
  • 滑点:默认滑点容忍度为1%(100基点)。您可以根据每次交易调整这个值。
  • 图像:当使用带有图像的代币时,必须提供图像的本地文件路径。不支持远程URL。

开发

项目结构

  • src/index.ts:主要的MCP服务器入口点
  • src/get-token-info.ts:代币信息检索
  • src/create-token.ts:代币创建功能
  • src/buy-token.ts:代币购买功能
  • src/sell-token.ts:代币销售功能
  • src/list-accounts.ts:账户列表功能
  • src/get-token-balance.ts:账户余额检查
  • src/utils.ts:共享的实用函数
  • convert-key.js:将base58私钥转换为密钥对JSON文件的工具

构建

npm run build