Jupiter MCP Server logo

Jupiter MCP Server

by kukapay

An MCP server for executing token swaps on the Solana blockchain using Jupiter's new Ultra API. It fetches swap orders from Jupiter's Ultra API, combining DEX routing and RFQ for optimal pricing, and executes swaps via the API.

View on GitHub

Last updated: N/A

What is Jupiter MCP Server?

The Jupiter MCP Server is a server application designed to execute token swaps on the Solana blockchain. It leverages Jupiter's Ultra API to fetch optimal swap orders by combining DEX routing and RFQ (Request for Quote) mechanisms.

How to use Jupiter MCP Server?

To use the server, you need to clone the repository, install dependencies using npm install, and configure the server with your Solana RPC URL and private key. You can then interact with the server using the provided tools, get-ultra-order and execute-ultra-order, to fetch and execute swap orders respectively.

Key features of Jupiter MCP Server

  • Fetches swap orders from Jupiter's Ultra API

  • Combines DEX routing and RFQ for optimal pricing

  • Executes swaps via Jupiter's Ultra API

  • Handles slippage, priority fees, and transaction landing

Use cases of Jupiter MCP Server

  • Automated token swapping on Solana

  • Integrating Jupiter's Ultra API into applications

  • Executing swaps with optimal pricing

  • Programmatic trading on Solana

FAQ from Jupiter MCP Server

What is the Jupiter Ultra API?

Jupiter's Ultra API combines DEX routing and RFQ for optimal pricing when swapping tokens on Solana.

What are the prerequisites for running the server?

You need Node.js (version 18 or higher), a Solana wallet with a private key, and access to a Solana RPC node.

How do I install the server?

Clone the repository, navigate to the directory, and run npm install.

What is the get-ultra-order tool used for?

It fetches a swap order from Jupiter's Ultra API based on the specified input and output tokens and amount.

What is the execute-ultra-order tool used for?

It requests Jupiter to execute the swap transaction on behalf of the wallet owner, using the transaction data from get-ultra-order.