@gala-chain/launchpad-mcp-server 1.27.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +110 -18
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.d.ts.map +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/generated/version.js.map +1 -1
- package/dist/prompts/advanced-pools.d.ts +18 -0
- package/dist/prompts/advanced-pools.d.ts.map +1 -0
- package/dist/prompts/advanced-pools.js +90 -0
- package/dist/prompts/advanced-pools.js.map +1 -0
- package/dist/prompts/index.d.ts +7 -5
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +12 -4
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/liquidity-positions.d.ts +12 -0
- package/dist/prompts/liquidity-positions.d.ts.map +1 -1
- package/dist/prompts/liquidity-positions.js +80 -1
- package/dist/prompts/liquidity-positions.js.map +1 -1
- package/dist/prompts/monitoring.d.ts +23 -0
- package/dist/prompts/monitoring.d.ts.map +1 -0
- package/dist/prompts/monitoring.js +169 -0
- package/dist/prompts/monitoring.js.map +1 -0
- package/dist/schemas/common-schemas.d.ts +42 -0
- package/dist/schemas/common-schemas.d.ts.map +1 -1
- package/dist/schemas/common-schemas.js +43 -1
- package/dist/schemas/common-schemas.js.map +1 -1
- package/dist/tools/balance/all-assets.d.ts +9 -0
- package/dist/tools/balance/all-assets.d.ts.map +1 -0
- package/dist/tools/balance/all-assets.js +104 -0
- package/dist/tools/balance/all-assets.js.map +1 -0
- package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -1
- package/dist/tools/dex/fetchAllDexPools.js +5 -0
- package/dist/tools/dex/fetchAllDexPools.js.map +1 -1
- package/dist/tools/dex/index.js +1 -1
- package/dist/tools/dex/index.js.map +1 -1
- package/dist/tools/dex/liquidity-positions.d.ts +1 -0
- package/dist/tools/dex/liquidity-positions.d.ts.map +1 -1
- package/dist/tools/dex/liquidity-positions.js +103 -29
- package/dist/tools/dex/liquidity-positions.js.map +1 -1
- package/dist/tools/dex/pool-price.d.ts +9 -0
- package/dist/tools/dex/pool-price.d.ts.map +1 -0
- package/dist/tools/dex/pool-price.js +78 -0
- package/dist/tools/dex/pool-price.js.map +1 -0
- package/dist/tools/dex/pool-quote-calculation.d.ts +9 -0
- package/dist/tools/dex/pool-quote-calculation.d.ts.map +1 -0
- package/dist/tools/dex/pool-quote-calculation.js +99 -0
- package/dist/tools/dex/pool-quote-calculation.js.map +1 -0
- package/dist/tools/dex/pool-quote-external.d.ts +10 -0
- package/dist/tools/dex/pool-quote-external.d.ts.map +1 -0
- package/dist/tools/dex/pool-quote-external.js +84 -0
- package/dist/tools/dex/pool-quote-external.js.map +1 -0
- package/dist/tools/dex/pool-quote-local.d.ts +10 -0
- package/dist/tools/dex/pool-quote-local.d.ts.map +1 -0
- package/dist/tools/dex/pool-quote-local.js +84 -0
- package/dist/tools/dex/pool-quote-local.js.map +1 -0
- package/dist/tools/dex/position-direct.d.ts +9 -0
- package/dist/tools/dex/position-direct.d.ts.map +1 -0
- package/dist/tools/dex/position-direct.js +65 -0
- package/dist/tools/dex/position-direct.js.map +1 -0
- package/dist/tools/index.d.ts +9 -9
- package/dist/tools/index.js +10 -10
- package/dist/tools/pools/composite-pool.d.ts +9 -0
- package/dist/tools/pools/composite-pool.d.ts.map +1 -0
- package/dist/tools/pools/composite-pool.js +69 -0
- package/dist/tools/pools/composite-pool.js.map +1 -0
- package/dist/tools/utils/cleanup.d.ts +9 -0
- package/dist/tools/utils/cleanup.d.ts.map +1 -0
- package/dist/tools/utils/cleanup.js +54 -0
- package/dist/tools/utils/cleanup.js.map +1 -0
- package/dist/tools/utils/faucet.d.ts +10 -0
- package/dist/tools/utils/faucet.d.ts.map +1 -0
- package/dist/tools/utils/faucet.js +51 -0
- package/dist/tools/utils/faucet.js.map +1 -0
- package/package.json +2 -2
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* - Removing liquidity and collecting fees
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.liquidityPositionTools = exports.collectPositionFeesTool = exports.removeLiquidityTool = exports.addLiquidityByTicksTool = exports.addLiquidityByPriceTool = exports.estimateRemoveLiquidityTool = exports.getLiquidityPositionTool = exports.getLiquidityPositionByIdTool = exports.getUserLiquidityPositionsTool = void 0;
|
|
12
|
+
exports.liquidityPositionTools = exports.collectPositionFeesTool = exports.removeLiquidityTool = exports.addLiquidityByTicksTool = exports.addLiquidityByPriceTool = exports.estimateRemoveLiquidityTool = exports.getLiquidityPositionTool = exports.getLiquidityPositionByIdTool = exports.getAllUserLiquidityPositionsTool = exports.getUserLiquidityPositionsTool = void 0;
|
|
13
13
|
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
14
14
|
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
15
15
|
const common_schemas_js_1 = require("../../schemas/common-schemas.js");
|
|
@@ -26,10 +26,31 @@ const FEE_TIER_SCHEMA = {
|
|
|
26
26
|
enum: [500, 3000, 10000],
|
|
27
27
|
description: 'Fee tier in basis points: 500 (0.05%), 3000 (0.30%), 10000 (1.00%)',
|
|
28
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Helper function to format position data for MCP response
|
|
31
|
+
* Extracts and maps position fields consistently across multiple tools
|
|
32
|
+
*/
|
|
33
|
+
function formatPositions(positions) {
|
|
34
|
+
return (positions && Array.isArray(positions))
|
|
35
|
+
? positions.map((pos) => ({
|
|
36
|
+
positionId: pos.positionId,
|
|
37
|
+
token0: pos.token0,
|
|
38
|
+
token1: pos.token1,
|
|
39
|
+
feeTier: pos.feeTier,
|
|
40
|
+
liquidity: pos.liquidity,
|
|
41
|
+
amount0: pos.amount0,
|
|
42
|
+
amount1: pos.amount1,
|
|
43
|
+
feeAmount0: pos.feeAmount0,
|
|
44
|
+
feeAmount1: pos.feeAmount1,
|
|
45
|
+
tickLower: pos.tickLower,
|
|
46
|
+
tickUpper: pos.tickUpper,
|
|
47
|
+
}))
|
|
48
|
+
: [];
|
|
49
|
+
}
|
|
29
50
|
// 1. Get User Liquidity Positions
|
|
30
51
|
exports.getUserLiquidityPositionsTool = {
|
|
31
52
|
name: 'gala_launchpad_get_user_liquidity_positions',
|
|
32
|
-
description: 'Get all open liquidity positions for a wallet address with optional pagination',
|
|
53
|
+
description: 'Get all open liquidity positions for a wallet address with optional pagination and real-time pricing. Note: bookmark pagination and pricing options are mutually exclusive - use getAllUserLiquidityPositionsTool for pricing with auto-pagination',
|
|
33
54
|
inputSchema: {
|
|
34
55
|
type: 'object',
|
|
35
56
|
properties: {
|
|
@@ -45,38 +66,90 @@ exports.getUserLiquidityPositionsTool = {
|
|
|
45
66
|
},
|
|
46
67
|
bookmark: {
|
|
47
68
|
type: 'string',
|
|
48
|
-
description: 'Pagination bookmark from previous response (optional)',
|
|
69
|
+
description: 'Pagination bookmark from previous response (optional). Cannot be used together with withPrices - if you need pricing, use getAllUserLiquidityPositionsTool instead',
|
|
70
|
+
},
|
|
71
|
+
withPrices: {
|
|
72
|
+
type: 'boolean',
|
|
73
|
+
description: 'Whether to fetch real-time pricing for each position (optional, default: false). Cannot be used together with bookmark - if you need pagination, use bookmark without withPrices. Pricing concurrency is controlled by SDK-level pricingConcurrency configuration',
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
required: ['ownerAddress'],
|
|
77
|
+
},
|
|
78
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
79
|
+
let result;
|
|
80
|
+
// Determine which parameters to pass based on what's provided
|
|
81
|
+
if (args.withPrices) {
|
|
82
|
+
// When pricing is requested, pass pricing options as 3rd parameter (can't use bookmark with options)
|
|
83
|
+
const pricingOptions = { withPrices: true };
|
|
84
|
+
result = await sdk.getSwapUserLiquidityPositions(args.ownerAddress, args.limit, pricingOptions);
|
|
85
|
+
}
|
|
86
|
+
else if (args.bookmark) {
|
|
87
|
+
// When only bookmark pagination is used, pass bookmark as 3rd parameter
|
|
88
|
+
result = await sdk.getSwapUserLiquidityPositions(args.ownerAddress, args.limit, args.bookmark);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
// No pagination or pricing, just fetch positions
|
|
92
|
+
result = await sdk.getSwapUserLiquidityPositions(args.ownerAddress, args.limit);
|
|
93
|
+
}
|
|
94
|
+
// Handle both array and object returns for backward compatibility
|
|
95
|
+
const positions = Array.isArray(result) ? result : result?.items || [];
|
|
96
|
+
const prices = !Array.isArray(result) && result?.prices ? result.prices : new Map();
|
|
97
|
+
const pricesCount = prices.size;
|
|
98
|
+
return (0, response_formatter_js_1.formatSuccess)({
|
|
99
|
+
ownerAddress: args.ownerAddress,
|
|
100
|
+
positionCount: positions.length,
|
|
101
|
+
positionsWithPricing: pricesCount,
|
|
102
|
+
positions: formatPositions(positions),
|
|
103
|
+
pricingStatus: args.withPrices
|
|
104
|
+
? `Pricing fetched for ${pricesCount}/${positions.length} positions`
|
|
105
|
+
: 'No pricing requested',
|
|
106
|
+
message: positions.length > 0
|
|
107
|
+
? `${positions.length} open positions found${args.withPrices ? ` with pricing data for ${pricesCount}` : ''}`
|
|
108
|
+
: 'No open positions found',
|
|
109
|
+
});
|
|
110
|
+
}),
|
|
111
|
+
};
|
|
112
|
+
// 2. Get ALL User Liquidity Positions (Auto-Paginated)
|
|
113
|
+
exports.getAllUserLiquidityPositionsTool = {
|
|
114
|
+
name: 'gala_launchpad_get_all_user_liquidity_positions',
|
|
115
|
+
description: 'Get ALL open liquidity positions for a wallet address with automatic pagination and optional real-time pricing',
|
|
116
|
+
inputSchema: {
|
|
117
|
+
type: 'object',
|
|
118
|
+
properties: {
|
|
119
|
+
ownerAddress: {
|
|
120
|
+
...common_schemas_js_1.ADDRESS_SCHEMA,
|
|
121
|
+
description: 'Wallet address to query all positions for (e.g., "0x1234..." or "eth|1234...")',
|
|
122
|
+
},
|
|
123
|
+
withPrices: {
|
|
124
|
+
type: 'boolean',
|
|
125
|
+
description: 'Whether to fetch real-time pricing for each position (optional, default: false). Pricing concurrency is controlled by SDK-level pricingConcurrency configuration',
|
|
49
126
|
},
|
|
50
127
|
},
|
|
51
128
|
required: ['ownerAddress'],
|
|
52
129
|
},
|
|
53
130
|
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
54
|
-
|
|
131
|
+
// Prepare pricing options object if requested
|
|
132
|
+
const pricingOptions = args.withPrices ? { withPrices: true } : undefined;
|
|
133
|
+
const result = await sdk.getAllSwapUserLiquidityPositions(args.ownerAddress, pricingOptions);
|
|
134
|
+
// Handle both array and object returns for backward compatibility
|
|
135
|
+
const positions = Array.isArray(result) ? result : result?.items || [];
|
|
136
|
+
const prices = !Array.isArray(result) && result?.prices ? result.prices : new Map();
|
|
137
|
+
const pricesCount = prices.size;
|
|
55
138
|
return (0, response_formatter_js_1.formatSuccess)({
|
|
56
139
|
ownerAddress: args.ownerAddress,
|
|
57
|
-
positionCount:
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
amount0: pos.amount0,
|
|
66
|
-
amount1: pos.amount1,
|
|
67
|
-
feeAmount0: pos.feeAmount0,
|
|
68
|
-
feeAmount1: pos.feeAmount1,
|
|
69
|
-
tickLower: pos.tickLower,
|
|
70
|
-
tickUpper: pos.tickUpper,
|
|
71
|
-
}))
|
|
72
|
-
: [],
|
|
73
|
-
message: (positions && Array.isArray(positions))
|
|
74
|
-
? `${positions.length} open positions found`
|
|
140
|
+
positionCount: positions.length,
|
|
141
|
+
positionsWithPricing: pricesCount,
|
|
142
|
+
positions: formatPositions(positions),
|
|
143
|
+
pricingStatus: args.withPrices
|
|
144
|
+
? `Pricing fetched for ${pricesCount}/${positions.length} positions`
|
|
145
|
+
: 'No pricing requested',
|
|
146
|
+
message: positions.length > 0
|
|
147
|
+
? `${positions.length} open positions found (auto-paginated)${args.withPrices ? ` with pricing data for ${pricesCount}` : ''}`
|
|
75
148
|
: 'No open positions found',
|
|
76
149
|
});
|
|
77
150
|
}),
|
|
78
151
|
};
|
|
79
|
-
//
|
|
152
|
+
// 3. Get Liquidity Position by ID
|
|
80
153
|
exports.getLiquidityPositionByIdTool = {
|
|
81
154
|
name: 'gala_launchpad_get_liquidity_position_by_id',
|
|
82
155
|
description: 'Get specific liquidity position details by position ID',
|
|
@@ -123,7 +196,7 @@ exports.getLiquidityPositionByIdTool = {
|
|
|
123
196
|
});
|
|
124
197
|
}),
|
|
125
198
|
};
|
|
126
|
-
//
|
|
199
|
+
// 4. Get Liquidity Position by Token Pair
|
|
127
200
|
exports.getLiquidityPositionTool = {
|
|
128
201
|
name: 'gala_launchpad_get_liquidity_position',
|
|
129
202
|
description: 'Get liquidity position for a specific token pair and price range (tick boundaries)',
|
|
@@ -179,7 +252,7 @@ exports.getLiquidityPositionTool = {
|
|
|
179
252
|
});
|
|
180
253
|
}),
|
|
181
254
|
};
|
|
182
|
-
//
|
|
255
|
+
// 5. Estimate Liquidity Removal
|
|
183
256
|
exports.estimateRemoveLiquidityTool = {
|
|
184
257
|
name: 'gala_launchpad_estimate_remove_liquidity',
|
|
185
258
|
description: 'Estimate tokens and fees received when removing liquidity at current market prices',
|
|
@@ -228,7 +301,7 @@ exports.estimateRemoveLiquidityTool = {
|
|
|
228
301
|
});
|
|
229
302
|
}),
|
|
230
303
|
};
|
|
231
|
-
//
|
|
304
|
+
// 6. Add Liquidity by Price Range
|
|
232
305
|
exports.addLiquidityByPriceTool = {
|
|
233
306
|
name: 'gala_launchpad_add_liquidity_by_price',
|
|
234
307
|
description: 'Add liquidity to a pool by specifying min/max price boundaries (SDK calculates tick boundaries)',
|
|
@@ -306,7 +379,7 @@ exports.addLiquidityByPriceTool = {
|
|
|
306
379
|
});
|
|
307
380
|
}),
|
|
308
381
|
};
|
|
309
|
-
//
|
|
382
|
+
// 7. Add Liquidity by Tick Range
|
|
310
383
|
exports.addLiquidityByTicksTool = {
|
|
311
384
|
name: 'gala_launchpad_add_liquidity_by_ticks',
|
|
312
385
|
description: 'Add liquidity to a pool by specifying exact tick boundaries (advanced usage)',
|
|
@@ -384,7 +457,7 @@ exports.addLiquidityByTicksTool = {
|
|
|
384
457
|
});
|
|
385
458
|
}),
|
|
386
459
|
};
|
|
387
|
-
//
|
|
460
|
+
// 8. Remove Liquidity
|
|
388
461
|
exports.removeLiquidityTool = {
|
|
389
462
|
name: 'gala_launchpad_remove_liquidity',
|
|
390
463
|
description: 'Remove liquidity from an open position and withdraw underlying tokens',
|
|
@@ -447,7 +520,7 @@ exports.removeLiquidityTool = {
|
|
|
447
520
|
});
|
|
448
521
|
}),
|
|
449
522
|
};
|
|
450
|
-
//
|
|
523
|
+
// 9. Collect Position Fees
|
|
451
524
|
exports.collectPositionFeesTool = {
|
|
452
525
|
name: 'gala_launchpad_collect_position_fees',
|
|
453
526
|
description: 'Collect accumulated trading fees from a liquidity position without modifying the position',
|
|
@@ -501,6 +574,7 @@ exports.collectPositionFeesTool = {
|
|
|
501
574
|
// Export all liquidity position tools
|
|
502
575
|
exports.liquidityPositionTools = [
|
|
503
576
|
exports.getUserLiquidityPositionsTool,
|
|
577
|
+
exports.getAllUserLiquidityPositionsTool,
|
|
504
578
|
exports.getLiquidityPositionByIdTool,
|
|
505
579
|
exports.getLiquidityPositionTool,
|
|
506
580
|
exports.estimateRemoveLiquidityTool,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"liquidity-positions.js","sourceRoot":"","sources":["../../../src/tools/dex/liquidity-positions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"liquidity-positions.js","sourceRoot":"","sources":["../../../src/tools/dex/liquidity-positions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swap Pool Price Tool
|
|
3
|
+
*
|
|
4
|
+
* Gets the current price for a token pair in the DEX pool.
|
|
5
|
+
* Returns spot price, sqrtPrice, tick, and liquidity information.
|
|
6
|
+
*/
|
|
7
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
8
|
+
export declare const getSwapPoolPriceTool: MCPTool;
|
|
9
|
+
//# sourceMappingURL=pool-price.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-price.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/pool-price.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAmBlD,eAAO,MAAM,oBAAoB,EAAE,OAuDlC,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Swap Pool Price Tool
|
|
4
|
+
*
|
|
5
|
+
* Gets the current price for a token pair in the DEX pool.
|
|
6
|
+
* Returns spot price, sqrtPrice, tick, and liquidity information.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.getSwapPoolPriceTool = void 0;
|
|
10
|
+
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
11
|
+
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
12
|
+
// Token symbol schema for price queries
|
|
13
|
+
const PRICE_TOKEN_SCHEMA = {
|
|
14
|
+
type: 'string',
|
|
15
|
+
minLength: 1,
|
|
16
|
+
maxLength: 20,
|
|
17
|
+
description: 'Token symbol (e.g., "GALA", "GUSDC")',
|
|
18
|
+
};
|
|
19
|
+
// Fee tier schema
|
|
20
|
+
const FEE_TIER_SCHEMA = {
|
|
21
|
+
type: 'number',
|
|
22
|
+
enum: [500, 3000, 10000],
|
|
23
|
+
description: 'Fee tier in basis points: 500 (0.05%), 3000 (0.30%), 10000 (1.00%)',
|
|
24
|
+
};
|
|
25
|
+
exports.getSwapPoolPriceTool = {
|
|
26
|
+
name: 'gala_launchpad_get_swap_pool_price',
|
|
27
|
+
description: 'Get the current price and state for a DEX pool. Returns spot price (token1 per token0), sqrtPrice, tick, and liquidity information.',
|
|
28
|
+
inputSchema: {
|
|
29
|
+
type: 'object',
|
|
30
|
+
properties: {
|
|
31
|
+
token0: PRICE_TOKEN_SCHEMA,
|
|
32
|
+
token1: PRICE_TOKEN_SCHEMA,
|
|
33
|
+
fee: FEE_TIER_SCHEMA,
|
|
34
|
+
},
|
|
35
|
+
required: ['token0', 'token1', 'fee'],
|
|
36
|
+
},
|
|
37
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
38
|
+
try {
|
|
39
|
+
// Get current pool price using SDK method (requires all 3 params)
|
|
40
|
+
const priceData = await sdk.getSwapPoolPrice(args.token0, args.token1, args.fee);
|
|
41
|
+
// Calculate human-readable price from sqrtPrice
|
|
42
|
+
const sqrtPrice = Number(priceData.sqrtPrice);
|
|
43
|
+
const price = (sqrtPrice / (2 ** 96)) ** 2;
|
|
44
|
+
// Price is already adjusted in the SDK
|
|
45
|
+
const adjustedPrice = price;
|
|
46
|
+
return (0, response_formatter_js_1.formatSuccess)({
|
|
47
|
+
poolId: `${args.token0}-${args.token1}-${args.fee}`,
|
|
48
|
+
price: adjustedPrice.toString(),
|
|
49
|
+
priceFormatted: `1 ${args.token0} = ${adjustedPrice.toFixed(6)} ${args.token1}`,
|
|
50
|
+
inversePrice: adjustedPrice !== 0 ? (1 / adjustedPrice).toString() : null,
|
|
51
|
+
inversePriceFormatted: adjustedPrice !== 0
|
|
52
|
+
? `1 ${args.token1} = ${(1 / adjustedPrice).toFixed(6)} ${args.token0}`
|
|
53
|
+
: null,
|
|
54
|
+
poolState: {
|
|
55
|
+
sqrtPrice: priceData.sqrtPrice,
|
|
56
|
+
tick: priceData.tick,
|
|
57
|
+
liquidity: priceData.liquidity,
|
|
58
|
+
},
|
|
59
|
+
poolExists: true,
|
|
60
|
+
message: `Current price: 1 ${args.token0} = ${adjustedPrice.toFixed(6)} ${args.token1} (tick: ${priceData.tick})`,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
// Handle case where pool doesn't exist
|
|
65
|
+
if (error instanceof Error && (error.message.includes('pool') || error.message.includes('not found'))) {
|
|
66
|
+
return (0, response_formatter_js_1.formatSuccess)({
|
|
67
|
+
poolId: `${args.token0}-${args.token1}-${args.fee}`,
|
|
68
|
+
poolExists: false,
|
|
69
|
+
price: null,
|
|
70
|
+
message: `No active pool found for ${args.token0}/${args.token1} with ${args.fee} fee tier. The pool may not exist or tokens may not be graduated to DEX yet.`,
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
// Re-throw other errors to be handled by withErrorHandling
|
|
74
|
+
throw error;
|
|
75
|
+
}
|
|
76
|
+
}),
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=pool-price.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-price.js","sourceRoot":"","sources":["../../../src/tools/dex/pool-price.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DEX Pool Quote Calculation Tool
|
|
3
|
+
*
|
|
4
|
+
* Calculates swap quotes for DEX pools using either local or external calculation modes.
|
|
5
|
+
* Requires fetching composite pool data first, then calculating quotes locally or via GalaChain.
|
|
6
|
+
*/
|
|
7
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
8
|
+
export declare const calculateDexPoolQuoteTool: MCPTool;
|
|
9
|
+
//# sourceMappingURL=pool-quote-calculation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-quote-calculation.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/pool-quote-calculation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAgClD,eAAO,MAAM,yBAAyB,EAAE,OAmEvC,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* DEX Pool Quote Calculation Tool
|
|
4
|
+
*
|
|
5
|
+
* Calculates swap quotes for DEX pools using either local or external calculation modes.
|
|
6
|
+
* Requires fetching composite pool data first, then calculating quotes locally or via GalaChain.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.calculateDexPoolQuoteTool = void 0;
|
|
10
|
+
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
11
|
+
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
12
|
+
// Token schema for quote calculations
|
|
13
|
+
const TOKEN_SCHEMA = {
|
|
14
|
+
type: 'string',
|
|
15
|
+
minLength: 1,
|
|
16
|
+
description: 'Token identifier (e.g., "GALA|Unit|none|none" or "Token|Unit|GUSDC|eth:0x...")',
|
|
17
|
+
};
|
|
18
|
+
// Fee tier schema
|
|
19
|
+
const FEE_TIER_SCHEMA = {
|
|
20
|
+
type: 'number',
|
|
21
|
+
enum: [500, 3000, 10000],
|
|
22
|
+
description: 'Fee tier in basis points: 500 (0.05%), 3000 (0.30%), 10000 (1.00%)',
|
|
23
|
+
};
|
|
24
|
+
// Amount schema
|
|
25
|
+
const AMOUNT_SCHEMA = {
|
|
26
|
+
type: 'string',
|
|
27
|
+
pattern: '^\\d+(\\.\\d+)?$',
|
|
28
|
+
description: 'Amount to swap (as decimal string, e.g., "10.5")',
|
|
29
|
+
};
|
|
30
|
+
// Calculation mode schema
|
|
31
|
+
const MODE_SCHEMA = {
|
|
32
|
+
type: 'string',
|
|
33
|
+
enum: ['local', 'external'],
|
|
34
|
+
description: 'Calculation mode: "local" for offline quotes, "external" for GalaChain quotes (default: "local")',
|
|
35
|
+
};
|
|
36
|
+
exports.calculateDexPoolQuoteTool = {
|
|
37
|
+
name: 'gala_launchpad_calculate_dex_pool_quote',
|
|
38
|
+
description: 'Calculate DEX pool swap quotes. Specify token pair, fee tier, and amount to get estimated output. Use "local" mode for instant offline quotes or "external" for live GalaChain quotes.',
|
|
39
|
+
inputSchema: {
|
|
40
|
+
type: 'object',
|
|
41
|
+
properties: {
|
|
42
|
+
token0: TOKEN_SCHEMA,
|
|
43
|
+
token1: TOKEN_SCHEMA,
|
|
44
|
+
fee: FEE_TIER_SCHEMA,
|
|
45
|
+
fromToken: TOKEN_SCHEMA,
|
|
46
|
+
toToken: TOKEN_SCHEMA,
|
|
47
|
+
amount: AMOUNT_SCHEMA,
|
|
48
|
+
mode: MODE_SCHEMA,
|
|
49
|
+
},
|
|
50
|
+
required: ['token0', 'token1', 'fee', 'fromToken', 'toToken', 'amount'],
|
|
51
|
+
},
|
|
52
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
53
|
+
// Default mode to 'local' if not provided
|
|
54
|
+
const calculationMode = args.mode || 'local';
|
|
55
|
+
// First fetch composite pool data
|
|
56
|
+
const compositeData = await sdk.fetchCompositePoolData({
|
|
57
|
+
token0: args.token0,
|
|
58
|
+
token1: args.token1,
|
|
59
|
+
fee: args.fee,
|
|
60
|
+
});
|
|
61
|
+
// Calculate quote using the appropriate method
|
|
62
|
+
const quote = calculationMode === 'external'
|
|
63
|
+
? await sdk.calculateDexPoolQuoteExactAmountExternal({
|
|
64
|
+
compositePoolData: compositeData,
|
|
65
|
+
fromToken: args.fromToken,
|
|
66
|
+
toToken: args.toToken,
|
|
67
|
+
amount: args.amount,
|
|
68
|
+
})
|
|
69
|
+
: await sdk.calculateDexPoolQuoteExactAmountLocal({
|
|
70
|
+
compositePoolData: compositeData,
|
|
71
|
+
fromToken: args.fromToken,
|
|
72
|
+
toToken: args.toToken,
|
|
73
|
+
amount: args.amount,
|
|
74
|
+
});
|
|
75
|
+
// Determine swap direction
|
|
76
|
+
const isToken0ToToken1 = args.fromToken === args.token0;
|
|
77
|
+
const inputAmount = args.amount;
|
|
78
|
+
const outputAmount = isToken0ToToken1 ? quote.amount1 : quote.amount0;
|
|
79
|
+
// Calculate price impact if provided
|
|
80
|
+
const priceImpact = quote.priceImpact || 'N/A';
|
|
81
|
+
const executionPrice = quote.executionPrice || 'N/A';
|
|
82
|
+
return (0, response_formatter_js_1.formatSuccess)({
|
|
83
|
+
poolId: `${args.token0}-${args.token1}-${args.fee}`,
|
|
84
|
+
fromToken: args.fromToken,
|
|
85
|
+
toToken: args.toToken,
|
|
86
|
+
inputAmount: inputAmount,
|
|
87
|
+
outputAmount: outputAmount,
|
|
88
|
+
prices: {
|
|
89
|
+
currentSqrtPrice: quote.currentSqrtPrice,
|
|
90
|
+
newSqrtPrice: quote.newSqrtPrice,
|
|
91
|
+
executionPrice: executionPrice,
|
|
92
|
+
priceImpact: priceImpact,
|
|
93
|
+
},
|
|
94
|
+
calculationMode: calculationMode,
|
|
95
|
+
message: `Swapping ${inputAmount} ${args.fromToken.split('|')[2] || args.fromToken} will yield ${outputAmount} ${args.toToken.split('|')[2] || args.toToken}`,
|
|
96
|
+
});
|
|
97
|
+
}),
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=pool-quote-calculation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-quote-calculation.js","sourceRoot":"","sources":["../../../src/tools/dex/pool-quote-calculation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DEX Pool Quote External Tool
|
|
3
|
+
*
|
|
4
|
+
* Calculate DEX pool swap quotes using EXTERNAL GalaChain network (real-time pricing).
|
|
5
|
+
* Provides real-time on-chain quotes directly from the blockchain.
|
|
6
|
+
* Slower than local calculation but always reflects current pool state.
|
|
7
|
+
*/
|
|
8
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
9
|
+
export declare const calculateDexPoolQuoteExternalTool: MCPTool;
|
|
10
|
+
//# sourceMappingURL=pool-quote-external.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-quote-external.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/pool-quote-external.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAyBlD,eAAO,MAAM,iCAAiC,EAAE,OAwD/C,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* DEX Pool Quote External Tool
|
|
4
|
+
*
|
|
5
|
+
* Calculate DEX pool swap quotes using EXTERNAL GalaChain network (real-time pricing).
|
|
6
|
+
* Provides real-time on-chain quotes directly from the blockchain.
|
|
7
|
+
* Slower than local calculation but always reflects current pool state.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.calculateDexPoolQuoteExternalTool = void 0;
|
|
11
|
+
const response_formatter_js_1 = require("../../utils/response-formatter.js");
|
|
12
|
+
const error_handler_js_1 = require("../../utils/error-handler.js");
|
|
13
|
+
// Token schema for quote calculations
|
|
14
|
+
const TOKEN_SCHEMA = {
|
|
15
|
+
type: 'string',
|
|
16
|
+
minLength: 1,
|
|
17
|
+
description: 'Token identifier in delimited format (e.g., "GALA|Unit|none|none" or "Token|Unit|GUSDC|eth:0x...")',
|
|
18
|
+
};
|
|
19
|
+
// Fee tier schema
|
|
20
|
+
const FEE_TIER_SCHEMA = {
|
|
21
|
+
type: 'number',
|
|
22
|
+
enum: [500, 3000, 10000],
|
|
23
|
+
description: 'Fee tier in basis points: 500 (0.05%), 3000 (0.30%), 10000 (1.00%)',
|
|
24
|
+
};
|
|
25
|
+
// Amount schema
|
|
26
|
+
const AMOUNT_SCHEMA = {
|
|
27
|
+
type: 'string',
|
|
28
|
+
pattern: '^\\d+(\\.\\d+)?$',
|
|
29
|
+
description: 'Amount to swap (as decimal string, e.g., "10.5")',
|
|
30
|
+
};
|
|
31
|
+
exports.calculateDexPoolQuoteExternalTool = {
|
|
32
|
+
name: 'gala_launchpad_calculate_dex_pool_quote_external',
|
|
33
|
+
description: 'Calculate DEX pool swap quotes using EXTERNAL GalaChain network (real-time on-chain pricing). Network-dependent, provides current blockchain pricing. Requires fetching composite pool data first.',
|
|
34
|
+
inputSchema: {
|
|
35
|
+
type: 'object',
|
|
36
|
+
properties: {
|
|
37
|
+
token0: TOKEN_SCHEMA,
|
|
38
|
+
token1: TOKEN_SCHEMA,
|
|
39
|
+
fee: FEE_TIER_SCHEMA,
|
|
40
|
+
fromToken: TOKEN_SCHEMA,
|
|
41
|
+
toToken: TOKEN_SCHEMA,
|
|
42
|
+
amount: AMOUNT_SCHEMA,
|
|
43
|
+
},
|
|
44
|
+
required: ['token0', 'token1', 'fee', 'fromToken', 'toToken', 'amount'],
|
|
45
|
+
},
|
|
46
|
+
handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
|
|
47
|
+
// First fetch composite pool data
|
|
48
|
+
const compositeData = await sdk.fetchCompositePoolData({
|
|
49
|
+
token0: args.token0,
|
|
50
|
+
token1: args.token1,
|
|
51
|
+
fee: args.fee,
|
|
52
|
+
});
|
|
53
|
+
// Calculate quote using EXTERNAL method (real-time, on-chain)
|
|
54
|
+
const quote = await sdk.calculateDexPoolQuoteExactAmountExternal({
|
|
55
|
+
compositePoolData: compositeData,
|
|
56
|
+
fromToken: args.fromToken,
|
|
57
|
+
toToken: args.toToken,
|
|
58
|
+
amount: args.amount,
|
|
59
|
+
});
|
|
60
|
+
// Determine swap direction
|
|
61
|
+
const isToken0ToToken1 = args.fromToken === args.token0;
|
|
62
|
+
const inputAmount = args.amount;
|
|
63
|
+
const outputAmount = isToken0ToToken1 ? quote.amount1 : quote.amount0;
|
|
64
|
+
// Calculate price impact if provided
|
|
65
|
+
const priceImpact = quote.priceImpact || 'N/A';
|
|
66
|
+
const executionPrice = quote.executionPrice || 'N/A';
|
|
67
|
+
return (0, response_formatter_js_1.formatSuccess)({
|
|
68
|
+
poolId: `${args.token0}-${args.token1}-${args.fee}`,
|
|
69
|
+
fromToken: args.fromToken,
|
|
70
|
+
toToken: args.toToken,
|
|
71
|
+
inputAmount: inputAmount,
|
|
72
|
+
outputAmount: outputAmount,
|
|
73
|
+
prices: {
|
|
74
|
+
currentSqrtPrice: quote.currentSqrtPrice,
|
|
75
|
+
newSqrtPrice: quote.newSqrtPrice,
|
|
76
|
+
executionPrice: executionPrice,
|
|
77
|
+
priceImpact: priceImpact,
|
|
78
|
+
},
|
|
79
|
+
calculationMode: 'external',
|
|
80
|
+
message: `EXTERNAL quote: Swapping ${inputAmount} ${args.fromToken.split('|')[2] || args.fromToken} will yield ${outputAmount} ${args.toToken.split('|')[2] || args.toToken} (real-time GalaChain network data)`,
|
|
81
|
+
});
|
|
82
|
+
}),
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=pool-quote-external.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-quote-external.js","sourceRoot":"","sources":["../../../src/tools/dex/pool-quote-external.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DEX Pool Quote Local Tool
|
|
3
|
+
*
|
|
4
|
+
* Calculate DEX pool swap quotes using LOCAL/offline bonding curve formulas.
|
|
5
|
+
* Provides instant client-side calculation without network call to GalaChain.
|
|
6
|
+
* Requires composite pool data to be fetched first.
|
|
7
|
+
*/
|
|
8
|
+
import type { MCPTool } from '../../types/mcp.js';
|
|
9
|
+
export declare const calculateDexPoolQuoteLocalTool: MCPTool;
|
|
10
|
+
//# sourceMappingURL=pool-quote-local.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pool-quote-local.d.ts","sourceRoot":"","sources":["../../../src/tools/dex/pool-quote-local.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAyBlD,eAAO,MAAM,8BAA8B,EAAE,OAwD5C,CAAC"}
|