此仓库包含一个模型上下文协议(MCP)服务器,该服务器为Claude提供了访问Jupiter交换API的功能。该服务器使Claude能够执行诸如获取报价、构建交换交易以及在Solana区块链上发送交换交易等操作。
MCP服务器向Claude暴露了几个工具:
jupiter_get_quote:获取在Jupiter上交换代币的报价jupiter_build_swap_transaction:在Jupiter上构建交换交易jupiter_send_swap_transaction:在Jupiter上发送交换交易jupiter_execute_swap:使用环境变量中的钱包私钥执行完整的交换此服务器使用Jupiter API:
https://lite-api.jup.ag/swap/v1) 执行交换Lite API提供了一个简化接口,在单个请求中构建和执行交换,从而提高了可靠性。
# 全局安装
npm install -g jupiter-mcp-server
# 或使用npx
npx jupiter-mcp-server
克隆此仓库:
git clone https://github.com/quanghuynguyen1902/jupiter-mcp-server.git
cd jupiter-mcp-server
安装依赖项:
npm ci
构建项目:
npm run build
全局安装(可选):
npm install -g ./
要配置Claude桌面以使用此MCP服务器并自动执行交换,请使用环境变量:
打开Claude桌面
导航到Claude桌面配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\\Claude\\claude_desktop_config.json~/.config/Claude/claude_desktop_config.json添加带有环境变量的MCP服务器配置:
{
"mcpServers": {
"jupiter-mcp-server": {
"command": "npx",
"args": ["jupiter-mcp-server"],
"env": {
"SOLANA_PRIVATE_KEY": "your_private_key_in_base58_format",
"SOLANA_RPC_ENDPOINT": "https://api.mainnet-beta.solana.com",
"SOLANA_NETWORK": "mainnet-beta",
"LOG_LEVEL": "info"
}
}
}
}
如果你是从源代码安装并且想要运行本地版本,请使用:
{
"mcpServers": {
"jupiter-mcp-server": {
"command": "node",
"args": [
"/path/to/your/jupiter-mcp-server/build/index.js"
],
"env": {
"SOLANA_PRIVATE_KEY": "your_private_key_in_base58_format",
"SOLANA_RPC_ENDPOINT": "https://api.mainnet-beta.solana.com",
"SOLANA_NETWORK": "mainnet-beta",
"LOG_LEVEL": "info"
}
}
}
}
如果你直接运行服务器(而不是通过Claude桌面),可以在根目录创建一个.env文件,包含相同的变量:
SOLANA_PRIVATE_KEY=your_private_key_in_base58_format
SOLANA_RPC_ENDPOINT=https://api.mainnet-beta.solana.com
SOLANA_NETWORK=mainnet-beta
LOG_LEVEL=info
# 如果全局安装
jupiter-mcp-server
# 如果从源代码安装
node build/index.js
# 使用npx
npx jupiter-mcp-server
配置完成后,重启Claude桌面。Claude现在可以访问Jupiter交换工具。你可以要求Claude:
获取交换代币的报价:
把1 SOL换成USDC的报价是多少?
构建交换交易:
根据我刚刚得到的报价构建交换交易。
发送交换交易:
发送我刚刚构建的交换交易。
自动执行交换(如果提供了私钥):
执行0.1 SOL换USDC的交换。
如果你的环境已配置了Solana私钥,Claude可以直接执行交换,而无需手动签名交易。此功能使用环境中的私钥来:
一步完成!
如果在交换执行过程中遇到错误:
LOG_LEVEL=debug以获取详细日志要向MCP服务器添加新工具:
src/tools.ts中定义工具src/tools.ts中的handlers对象npm run build
npm test
确保你已登录到npm:
npm login
然后发布包:
npm publish
要发布新版本,首先更新package.json中的版本号:
npm version patch # 或 minor,或 major
npm publish
MIT