Pump SDK MCP Server について
Pump SDK は、Solana 上の Pump プロトコル向け TypeScript SDK です。トークン作成、ボンディングカーブでの取引、AMM プール、手数料分配などの操作を扱います。Pump 関連アプリケーションを開発する開発者を対象としています。SDK 自体はトランザクションを送信せず、呼び出し側が署名と送信を行うための命令を返します。
主な機能
- 01トランザクションを送信しないオフライン命令ビルダー
- 02トークン作成とボンディングカーブでの取引
- 03AMM プール管理と段階的な手数料設定
- 04クリエイター手数料の分配と取引量ベースの報酬
- 05JSON 出力に対応した pump コマンドラインツール
活用シーン
- 01コードから Solana 上の Pump トークンを作成し取引する
- 02ボンディングカーブの価格、見積もり、卒業進捗を取得する
- 03手数料分配を設定し、クリエイター手数料を確認する
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
67掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| mint | string | はい | トークンのミントアドレス |
| user | string | はい | 購入者のウォレットアドレス |
| solAmount | string | はい | 使用する SOL の数量(lamports 単位) |
詳細
Pump SDK
Solana 上の Pump プロトコル向け TypeScript SDK — トークンの作成、ボンディングカーブ、AMM プール、手数料の分配、取引量報酬に対応しています。
Pump SDK とは?
Pump SDK は、Solana 上の Pump.fun プロトコル向けにコミュニティが開発した TypeScript SDK です。オンチェーン操作のあらゆる場面で、オフライン優先の命令ビルダーを提供します。トークンの作成、ボンディングカーブでの取引、AMM プールの管理、段階的な手数料設定、クリエイター手数料の分配、取引量に基づくトークンインセンティブ、ソーシャル紹介手数料に対応しています。
この SDK がトランザクションを送信することはありません。TransactionInstruction[] を返すため、任意の署名・送信方法を使ってトランザクションに組み込めます。
📋 目次
- クイックスタート
pumpCLI- 実行可能な 50 のサンプル
- 使用例
- API リファレンス
- オンチェーンプログラム
- 設定
- エラー処理
- よくある質問
- アーキテクチャ
- コントリビューション
- ライセンス
- 謝辞
🚀 ライブデモとリソース
- トークンローンチパッド:この SDK のみを使って構築された、ブラウザーから実際の Pump トークンをローンチして取引できるサービス
- SDK ドキュメントとライブダッシュボード(取引、ローンチ、バニティ:sdk.pumpk.it/live)
- pump.fun UI テンプレート
- DeFi エージェント API
- PumpKit
- PumpKit サイト
- Telegram PumpFun GitHub クレーム追跡ボット
- Pump.fun GitHub クレーム — 専用リポジトリ · 製品および通知のルール
GitHub のソーシャル手数料の出金は、実際のオンチェーン活動です。開発者がコインを作成した、または推奨していることを自動的に証明するものではありません。クレームカードでは、確認済みのリポジトリとクリエイターウォレットの関係、ID の不一致、未確認のリンク、未解決のプール出金を区別します。上記の通知ルールをご覧ください。
- Telegram PumpFun 卒業/移行追跡ボット
- Pumpfun クレーム追跡ツール(最良のボット — 開発中のため現在オフライン)
📈 実績と拡散力
GitHub Claim Tracker ボットの監視が収益につながることを示す実績
→ ツイートを見る
大きなバイラルを達成
→ ツイートを見る
Telegram でリアルタイムの PumpFun インテリジェンスボットをリリースしました
17 個のコマンド。コストゼロ。すべてオンチェーン。
/price→ トークン価格とボンディングカーブを即時表示
/monitor→ トークンのローンチ情報をリアルタイムで配信
/cto→ クリエイターの権利移転を通知
/watch→ ウォレットの手数料請求状況を追跡
/quote→ 購入/売却の見積もり
/graduated→ AMM への移行状況
/alerts→ 通知をカスタマイズすべてオープンソースの pump-fun-sdk を使用
すべての始まりとなった投稿
→ ツイートを見る
もっと知りたい方へ。PumpKit をご覧ください 💊💚
Solana 上で PumpFun の Telegram ボットを構築するためのオープンソースフレームワークです。請求状況の監視、チャンネル配信、グループ追跡、クジラのアラートなどを、自作することも、私たちのものを使うこともできます。
🚀 クイックスタート
インストール
# npm
npm install @nirholas/pump-sdk
# yarn
yarn add @nirholas/pump-sdk
# pnpm
pnpm add @nirholas/pump-sdk
ピア依存関係
SDK には以下の Solana パッケージが必要です(まだインストールされていない場合はインストールしてください)。
npm install @solana/web3.js @solana/spl-token @coral-xyz/anchor bn.js
最小限の例
import { Connection, PublicKey } from "@solana/web3.js";
import { OnlinePumpSdk } from "@nirholas/pump-sdk";
// 1. Create an online SDK instance
const connection = new Connection("https://api.mainnet-beta.solana.com");
const sdk = new OnlinePumpSdk(connection);
// 2. Fetch current token state
const mint = new PublicKey("YourTokenMintAddress...");
const summary = await sdk.fetchBondingCurveSummary(mint);
console.log("Market Cap:", summary.marketCap.toString(), "lamports");
console.log("Graduated:", summary.isGraduated);
console.log("Progress:", summary.progressBps / 100, "%");
💻 pump CLI
SDK にはバイナリが付属しています。チェーンを読み取る操作には、ウォレット、API キー、設定は必要ありません。
npm install -g @nirholas/pump-sdk
pump curve <mint> # price, market cap, graduation meter, fee tier
pump quote buy <mint> --sol 1 # what 1 SOL really buys, after fees and impact
pump watch <mint> # live dashboard
pump doctor # check your RPC, wallet, and balance in one shot
何もインストールせずに実行する場合:npx -p @nirholas/pump-sdk pump curve <mint>。
FeMbDoX7R1Psc4GEcvJdsbNbZA3bfztcyDCatJVJpump live on the bonding curve
────────────────────────────────────────────────────────────
Market cap 93.705347 SOL
Buy price 0.000000096 SOL per token
Sell price 0.000000091 SOL per token
Trading fee 1.25% 0.95% protocol + 0.3% creator
Graduation ███████████████░░░░░░░░░ 61.39%
SOL to graduate 60.684661 SOL
SOL in curve 24.921536 SOL
Tokens left 306.21M of 793.1M
| コマンド | 機能 |
|---|---|
pump curve / price / pool / global | カーブ、価格、AMM プール、プロトコルの状態を読み取る |
pump quote buy|sell | オフラインで取引価格を算出:出力、手数料、実効価格、価格への影響 |
pump buy / sell | ボンディングカーブと PumpAMM 間を自動ルーティングして取引する |
pump create | トークンをローンチする。オプションで最初の購入をアトミックに実行 |
pump vanity | ...pump のミントアドレスを生成する |
pump fees / incentives | クリエイター手数料と取引量報酬を確認して請求する |
pump watch | 自動更新ダッシュボード、または JSON 価格フィード |
pump events | 任意のトランザクションに含まれる Pump イベントをデコードする |
pump pda | 任意の Pump プログラムアドレスを導出する |
pump doctor / config | 診断と設定を行う |
安全性を組み込み済み。 読み取り処理ではキーペアを読み込みません。すべての取引は送信前にシミュレーションされ、実行内容が正確に表示されてから、明示的な承認を待ちます。--simulate は何も送信しません。--yes はスクリプト実行用のオプションです。どちらも指定されていないパイプ入力のコマンドは、資金を無人で使うことを避けるため、実行を拒否します。
スクリプトで利用可能。 すべてのコマンドで --json を指定でき、その場合は標準出力にそれ以外の内容を出力しません。
pump curve <mint> --json | jq .marketCapSol
pump watch <mint> --json --interval 10 | jq -r '"\(.at) \(.marketCapSol) SOL"'
pump events <sig> --json | jq '.events[] | select(.type=="trade")'
詳細なリファレンス:docs/cli.md。10 分で学べるチュートリアル:tutorial 45。
🧪 実行可能な 50 のサンプル
リポジトリには SDK の全機能を網羅した、テスト済みの実行可能なサンプルが 50 個含まれています。各サンプルは 1 つのコマンドで実行でき、ロジックをエクスポートしてオフラインでテストできるほか、対応する手順ごとのチュートリアルも用意されています。
git clone https://github.com/nirholas/pump-fun-sdk && cd pump-fun-sdk && npm install
npm run example # list all 50
npm run example 11 # offline buy quotes
npm run test:examples # run every example's test suite offline
| 範囲 | カテゴリ |
|---|---|
| 01-10 | トークンのライフサイクル:作成、購入、売却、メイヘムモード、キャッシュバック |
| 11-20 | カーブ計算と手数料:オフライン見積もり、ティア、価格への影響 |
| 21-30 | アカウントとイベント:すべての PDA、すべてのデコーダー |
| 31-40 | ライブデータ:メインネットの読み取り、バッチ処理、WebSocket フィード |
| 41-50 | AMM と高度な機能:プール、流動性、手数料の共有、インセンティブ、バニティミント |
全カタログ:docs/examples.md · 閲覧:examples/ · チュートリアル:tutorials/examples/
📖 使用例
トークンを作成する
import { Keypair } from "@solana/web3.js";
import { PUMP_SDK } from "@nirholas/pump-sdk";
const mintKeypair = Keypair.generate();
const creator = wallet.publicKey;
const createIx = await PUMP_SDK.createV2Instruction({
mint: mintKeypair.publicKey,
name: "My Token",
symbol: "MYTKN",
uri: "https://arweave.net/metadata.json",
creator,
user: creator,
mayhemMode: false,
});
// createIx is a TransactionInstruction — add to a Transaction and send
警告:
createInstructionは使用しないでください。非推奨です(v1)。必ずcreateV2Instructionを使用してください。
保有者報酬トークンを作成する
holderReward: true を設定すると、クリエイター手数料がプロトコルから導出される保有者報酬 PDA に送られます。Pump.fun はこれらの手数料を保有者に自動で分配するため、保有者が請求を送信する必要はありません。
const createIx = await PUMP_SDK.createV2Instruction({
mint: mintKeypair.publicKey,
name: "Holder Helper",
symbol: "HOLD",
uri: "https://example.com/holder-helper.json",
creator: wallet.publicKey,
user: wallet.publicKey,
mayhemMode: false,
holderReward: true,
});
アトミックなローンチと初回購入を行うには、createV2AndBuyInstructions にも同じフラグを渡します。SDK は購入を creatorVaultPda(holderRewardsPda(mint)) 経由で処理します。ブロードキャストを行わないデモ全体を npm run example 51 で実行できます。
新規のキャッシュバックローンチは非推奨となっており、拒否されます。既存のキャッシュバックコインは引き続き取引可能で、蓄積済みのキャッシュバックも請求できます。
...pump のバニティミントを使用してトークンを作成する
pump.fun のものと同様に、末尾が pump のミントアドレスは、オフチェーンでキーペアを総当たり生成して作成されます。SDK では専用のヘルパーとして利用できます。Keypair.generate() を generateVanityMint() に置き換えるだけで、残りの手順は変わりません。
import { generateVanityMint, PUMP_SDK } from "@nirholas/pump-sdk";
// Grind until we find a mint whose address ends in "pump" (~11M attempts, ~1–4 min in Node)
const { keypair: mintKeypair } = await generateVanityMint({ suffix: "pump" });
const createIx = await PUMP_SDK.createV2Instruction({
mint: mintKeypair.publicKey, // ← ends in "pump"
name: "My Token",
symbol: "MYTKN",
uri: "https://arweave.net/metadata.json",
creator: wallet.publicKey,
user: wallet.publicKey,
mayhemMode: false,
});
// Sign the transaction with BOTH the payer and the mint keypair.
// tx.sign([wallet, mintKeypair]);
prefix、suffix、caseInsensitive、maxAttempts、onProgress、および AbortSignal をサポートしています。4 文字を超えるパターンには、マルチスレッド対応の Rust ジェネレーター(rust/)を使用してください。エンドツーエンドの手順と実行可能な devnet の例については、チュートリアル 13:バニティミントを参照してください。
ボンディングカーブでトークンを購入する
import { Connection, PublicKey } from "@solana/web3.js";
import BN from "bn.js";
import { getBuyTokenAmountFromSolAmount, OnlinePumpSdk } from "@nirholas/pump-sdk";
const connection = new Connection("https://api.mainnet-beta.solana.com");
const sdk = new OnlinePumpSdk(connection);
const mint = new PublicKey("TokenMintAddress...");
const user = wallet.publicKey;
// Fetch all required state in parallel — buyState includes tokenProgram (auto-detected)
const [buyState, global, feeConfig] = await Promise.all([
sdk.fetchBuyState(mint, user),
sdk.fetchGlobal(),
sdk.fetchFeeConfig(),
]);
assert(!buyState.bondingCurve.complete, "Token has already graduated to AMM");
// Calculate expected tokens for 0.1 SOL
const solAmount = new BN(100_000_000); // 0.1 SOL in lamports
const expectedTokens = getBuyTokenAmountFromSolAmount({
global,
feeConfig,
mintSupply: buyState.bondingCurve.tokenTotalSupply,
bondingCurve: buyState.bondingCurve,
amount: solAmount,
});
// buyState spreads: bondingCurveAccountInfo, bondingCurve, associatedUserAccountInfo, tokenProgram
const buyIxs = await sdk.buyInstructions({
...buyState,
mint,
user,
amount: expectedTokens,
solAmount,
slippage: 0.05, // 5% slippage tolerance
});
// buyIxs is TransactionInstruction[] — compose into a VersionedTransaction and send
注:
fetchBuyStateは、トークンが SPL Token と Token-2022 のどちらを使用しているかを自動検出し、それに応じたtokenProgramを返します。正しいプログラムが使用されるように、必ず...buyStateをbuyInstructionsに展開してください。
トークンを売却する
import BN from "bn.js";
import { getSellSolAmountFromTokenAmount, OnlinePumpSdk } from "@nirholas/pump-sdk";
const sdk = new OnlinePumpSdk(connection);
// Fetch required state in parallel
// Pass buyState.tokenProgram if you have it to avoid a second mint account fetch
const [sellState, global, feeConfig] = await Promise.all([
sdk.fetchSellState(mint, user),
sdk.fetchGlobal(),
sdk.fetchFeeConfig(),
]);
const tokenAmount = new BN(1_000_000_000); // amount in raw units (6 decimals)
const expectedSol = getSellSolAmountFromTokenAmount({
global,
feeConfig,
mintSupply: sellState.bondingCurve.tokenTotalSupply,
bondingCurve: sellState.bondingCurve,
amount: tokenAmount,
});
// sellState spreads: bondingCurveAccountInfo, bondingCurve, tokenProgram
const sellIxs = await sdk.sellInstructions({
...sellState,
mint,
user,
amount: tokenAmount,
solAmount: expectedSol,
slippage: 0.05,
});
注:
fetchSellStateは、ミントから自動検出したtokenProgramを返します。必ず...sellStateをsellInstructionsに展開してください。
卒業の進捗を確認する
import { OnlinePumpSdk } from "@nirholas/pump-sdk";
const sdk = new OnlinePumpSdk(connection);
const progress = await sdk.fetchGraduationProgress(mint);
console.log(`Progress: ${progress.progressBps / 100}%`);
console.log(`Graduated: ${progress.isGraduated}`);
console.log(`Tokens remaining: ${progress.tokensRemaining.toString()}`);
console.log(`SOL accumulated: ${progress.solAccumulated.toString()}`);
手数料の分配を設定する
import { PublicKey } from "@solana/web3.js";
import { PUMP_SDK } from "@nirholas/pump-sdk";
// Create a fee sharing config (creator only, before or after graduation)
const createConfigIx = await PUMP_SDK.createFeeSharingConfig({
creator: wallet.publicKey,
mint: tokenMint,
pool: null, // null for pre-graduation tokens
});
// Update shareholders (must total exactly 10,000 BPS = 100%)
const updateIx = await PUMP_SDK.updateFeeShares({
authority: wallet.publicKey,
mint: tokenMint,
currentShareholders: [wallet.publicKey],
newShareholders: [
{ address: wallet.publicKey, shareBps: 7000 }, // 70%
{ address: new PublicKey("Partner..."), shareBps: 3000 }, // 30%
],
});
警告:シェアの合計は必ず10,000 BPS にしてください。そうでない場合、SDK は
InvalidShareTotalErrorをスローします。株主は最大10人です。
📚 API リファレンス
TypeScript のシグネチャ、パラメーター、例を含む完全な API ドキュメントについては、docs/api-reference.md を参照してください。
コアクラス
| クラス | 説明 |
|---|---|
PumpSdk | オフライン命令ビルダー。RPC 接続は不要です |
OnlinePumpSdk | PumpSdk を拡張し、アカウント状態を取得する RPC フェッチャーを備えています |
PUMP_SDK | PumpSdk のインスタンス化済みシングルトン |
ボンディングカーブ関数
| 関数 | 戻り値 | 説明 |
|---|---|---|
getBuyTokenAmountFromSolAmount(...) | BN | 指定した SOL 量に対して受け取るトークン量 |
getBuySolAmountFromTokenAmount(...) | BN | 指定したトークン量に必要な SOL 量 |
getSellSolAmountFromTokenAmount(...) | BN | トークンの売却で受け取る SOL 量 |
bondingCurveMarketCap(...) | BN | クオートミントの基本単位で表した現在の時価総額 |
newBondingCurve(global, quoteMint?, ...) | BondingCurve | グローバル設定から、任意のクオートミントに対応する新しいボンディングカーブを作成します |
getBuyV3QuoteAmountFromTokenAmount(...) | BN | 合成マイグレーションの完了後のレッグを含む、buy_v3 のコスト |
getBuyV3TokenAmountFromQuoteAmount(...) | BN | クオート予算で buy_exact_quote_in_v3 が購入するトークン量 |
pumpQuoteReserves(global, quote) | { virtualQuoteReserves, depth } | pump コイン建てでクオートされるコインについて、create_v2 が導出する初期リザーブ |
分析関数
| 関数 | 戻り値 | 説明 |
|---|---|---|
calculateBuyPriceImpact(...) | PriceImpactResult | 購入取引の価格インパクト |
calculateSellPriceImpact(...) | PriceImpactResult | 売却取引の価格インパクト |
getGraduationProgress(...) | GraduationProgress | ボンディングカーブの完了率 |
getTokenPrice(...) | TokenPriceInfo | トークンあたりの現在の購入価格/売却価格 |
getBondingCurveSummary(...) | BondingCurveSummary | ボンディングカーブの概要全体 |
手数料関数
| 関数 | 戻り値 | 説明 |
|---|---|---|
getFee(...) | BN | 取引の手数料額 |
computeFeesBps(...) | CalculatedFeesBps | 現在の手数料ベーシスポイント(プロトコル+クリエイター) |
calculateFeeTier(...) | Fees | 指定された時価総額に対する手数料ティア |
selectCurveFeeSchedule(...) | Fees | クォートミント別の手数料体系(SOL 系のティア、ステーブルティア、またはエキゾチック通貨向けの一律手数料) |
2026 年 10 月のプログラムアップグレード(3.0.0)
| ビルダー | 説明 |
|---|---|
buyV3Instructions / buyExactQuoteInV3Instructions / sellV3Instructions | SOL およびトークン建てクォートのカーブでの v3 取引。手数料はスイープまでカーブ上に留まります |
buyV2Instructions / buyExactQuoteInV2Instructions / sellV2Instructions | 取引時に手数料を支払う v2 カーブ取引。キャッシュバックコイン向けの方式です |
ammBuyV2Instruction / ammBuyExactQuoteInV2Instruction / ammSellV2Instruction | PumpSwap v2 取引。手数料はスイープまでプール内に留まります |
multiHopSwapInstructions | Pump プールと Pump コイン建てクォートカーブを経由する、単一の正確な入力ルート |
sweepCreatorFeeInstruction / ammSweepCreatorFeeInstruction(およびプロトコル向けの各バリアント) | v3/v2 取引で残された手数料を、クリエイターボールトまたはプロトコルの受取先に支払います |
OnlinePumpSdk.creatorFeeSweepInstructions(mint, payer) | 配布、CTO、または手数料分配の変更前にコインに必要なスイープをすべて取得します |
createV2Instruction({ quoteMint, pumpQuote, ... }) | ホワイトリスト登録済み、QuoteControl のリスト掲載済み、または Pump コインのミント建てでコインをローンチします |
各プログラムのガイドは docs/pump-official/docs/instructions、SDK 側の資料は docs/api-reference.md、docs/amm-trading.md、docs/bonding-curve-math.md にあります。2.x からのアップグレードについては、CHANGELOG.md の 3.0.0 の項目を参照してください。
トークンインセンティブ関数
| 関数 | 戻り値 | 説明 |
|---|---|---|
totalUnclaimedTokens(...) | BN | 未請求の $PUMP 報酬トークン |
currentDayTokens(...) | BN | 本日の獲得トークン数 |
🔗 オンチェーンプログラム
| プログラム | ID | 目的 |
|---|---|---|
| Pump | 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P | ボンディングカーブの作成、購入、売却、移行 |
| PumpAMM | pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA | グラデュエート済み AMM プール — 取引、流動性、手数料 |
| PumpFees | pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ | 手数料分配の設定とソーシャル手数料 PDA |
🔧 設定
コンストラクター
この SDK に必須の環境変数はありません。コンストラクターで設定します。
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
connection | Connection | OnlinePumpSdk の場合のみ | Solana RPC 接続 |
主要な定数
| 定数 | 値 | 説明 |
|---|---|---|
PUMP_PROGRAM_ID | 6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P | メインの Pump プログラム |
PUMP_AMM_PROGRAM_ID | pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA | AMM プログラム |
PUMP_FEE_PROGRAM_ID | pfeeUxB6jkeY1Hxd7CsFCAjcbHA9rWtchMGdZ6VojVZ | 手数料プログラム |
PUMP_TOKEN_MINT | pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn | $PUMP トークンミント |
MAX_SHAREHOLDERS | 10 | 手数料分配における最大株主数 |
ONE_BILLION_SUPPLY | 1000000000000000 | 小数桁数 6 の 10 億トークン |
BONDING_CURVE_NEW_SIZE | 151 | ボンディングカーブアカウントのサイズ(バイト) |
⚠️ エラー処理
SDK では、手数料分配の検証用に型付きエラーを定義しています。
| エラー | 原因 | 修正方法 |
|---|---|---|
NoShareholdersError | 株主の配列が空です | 株主を 1 人以上指定してください |
TooManyShareholdersError | 株主が 10 人を超えています | 株主を 10 人以下に減らしてください |
ZeroShareError | 株主の BPS が 0 以下です | すべての分配率を正の値に設定してください |
InvalidShareTotalError | 分配率の合計が 10,000 BPS ではありません | 分配率の合計が正確に 10,000 になるようにしてください |
DuplicateShareholderError | 同じアドレスが 2 回指定されています | 重複したアドレスを削除してください |
ShareCalculationOverflowError | BPS の合計が安全な整数の範囲を超えています | 分配率の値を確認してください |
PoolRequiredForGraduatedError | 卒業済みのコインで pool が null です | fetchPool() から取得したプールアドレスを渡してください |
よくある落とし穴
Warning:トークンや lamport の数量に JavaScript の
numberを使わないでください。必ず bn.js のBNを使用してください。JavaScript の数値は 2^53 を超えると精度が失われます。
Warning:取引の前に
bondingCurve.completeを確認してください。trueの場合、トークンは AMM に移行済みです。代わりにammBuyInstruction/ammSellInstructionを使用してください。
Warning:
createInstructionは非推奨です。新しいトークンの作成には、すべてcreateV2Instructionを使用してください。
❓ よくある質問
Q: SDK を使用するには RPC 接続が必要ですか?
いいえ。PumpSdk(および PUMP_SDK シングルトン)はオフラインで命令を構築します。オンチェーンの状態を取得する必要がある場合にのみ、OnlinePumpSdk を使用してください。
Q: トークンが AMM に移行済みかどうかは、どうすればわかりますか?
bondingCurve.complete === true を確認するか、sdk.isGraduated(mint) を使用してください。移行済みのトークンはボンディングカーブではなく、PumpAMM で取引されます。
Q: 購入/売却命令における slippage とは何ですか?
小数の割合です(例:0.05 = 5%)。SDK は価格変動から保護するために、maxSolCost(購入)または minSolOutput(売却)を調整します。
Q: 数量に number ではなく BN を使うのはなぜですか?
Solana のトークン数量(lamport、トークン単位)は、JavaScript の安全な整数の上限(2^53)を頻繁に超えます。BN を使うと、任意精度の演算が可能になります。
Q: Pump と PumpAMM のプログラムにはどのような違いがありますか? Pump はボンディングカーブの段階(作成から移行まで)を処理します。PumpAMM は移行後の取引を、定積 AMM プールで処理します。
Q: 手数料の分配はどのように機能しますか? トークン作成者は、作成者手数料を最大 10 人の株主に分配できます。各株主にはベーシスポイント(1/10,000)で分配率が割り当てられます。合計は正確に 10,000 BPS(100%)でなければなりません。
Q: Mayhem Mode とは何ですか?
ランダム化されたボンディングカーブのパラメーターを使用する、特別なトークン作成モードです。mayhemMode: true で作成されたトークンの価格変動は予測できません。
Q: SDK をブラウザーで使用できますか? はい。SDK に Node.js 固有の依存関係はありません。バンドラーを使用すれば、ESM ビルドを最新のブラウザーで利用できます。
🏗️ アーキテクチャ
システム設計、データフロー図、各モジュールの説明については、docs/architecture.md を参照してください。
🤝 貢献
貢献を歓迎します!以下については CONTRIBUTING.md を参照してください。
- 開発環境のセットアップ
- ブランチの命名規則とコミット規約
- テスト要件
- PR の手順
📄 ライセンス
🙏 謝辞
- Pump.fun — この SDK が連携するプロトコル
- Solana Labs — ブロックチェーンインフラストラクチャと
@solana/web3.js - Coral (Anchor) —
@coral-xyz/anchorを介した IDL ベースのプログラム連携 - bn.js — 金融計算に使う任意精度演算
- @pump-fun/pump-swap-sdk — AMM スワップ連携
ドキュメント
ドキュメントサイト全文:https://sdk.pumpk.it
Star 履歴
プロジェクトを支援する
pump-fun-sdk が時間の節約に役立ったら、GitHub でスターを付けてください。スターがあることで、ほかの開発者や AI エージェントが信頼できるリポジトリを見つけやすくなります。必要なのはクリック 1 回だけです。
使ってくれそうな人を知っていますか? X に投稿 · Bluesky で共有 · LinkedIn で共有 · Hacker News に投稿 · Reddit で共有
AI エージェントにも対応
コーディングエージェントや LLM ツールは、このリポジトリを直接読み取れます。AGENTS.md、llms.txt、llms-full.txt を参照してください。エージェントに https://github.com/nirholas/pump-fun-sdk を指定すれば、必要なコンテキストを取得できます。
同じ作者によるほかのプロジェクト
- nirholas のすべてのリポジトリ:トピック別に分類された全カタログ
- three.ws:Solana ウォレット、スキルマーケットプレイス、x402 決済を備えた 3D AI エージェント向けプラットフォーム
- 質問やアイデア:issue を作成するか、ディスカッションを開始してください
コントリビューター
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。