A Model Context Protocol server for Jupiter API, Solana's premier DEX aggregator. Supports immediate swaps through Ultra API and limit orders through Trigger API. Before installing the extension, ensure you have: 1. Node.js and npx (for envmcp support) - Download from: https://nodejs.org/ - Verify with: npx --version 2. uv/uvx (Python package manager) - Install from: https://docs.astral.sh/uv/gett
Add this skill
npx mdskills install araa47/jupiter-mcpWell-documented Solana swap MCP with clear tool descriptions and setup, but permissions exceed needs
A Model Context Protocol server for Jupiter API, Solana's premier DEX aggregator. Supports immediate swaps through Ultra API and limit orders through Trigger API.
Before installing the extension, ensure you have:
Node.js and npx (for envmcp support)
npx --versionuv/uvx (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | shpowershell -c "irm https://astral.sh/uv/install.ps1 | iex"uvx --versionOnce you have prereqs for easy installation in Claude Desktop:
Download jupiter-mcp-latest.dxt ๐ฅ
The DXT includes:
Note: The DXT file is automatically updated on every commit for the latest features and fixes.
Download the DXT file and double-click to install. See dxt/README.md for detailed instructions.
Instructions:
REPLACE_THIS with your actual solana private key!๐ Install with Direct Input:
cursor://anysphere.cursor-deeplink/mcp/install?name=jupiter-mcp&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyItLWZyb20iLCJnaXQraHR0cHM6Ly9naXRodWIuY29tL2FyYWE0Ny9qdXBpdGVyLW1jcCIsImp1cGl0ZXItbWNwIl0sImVudiI6eyJQUklWQVRFX0tFWSI6IlJFUExBQ0VfVEhJUyIsIlNPTEFOQV9SUENfVVJMIjoiaHR0cHM6Ly9hcGkubWFpbm5ldC1iZXRhLnNvbGFuYS5jb20iLCJTT0xBTkFfTkVUV09SSyI6Im1haW5uZXQtYmV0YSIsIlJFUVVFU1RfVElNRU9VVCI6IjMwIn19
Note: These links only work in Cursor
Manual config for .env file approach:
{
"mcpServers": {
"jupiter-mcp": {
"command": "npx",
"args": [
"envmcp",
"--env-file",
"/path/to/your/.env",
"uvx",
"--from",
"git+https://github.com/araa47/jupiter-mcp",
"jupiter-mcp"
]
}
}
}
Replace /path/to/your/.env with your actual env file path (e.g., /Users/yourname/.env)
Pre-configured values:
SOLANA_RPC_URL:SOLANA_NETWORK: mainnet-betaREQUEST_TIMEOUT: 30 secondsPRIVATE_KEY: You'll need to replace REPLACE_THIS with your base58 encoded private keyAdd this to your MCP client configuration:
{
"mcpServers": {
"jupiter-mcp": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/araa47/jupiter-mcp",
"jupiter-mcp"
],
"env": {
"SOLANA_RPC_URL": "https://api.mainnet-beta.solana.com",
"PRIVATE_KEY": "${PRIVATE_KEY}",
"SOLANA_NETWORK": "mainnet-beta",
"REQUEST_TIMEOUT": "30"
}
}
}
}
If you prefer to load environment variables from a .env file to avoid storing sensitive data in your MCP configuration:
{
"mcpServers": {
"jupiter-mcp": {
"command": "npx",
"args": [
"envmcp",
"--env-file",
"${ENV_FILE_PATH}",
"uvx",
"--from",
"git+https://github.com/araa47/jupiter-mcp",
"jupiter-mcp"
],
"env": {
"ENV_FILE_PATH": ".env"
}
}
}
}
This approach uses envmcp to securely load your PRIVATE_KEY from a .env file without exposing it in configuration files. Replace ENV_FILE_PATH with the absolute path to your .env file (e.g., /Users/yourname/.env or /home/user/.env).
PRIVATE_KEY: Your base58 encoded Solana private key (from Phantom wallet export)SOLANA_RPC_URL if you have a custom RPC endpoint| Tool | Description | Parameters | Cost |
|---|---|---|---|
| get_swap_quote | Get a swap quote and unsigned transaction | input_mint, output_mint, amount | FREE |
| execute_swap_transaction | Execute a signed swap transaction | transaction, request_id | PAID |
| get_balances | Get token balances for a wallet | wallet_address? | FREE |
| get_shield | Get token security information | mints | FREE |
| search_token | Search for tokens | query | FREE |
| Tool | Description | Parameters | Cost |
|---|---|---|---|
| create_limit_order | Create a limit order transaction | input_mint, output_mint, making_amount, taking_amount, slippage_bps?, expired_at? | FREE |
| execute_limit_order | Execute a limit order transaction | transaction, request_id | PAID |
| cancel_limit_order | Cancel a single limit order | order | FREE |
| cancel_limit_orders | Cancel multiple limit orders | orders? | FREE |
| get_limit_orders | Get active/historical limit orders | order_status, wallet_address?, input_mint?, output_mint?, page? | FREE |
This project includes automated DXT building integrated with pre-commit hooks:
dxt/ folderjupiter-mcp-latest.dxt for easy downloads# Build DXT
./scripts/build-dxt.sh
# Output: jupiter-mcp-latest.dxt
# Install pre-commit hooks (includes DXT building)
pre-commit install
# The DXT will be automatically built when changes are detected in:
# - dxt/ directory
# - scripts/build-dxt.sh
For local development or testing:
git clone https://github.com/araa47/jupiter-mcp
cd jupiter-mcp
direnv allow
cp .env.example .env
# Edit .env with your configuration
SOLANA_RPC_URL=https://api.mainnet-beta.solana.com
PRIVATE_KEY=your_base58_encoded_private_key_here
SOLANA_NETWORK=mainnet-beta
REQUEST_TIMEOUT=30
# Start the server locally
uv run python run_server.py
The project includes comprehensive testing with safety features:
๐ Free Tests (Default - No SOL spent):
๐ฐ Paid Tests (Requires --run-paid-tests flag):
# Safe tests only (default)
uv run pytest tests/ -v
# Include real trade execution (spends tiny amounts)
uv run pytest tests/ -v --run-paid-tests
# Test with detailed output
uv run pytest tests/ -v --run-paid-tests -s
@pytest.mark.paidget_swap_quote, get_balances, get_shield, search_token, create_limit_order, cancel_limit_order, cancel_limit_orders, get_limit_orders - API calls onlyexecute_swap_transaction, execute_limit_order - Executes real trades and spends SOL8cK8hCyRQCp52nVuPLnLL71afkRvRcFibSwHMjGFT8bm (Referral Dashboard).env files to version controlenv.example to .env and set your private keyREQUEST_TIMEOUTYour Jupiter MCP server is ready for Solana DeFi interactions! ๐
Install via CLI
npx mdskills install araa47/jupiter-mcpJupiter MCP is a free, open-source AI agent skill. A Model Context Protocol server for Jupiter API, Solana's premier DEX aggregator. Supports immediate swaps through Ultra API and limit orders through Trigger API. Before installing the extension, ensure you have: 1. Node.js and npx (for envmcp support) - Download from: https://nodejs.org/ - Verify with: npx --version 2. uv/uvx (Python package manager) - Install from: https://docs.astral.sh/uv/gett
Install Jupiter MCP with a single command:
npx mdskills install araa47/jupiter-mcpThis downloads the skill files into your project and your AI agent picks them up automatically.
Jupiter MCP works with Claude Code, Claude Desktop, Cursor, Vscode Copilot, Windsurf, Continue Dev, Gemini Cli, Amp, Roo Code, Goose. Skills use the open SKILL.md format which is compatible with any AI coding agent that reads markdown instructions.