pump-portal-mcp-server


Namepump-portal-mcp-server JSON
Version 0.2.3 PyPI version JSON
download
home_pageNone
SummaryA production-ready MCP server for Solana blockchain trading operations using PumpPortal Lightning API
upload_time2025-10-10 23:24:20
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseMIT
keywords blockchain fastmcp mcp pumpportal solana trading
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Pump Portal MCP Server 🚀

A production-ready **Model Context Protocol (MCP)** server that provides Solana blockchain trading operations through **PumpPortal Lightning API**. Create wallets, launch tokens, and execute trades with reliable transaction handling.

## ✨ Features

- 🏦 **Wallet Management**: Create secure trading wallets with API keys
- 🪙 **Token Creation**: Launch new SPL tokens with metadata and social links
- 💰 **Trading Operations**: Buy and sell tokens across multiple DEXs
- 💸 **Fee Collection**: Claim creator fees from token trading activity
- 🔄 **Lightning API**: Reliable transaction execution via PumpPortal infrastructure
- 🛡️ **Production Ready**: Comprehensive error handling, logging, and validation
- 📊 **Trading Resources**: Access wallet info and trading status via MCP resources

## 🚀 Quick Start

### Prerequisites

1. **PumpPortal API Key** - Create a wallet using the `create_wallet` tool
2. **Python 3.11+** (for development only)

### Installation/Configuration

### Add This To Your MCP Configuration

```json

  "pump-portal":{
    "command": "uvx",
    "args": [
      "pump-portal-mcp-server@latest"
    ],
    "env": {
      "API_KEY": "your-pumpportal-api-key-here"
    }
  }
```

Optionally, you can add these other env variables if you wish:

```bash
# Optional
DEFAULT_SLIPPAGE=10                    # Default slippage percentage
DEFAULT_PRIORITY_FEE=0.0005           # Default priority fee in SOL
DEFAULT_POOL=pump                      # Default exchange pool
API_TIMEOUT=30                         # API request timeout (seconds)
LOG_LEVEL=INFO                         # DEBUG, INFO, WARNING, ERROR
LOG_FORMAT=standard                    # standard, json, detailed
```

**Getting your API key:**

You have three options to get your API key:

**Option 1: Use the create_wallet tool (Recommended)**
1. Start the server temporarily without an API key
2. Use the `create_wallet` tool to generate a new wallet
3. Copy the `apiKey` from the response
4. Update your configuration with the API key
5. Restart the server

**Option 2: Use PumpPortal web interface**
1. Visit https://pumpportal.fun/trading-api/setup
2. Click 'Create Wallet'
3. Copy the `apiKey` from the response
4. Update your configuration with the API key

**Option 3: Use curl command**
```bash
curl 'https://pumpportal.fun/api/create-wallet'
```
Copy the `apiKey` from the response and update your configuration.

## 🛠️ Available Tools

### Wallet Operations

#### `create_wallet`
Create a new trading wallet and API key.

**Returns:**
- `apiKey`: For Lightning API operations
- `walletPublicKey`: Public key for receiving funds
- `privateKey`: Keep secure for wallet access

### Token Operations

#### `create_token`
Launch a new SPL token on PumpPortal.

**Parameters:**
- `name`: Token name
- `symbol`: Token ticker (1-10 chars)
- `description`: Token description
- `dev_buy_amount`: SOL amount for initial buy (min 0.01)
- `image_base64`: Token icon (base64 encoded, optional)
- `twitter`: Twitter URL (optional)
- `telegram`: Telegram URL (optional)
- `website`: Website URL (optional)
- `slippage`: Slippage percentage (default: 10)
- `priority_fee`: Priority fee in SOL (default: 0.0005)

**Example:**
```python
create_token(
    name="My Token",
    symbol="MTK",
    description="A revolutionary token",
    dev_buy_amount=0.1,
    twitter="https://twitter.com/mytoken",
    website="https://mytoken.com"
)
```

### Trading Operations

#### `buy_token`
Buy tokens using Lightning API.

**Parameters:**
- `mint`: Token contract address
- `amount`: Amount to trade
- `denominated_in_sol`: "true" for SOL amount, "false" for token count
- `slippage`: Slippage percentage (default: 10)
- `priority_fee`: Priority fee in SOL (default: 0.0005)
- `pool`: Exchange pool (pump, raydium, pump-amm, launchlab, raydium-cpmm, bonk, auto)

#### `sell_token`
Sell tokens using Lightning API.

**Parameters:**
- `mint`: Token contract address
- `amount`: Amount to trade (can be "100%" to sell all)
- `denominated_in_sol`: "true" for SOL amount, "false" for token count
- `slippage`: Slippage percentage (default: 10)
- `priority_fee`: Priority fee in SOL (default: 0.0005)
- `pool`: Exchange pool (pump, raydium, pump-amm, launchlab, raydium-cpmm, bonk, auto)

#### `claim_fees`
Claim creator fees from trading activity.

**Parameters:**
- `pool`: Pool type ("pump" or "meteora-dbc")
- `mint`: Token address (required for meteora-dbc)
- `priority_fee`: Priority fee in SOL (default: 0.000001)

## 📊 Available Resources

### Wallet Information
- `pumpportal://wallet/current` - Current wallet configuration and status
- `pumpportal://status/trading` - Trading service capabilities and settings

## 💡 Available Prompts

### Trading Guidance
- `token_launch_checklist` - Comprehensive token launch checklist
- `trading_strategy_guide` - Trading strategies and risk management
- `portfolio_management` - Portfolio diversification and management

## ⚙️ Environment Variables

```bash
# Required
API_KEY=your-pumpportal-api-key-here

# Optional
DEFAULT_SLIPPAGE=10                    # Default slippage percentage
DEFAULT_PRIORITY_FEE=0.0005           # Default priority fee in SOL
DEFAULT_POOL=pump                      # Default exchange pool
API_TIMEOUT=30                         # API request timeout (seconds)
LOG_LEVEL=INFO                         # DEBUG, INFO, WARNING, ERROR
LOG_FORMAT=standard                    # standard, json, detailed
```

## 🔄 Pool Types

- **pump**: Pump.fun tokens (high volatility, new launches)
- **raydium**: Established tokens with better liquidity
- **pump-amm**: Automated market maker for pump tokens
- **launchlab**: LaunchLab platform tokens
- **raydium-cpmm**: Raydium constant product market maker
- **bonk**: Bonk ecosystem tokens
- **auto**: Automatic pool selection based on best conditions

## 🐛 Troubleshooting

### Common Issues

**"API_KEY not set"**
- Use one of these methods to get your API key:
  - Use the `create_wallet` tool to generate a new wallet
  - Visit https://pumpportal.fun/trading-api/setup and click 'Create Wallet'
  - Run `curl 'https://pumpportal.fun/api/create-wallet'`
- Add the returned `apiKey` to your configuration
- Restart the MCP server

**"Trading failed" errors**
- Check your wallet has sufficient SOL balance
- Verify the token mint address is correct
- Adjust slippage settings for volatile markets
- Ensure priority fee is adequate for network conditions

**"Token creation failed"**
- Verify dev buy amount is at least 0.01 SOL
- Check token name and symbol are valid
- Ensure image is properly base64 encoded if provided
- Verify all URLs are valid and accessible

### Development Setup

For local development:

```bash
# Clone repository
git clone https://github.com/pump-portal/pump-portal-mcp-server.git
cd pump-portal-mcp-server

# Install with uv
uv sync

# Set environment (create wallet first to get API key)
export API_KEY=your-api-key-here

# Run locally
uv run python -m pump_portal_mcp_server.server
```

## ⚠️ Risk Disclaimer

Trading cryptocurrencies involves substantial risk of loss and is not suitable for all investors. The Pump Portal MCP Server is a tool for executing trades and does not provide financial advice. Always:

- Do your own research before trading
- Never invest more than you can afford to lose
- Understand the risks of cryptocurrency trading
- Consider consulting with a financial advisor

## 📄 License

MIT License - see [LICENSE](LICENSE) for details.

## 🆘 Support

- **Issues**: [GitHub Issues](https://github.com/pump-portal/pump-portal-mcp-server/issues)
- **Discussions**: [GitHub Discussions](https://github.com/pump-portal/pump-portal-mcp-server/discussions)
- **PumpPortal**: [PumpPortal.fun](https://pumpportal.fun)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pump-portal-mcp-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "blockchain, fastmcp, mcp, pumpportal, solana, trading",
    "author": null,
    "author_email": "Pump Portal Team <team@pumpportal.dev>",
    "download_url": "https://files.pythonhosted.org/packages/d2/91/ac3d20a6f3652302d896e4bad0594f60dfe0bbba948abf5526b663909f5a/pump_portal_mcp_server-0.2.3.tar.gz",
    "platform": null,
    "description": "# Pump Portal MCP Server \ud83d\ude80\n\nA production-ready **Model Context Protocol (MCP)** server that provides Solana blockchain trading operations through **PumpPortal Lightning API**. Create wallets, launch tokens, and execute trades with reliable transaction handling.\n\n## \u2728 Features\n\n- \ud83c\udfe6 **Wallet Management**: Create secure trading wallets with API keys\n- \ud83e\ude99 **Token Creation**: Launch new SPL tokens with metadata and social links\n- \ud83d\udcb0 **Trading Operations**: Buy and sell tokens across multiple DEXs\n- \ud83d\udcb8 **Fee Collection**: Claim creator fees from token trading activity\n- \ud83d\udd04 **Lightning API**: Reliable transaction execution via PumpPortal infrastructure\n- \ud83d\udee1\ufe0f **Production Ready**: Comprehensive error handling, logging, and validation\n- \ud83d\udcca **Trading Resources**: Access wallet info and trading status via MCP resources\n\n## \ud83d\ude80 Quick Start\n\n### Prerequisites\n\n1. **PumpPortal API Key** - Create a wallet using the `create_wallet` tool\n2. **Python 3.11+** (for development only)\n\n### Installation/Configuration\n\n### Add This To Your MCP Configuration\n\n```json\n\n  \"pump-portal\":{\n    \"command\": \"uvx\",\n    \"args\": [\n      \"pump-portal-mcp-server@latest\"\n    ],\n    \"env\": {\n      \"API_KEY\": \"your-pumpportal-api-key-here\"\n    }\n  }\n```\n\nOptionally, you can add these other env variables if you wish:\n\n```bash\n# Optional\nDEFAULT_SLIPPAGE=10                    # Default slippage percentage\nDEFAULT_PRIORITY_FEE=0.0005           # Default priority fee in SOL\nDEFAULT_POOL=pump                      # Default exchange pool\nAPI_TIMEOUT=30                         # API request timeout (seconds)\nLOG_LEVEL=INFO                         # DEBUG, INFO, WARNING, ERROR\nLOG_FORMAT=standard                    # standard, json, detailed\n```\n\n**Getting your API key:**\n\nYou have three options to get your API key:\n\n**Option 1: Use the create_wallet tool (Recommended)**\n1. Start the server temporarily without an API key\n2. Use the `create_wallet` tool to generate a new wallet\n3. Copy the `apiKey` from the response\n4. Update your configuration with the API key\n5. Restart the server\n\n**Option 2: Use PumpPortal web interface**\n1. Visit https://pumpportal.fun/trading-api/setup\n2. Click 'Create Wallet'\n3. Copy the `apiKey` from the response\n4. Update your configuration with the API key\n\n**Option 3: Use curl command**\n```bash\ncurl 'https://pumpportal.fun/api/create-wallet'\n```\nCopy the `apiKey` from the response and update your configuration.\n\n## \ud83d\udee0\ufe0f Available Tools\n\n### Wallet Operations\n\n#### `create_wallet`\nCreate a new trading wallet and API key.\n\n**Returns:**\n- `apiKey`: For Lightning API operations\n- `walletPublicKey`: Public key for receiving funds\n- `privateKey`: Keep secure for wallet access\n\n### Token Operations\n\n#### `create_token`\nLaunch a new SPL token on PumpPortal.\n\n**Parameters:**\n- `name`: Token name\n- `symbol`: Token ticker (1-10 chars)\n- `description`: Token description\n- `dev_buy_amount`: SOL amount for initial buy (min 0.01)\n- `image_base64`: Token icon (base64 encoded, optional)\n- `twitter`: Twitter URL (optional)\n- `telegram`: Telegram URL (optional)\n- `website`: Website URL (optional)\n- `slippage`: Slippage percentage (default: 10)\n- `priority_fee`: Priority fee in SOL (default: 0.0005)\n\n**Example:**\n```python\ncreate_token(\n    name=\"My Token\",\n    symbol=\"MTK\",\n    description=\"A revolutionary token\",\n    dev_buy_amount=0.1,\n    twitter=\"https://twitter.com/mytoken\",\n    website=\"https://mytoken.com\"\n)\n```\n\n### Trading Operations\n\n#### `buy_token`\nBuy tokens using Lightning API.\n\n**Parameters:**\n- `mint`: Token contract address\n- `amount`: Amount to trade\n- `denominated_in_sol`: \"true\" for SOL amount, \"false\" for token count\n- `slippage`: Slippage percentage (default: 10)\n- `priority_fee`: Priority fee in SOL (default: 0.0005)\n- `pool`: Exchange pool (pump, raydium, pump-amm, launchlab, raydium-cpmm, bonk, auto)\n\n#### `sell_token`\nSell tokens using Lightning API.\n\n**Parameters:**\n- `mint`: Token contract address\n- `amount`: Amount to trade (can be \"100%\" to sell all)\n- `denominated_in_sol`: \"true\" for SOL amount, \"false\" for token count\n- `slippage`: Slippage percentage (default: 10)\n- `priority_fee`: Priority fee in SOL (default: 0.0005)\n- `pool`: Exchange pool (pump, raydium, pump-amm, launchlab, raydium-cpmm, bonk, auto)\n\n#### `claim_fees`\nClaim creator fees from trading activity.\n\n**Parameters:**\n- `pool`: Pool type (\"pump\" or \"meteora-dbc\")\n- `mint`: Token address (required for meteora-dbc)\n- `priority_fee`: Priority fee in SOL (default: 0.000001)\n\n## \ud83d\udcca Available Resources\n\n### Wallet Information\n- `pumpportal://wallet/current` - Current wallet configuration and status\n- `pumpportal://status/trading` - Trading service capabilities and settings\n\n## \ud83d\udca1 Available Prompts\n\n### Trading Guidance\n- `token_launch_checklist` - Comprehensive token launch checklist\n- `trading_strategy_guide` - Trading strategies and risk management\n- `portfolio_management` - Portfolio diversification and management\n\n## \u2699\ufe0f Environment Variables\n\n```bash\n# Required\nAPI_KEY=your-pumpportal-api-key-here\n\n# Optional\nDEFAULT_SLIPPAGE=10                    # Default slippage percentage\nDEFAULT_PRIORITY_FEE=0.0005           # Default priority fee in SOL\nDEFAULT_POOL=pump                      # Default exchange pool\nAPI_TIMEOUT=30                         # API request timeout (seconds)\nLOG_LEVEL=INFO                         # DEBUG, INFO, WARNING, ERROR\nLOG_FORMAT=standard                    # standard, json, detailed\n```\n\n## \ud83d\udd04 Pool Types\n\n- **pump**: Pump.fun tokens (high volatility, new launches)\n- **raydium**: Established tokens with better liquidity\n- **pump-amm**: Automated market maker for pump tokens\n- **launchlab**: LaunchLab platform tokens\n- **raydium-cpmm**: Raydium constant product market maker\n- **bonk**: Bonk ecosystem tokens\n- **auto**: Automatic pool selection based on best conditions\n\n## \ud83d\udc1b Troubleshooting\n\n### Common Issues\n\n**\"API_KEY not set\"**\n- Use one of these methods to get your API key:\n  - Use the `create_wallet` tool to generate a new wallet\n  - Visit https://pumpportal.fun/trading-api/setup and click 'Create Wallet'\n  - Run `curl 'https://pumpportal.fun/api/create-wallet'`\n- Add the returned `apiKey` to your configuration\n- Restart the MCP server\n\n**\"Trading failed\" errors**\n- Check your wallet has sufficient SOL balance\n- Verify the token mint address is correct\n- Adjust slippage settings for volatile markets\n- Ensure priority fee is adequate for network conditions\n\n**\"Token creation failed\"**\n- Verify dev buy amount is at least 0.01 SOL\n- Check token name and symbol are valid\n- Ensure image is properly base64 encoded if provided\n- Verify all URLs are valid and accessible\n\n### Development Setup\n\nFor local development:\n\n```bash\n# Clone repository\ngit clone https://github.com/pump-portal/pump-portal-mcp-server.git\ncd pump-portal-mcp-server\n\n# Install with uv\nuv sync\n\n# Set environment (create wallet first to get API key)\nexport API_KEY=your-api-key-here\n\n# Run locally\nuv run python -m pump_portal_mcp_server.server\n```\n\n## \u26a0\ufe0f Risk Disclaimer\n\nTrading cryptocurrencies involves substantial risk of loss and is not suitable for all investors. The Pump Portal MCP Server is a tool for executing trades and does not provide financial advice. Always:\n\n- Do your own research before trading\n- Never invest more than you can afford to lose\n- Understand the risks of cryptocurrency trading\n- Consider consulting with a financial advisor\n\n## \ud83d\udcc4 License\n\nMIT License - see [LICENSE](LICENSE) for details.\n\n## \ud83c\udd98 Support\n\n- **Issues**: [GitHub Issues](https://github.com/pump-portal/pump-portal-mcp-server/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/pump-portal/pump-portal-mcp-server/discussions)\n- **PumpPortal**: [PumpPortal.fun](https://pumpportal.fun)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A production-ready MCP server for Solana blockchain trading operations using PumpPortal Lightning API",
    "version": "0.2.3",
    "project_urls": {
        "Bug Tracker": "https://github.com/pump-portal/mcp-server/issues",
        "Documentation": "https://docs.pumpportal.dev",
        "Homepage": "https://github.com/pump-portal/mcp-server",
        "Repository": "https://github.com/pump-portal/mcp-server.git"
    },
    "split_keywords": [
        "blockchain",
        " fastmcp",
        " mcp",
        " pumpportal",
        " solana",
        " trading"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a174aa84608282ae28bd1265c9008a125b2548a1718d13e8da8db29795ea84be",
                "md5": "b27ba8c24997d6cfee0a1403fa737d59",
                "sha256": "4ca6e8447b6ab92e7e0804ecbbbc544e7cecbf88be62dca2572b257e96ae2453"
            },
            "downloads": -1,
            "filename": "pump_portal_mcp_server-0.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b27ba8c24997d6cfee0a1403fa737d59",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 30596,
            "upload_time": "2025-10-10T23:24:19",
            "upload_time_iso_8601": "2025-10-10T23:24:19.372432Z",
            "url": "https://files.pythonhosted.org/packages/a1/74/aa84608282ae28bd1265c9008a125b2548a1718d13e8da8db29795ea84be/pump_portal_mcp_server-0.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d291ac3d20a6f3652302d896e4bad0594f60dfe0bbba948abf5526b663909f5a",
                "md5": "7c4922c77427d833cb3ea4930df369d7",
                "sha256": "a2a0ab8a9ec93b661ce547eb71b31ea2ab35caff93a156aabb66b0289674a3a9"
            },
            "downloads": -1,
            "filename": "pump_portal_mcp_server-0.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "7c4922c77427d833cb3ea4930df369d7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 159668,
            "upload_time": "2025-10-10T23:24:20",
            "upload_time_iso_8601": "2025-10-10T23:24:20.508591Z",
            "url": "https://files.pythonhosted.org/packages/d2/91/ac3d20a6f3652302d896e4bad0594f60dfe0bbba948abf5526b663909f5a/pump_portal_mcp_server-0.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-10 23:24:20",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pump-portal",
    "github_project": "mcp-server",
    "github_not_found": true,
    "lcname": "pump-portal-mcp-server"
}
        
Elapsed time: 2.12433s