Jupiter Perps

Provides market data, portfolio management, and executable trading against a Solana-based Jupiter Perpetuals pool via MCP.
  • typescript

1

GitHub Stars

typescript

Language

5 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs

You are running a Model Context Protocol (MCP) server that lets AI agents trade perpetual futures on Jupiter Perpetuals, powered by an oracle-based pricing model with a shared liquidity pool. This server exposes market data, enables position trading, and provides safe transaction workflows with built-in fee estimation and budget planning.

How to use

Interact with the Jupiter Perps MCP Server through MCP clients to fetch market data, view your portfolio, estimate costs, and open or close leveraged positions. You can run the server locally in stdio mode or access it remotely via HTTP. Use the explorer/inspector tooling to verify transactions and confirm that positions have been created or updated.

How to install

Prerequisites: Node.js 18+ and a Solana wallet with USDC funds for trading.

Step 1: Clone the project repository and install dependencies.

# Clone the MCP server repository
git clone <repository-url>
cd jupiter-perps-mcp

# Install dependencies
npm install

# Build the project
npm run build

Configuration and local environment

Create and configure your environment variables to connect to Solana and sign transactions. You will use a wallet private key and a RPC URL for Solana. Optional settings tune slippage protection and priority fees.

cp .env.example .env

Remote setup using HTTP (recommended for Claude Code isolation)

Run the MCP server as an HTTP service on the host machine. Your wallet keys stay on the host, while Claude Code interacts with the MCP server remotely.

# 1. On the host machine
export MCP_PORT=3000
npm run start:remote

Connecting Claude Code (remote) to HTTP MCP

In Claude Code, configure an MCP connection that points to the host’s MCP HTTP endpoint.

{
  "mcpServers": {
    "jupiter_perps": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "name": "jupiter_perps_http",
      "args": []
    }
  }
}

Local stdio setup (alternative, direct runtime)

You can run a local stdio MCP server instance that launches via a node command and points to the built MCP entry.

{
  "mcpServers": {
    "jupiter_perps_mcp": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/jupiter-perps-mcp/dist/index.js"]
    }
  }
}

Security and best practices

  • Never expose your wallet private key. Keep it on the host machine and use secure access controls for remote setups. - Use a private RPC endpoint for production. - Confirm all transaction details before execution. - All positions are collateralized in USDC and fees may accrue hourly.

Notes on usage and behavior

  • Trades execute at market prices with immediate execution. - The protocol supports opening, increasing, and closing leveraged positions against a pooled liquidity supply. - Slippage protection is applied via MAX_SLIPPAGE_BPS to guard against oracle price movement during transaction confirmation. - The system processes position changes asynchronously, which may take a few seconds and can fail; verify results with get_account_portfolio.

Testing and quick verification

Use the MCP inspector for quick verification of the MCP tools during local testing. You can also curl health checks when running in HTTP mode.

Available tools

get_market_snapshot

Fetch current market prices, 24h stats, fees, and liquidity.

get_candles

Retrieve historical OHLCV data across multiple intervals.

get_account_portfolio

Return USDC balance, positions, PnL, and fees to close.

estimate_open_position

Compute fees and resulting position costs before trading.

open_position

Open or increase a leveraged position.

close_position

Close an existing position at market price.

get_indicator_rsi

RSI momentum oscillator (0-100).

get_indicator_macd

MACD trend/momentum indicator.

get_indicator_bollinger_bands

Bollinger Bands volatility and mean reversion.

get_indicator_atr

ATR volatility measure for stop-loss placement.

get_indicator_ema

Exponential Moving Average indicator.

get_indicator_sma

Simple Moving Average indicator.

get_indicator_stochastic

Stochastic momentum oscillator.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational