PumpSwap MCP Server

by kukapay

276 downloads
Not rated
GitHub

About

An MCP server that enables AI agents to interact with PumpSwap for real-time token swaps and automated on-chain trading.

Details

Author
kukapay
Downloads
276
Categories
Other

- Buy tokens with SOL using configurable slippage and priority fees.
- Sell tokens for SOL with configurable parameters.
- Retrieve current token prices in SOL.
- Fetch and display detailed pool information for a given token mint.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name PumpSwap MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install uv, run uv sync to install dependencies, create a .env.private file with a Solana RPC endpoint, slippage settings, priority fee, and your Solana private key, then start the server with uv run main.py.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "pumpswap mcp server": {
            "pumpswap-mcp": {
                "command": "uv",
                "args": [
                    "sync"
                ]
            }
        }
    }
}

McpServers

{
    "pumpswap-mcp": {
        "command": "uv",
        "args": [
            "sync"
        ]
    }
}

PumpSwap MCP Server

An MCP server that enables AI agents to interact with PumpSwap for real-time token swaps and automated on-chain trading.

License
Python
Status

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

1. Clone the Repository:

   git clone https://github.com/kukapay/pumpswap-mcp.git
cd pumpswap-mcp

2. Install uv:
If uv is not installed, follow the official uv installation guide. For example:

   curl -LsSf https://astral.sh/uv/install.sh | sh

3. Set Up Dependencies:
Use uv to install dependencies:

   uv sync

4. 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.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.