
pumpswap-mcp
pumpswap-mcp
README
PumpSwap MCP Server
An MCP server that enables AI agents to interact with PumpSwap for real-time token swaps and automated on-chain trading.
Features
- Buy Tokens: Purchase tokens using SOL with customizable slippage and priority fees.
- Sell Tokens: Sell tokens for SOL with configurable parameters.
- Token Price Query: Retrieve current token prices in SOL.
- Pool Data Retrieval: Fetch and display detailed pool information for a given token mint.
Prerequisites
- Python 3.13 or higher
- uv for dependency management and script execution
- Solana RPC endpoint (e.g.,
https://api.mainnet-beta.solana.com
) - A valid Solana private key for transaction signing
Installation
-
Clone the Repository:
git clone https://github.com/kukapay/pumpswap-mcp.git cd pumpswap-mcp
-
Install uv: If
uv
is not installed, follow the official uv installation guide. For example:curl -LsSf https://astral.sh/uv/install.sh | sh
-
Set Up Dependencies: Use
uv
to install dependencies:uv sync
-
Configure Environment Variables: Create a
.env.private
filein the project root with the following variables: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-key
Replace
your-solana-private-key
with your actual Solana private key.
Usage
Run the MCP Server
Use uv
to run the server:
uv run main.py
The server will listen for MCP commands and expose the following tools:
buy_token(mint: str, sol_amount: float, user_private_key: str)
: Buy tokens with SOL.sell_token(mint: str, token_amount: float, user_private_key: str)
: Sell tokens for SOL.get_token_price(mint: str)
: Fetch the current token price in SOL.get_pool_data(mint: str)
: Retrieve formatted pool data for a token.
Buy Tokens
Prompt:
Buy 0.1 SOL worth of tokens with mint address FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
This triggers buy_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 0.1)
.
Expected Output:
Buy successful for 0.1 SOL of token FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump
Transaction ID: <transaction-id>
Amount: <token-amount>
Token Price (SOL): <price>
Sell Tokens
Prompt:
Sell 1000 tokens of FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
This triggers sell_token("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump", 1000)
.
Expected Output:
Sell successful for 1000 tokens of FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump
Transaction ID: <transaction-id>
Amount: <sol-amount>
Token Price (SOL): <price>
Get Token Price
Prompt:
What is the current price of the token with mint FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump?
This triggers get_token_price("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump")
.
Expected Output:
The current price of token FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump is <price> SOL.
Get Pool Data
Prompt:
Show me the pool data for the token with mint FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump.
This triggers get_pool_data("FC988ZAKRPc26wefDAxcYWB8kgbJTH4Tg3qDvf7xpump")
.
Expected Output:
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>
Environment Variables
The server uses the following environment variables, loaded from .env.private
:
Variable | Description | Default Value |
---|---|---|
HTTPS_RPC_ENDPOINT |
Solana RPC endpoint URL | https://api.mainnet-beta.solana.com |
BUY_SLIPPAGE |
Slippage tolerance for buy transactions | 0.3 (30%) |
SELL_SLIPPAGE |
Slippage tolerance for sell transactions | 0.1 (10%) |
SWAP_PRIORITY_FEE |
Priority fee for transactions (in lamports) | 1500000 |
PRIVATE_KEY |
Solana private key for signing transactions | None (required) |
Ensure PRIVATE_KEY
is set, as the server will raise an error if it's missing.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Disclaimer
This software interacts with decentralized finance (DeFi) protocols and handles sensitive data like private keys. Use it at your own risk. Ensure your .env.private
file is secure and never share your private key. The authors are not responsible for any financial losses or security issues arising from the use of this software.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.