PumpSwap MCP Server について
PumpSwap MCP Server は、AI エージェントから PumpSwap でのトークン取引や価格・プール情報の確認を行う MCP サーバーです。スリッページと優先手数料を設定できます。
主な機能
- 01SOL でトークンを購入
- 02トークンを SOL に売却
- 03SOL 建て価格の照会
- 04トークンプール情報の取得
- 05スリッページと優先手数料の設定
活用シーン
- 01エージェント経由でトークンを購入
- 02保有トークンをエージェント経由で売却
- 03トークンの現在価格を確認
- 04指定トークンのプール情報を確認
MCP 対応
トークンの購入・売却、価格照会、プール情報取得のツールを MCP クライアントに提供します。取引には Solana RPC エンドポイントと秘密鍵による署名が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
PumpSwap MCP サーバー
AI エージェントがPumpSwapと連携し、リアルタイムのトークンスワップやオンチェーン取引の自動化を行えるようにする MCP サーバーです。
特長
- トークンの購入:スリッページと優先手数料をカスタマイズして、SOL でトークンを購入します。
- トークンの売却:設定可能なパラメーターを指定して、トークンを SOL に売却します。
- トークン価格の照会:現在のトークン価格を SOL で取得します。
- プールデータの取得:指定したトークンミントの詳細なプール情報を取得して表示します。
前提条件
- Python 3.13 以降
- 依存関係の管理とスクリプトの実行に使用するuv
- Solana RPC エンドポイント(例:
https://api.mainnet-beta.solana.com) - トランザクションの署名に使用する有効な Solana 秘密鍵
インストール
-
リポジトリをクローンする:
git clone https://github.com/kukapay/pumpswap-mcp.git cd pumpswap-mcp -
uv をインストールする:
uvがインストールされていない場合は、公式のuv インストールガイドに従ってください。例:curl -LsSf https://astral.sh/uv/install.sh | sh -
依存関係を設定する:
uvを使って依存関係をインストールします:uv sync -
環境変数を設定する: プロジェクトのルートに
.env.privatefile を作成し、次の変数を設定します:HTTPS_RPC_ENDPOINT=https://api.mainnet-beta.solana.com BUY_SLIPPAGE=0.3 SELL_SLIPPAGE=0.1 SWAP_PRIORITY_FEE=1500000 PRIVATE_KEY=your-solana-private-keyyour-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):トークンの整形済みプールデータを取得します。
トークンの購入
プロンプト:
Buy 0.1 SOL worth of tokens with mint address FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
これにより、buy_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 0.1) が実行されます。
期待される出力:
Buy successful for 0.1 SOL of token FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump
Transaction ID: <transaction-id>
Amount: <token-amount>
Token Price (SOL): <price>
トークンの売却
プロンプト:
Sell 1000 tokens of FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
これにより、sell_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 1000) が実行されます。
期待される出力:
Sell successful for 1000 tokens of FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump
Transaction ID: <transaction-id>
Amount: <sol-amount>
Token Price (SOL): <price>
トークン価格の取得
プロンプト:
What is the current price of the token with mint FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump?
これにより、get_token_price("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump") が実行されます。
期待される出力:
The current price of token FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump is <price> SOL.
プールデータの取得
プロンプト:
Show me the pool data for the token with mint FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
これにより、get_pool_data("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump") が実行されます。
期待される出力:
PumpPool Data for mint FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump:
Pool Bump: <bump>
Index: <index>
Creator: <creator-pubkey>
Base Mint: <base-mint>
Quote Mint: <quote-mint>
LP Mint: <lp-mint>
Pool Base Token Account: <base-account>
Pool Quote Token Account: <quote-account>
LP Supply: <supply>
環境変数
サーバーは .env.private から読み込まれる次の環境変数を使用します:
| 変数 | 説明 | デフォルト値 |
|---|---|---|
HTTPS_RPC_ENDPOINT | Solana RPC エンドポイント URL | https://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 ファイルを安全に保管し、秘密鍵を決して共有しないでください。このソフトウェアの使用によって生じた金銭的損失やセキュリティ上の問題について、作者は責任を負いません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。