@gala-chain/launchpad-mcp-server 1.27.2 → 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.
Files changed (73) hide show
  1. package/README.md +110 -18
  2. package/dist/generated/version.d.ts +1 -1
  3. package/dist/generated/version.d.ts.map +1 -1
  4. package/dist/generated/version.js +1 -1
  5. package/dist/generated/version.js.map +1 -1
  6. package/dist/prompts/advanced-pools.d.ts +18 -0
  7. package/dist/prompts/advanced-pools.d.ts.map +1 -0
  8. package/dist/prompts/advanced-pools.js +90 -0
  9. package/dist/prompts/advanced-pools.js.map +1 -0
  10. package/dist/prompts/index.d.ts +7 -5
  11. package/dist/prompts/index.d.ts.map +1 -1
  12. package/dist/prompts/index.js +12 -4
  13. package/dist/prompts/index.js.map +1 -1
  14. package/dist/prompts/liquidity-positions.d.ts +12 -0
  15. package/dist/prompts/liquidity-positions.d.ts.map +1 -1
  16. package/dist/prompts/liquidity-positions.js +80 -1
  17. package/dist/prompts/liquidity-positions.js.map +1 -1
  18. package/dist/prompts/monitoring.d.ts +23 -0
  19. package/dist/prompts/monitoring.d.ts.map +1 -0
  20. package/dist/prompts/monitoring.js +169 -0
  21. package/dist/prompts/monitoring.js.map +1 -0
  22. package/dist/schemas/common-schemas.d.ts +42 -0
  23. package/dist/schemas/common-schemas.d.ts.map +1 -1
  24. package/dist/schemas/common-schemas.js +43 -1
  25. package/dist/schemas/common-schemas.js.map +1 -1
  26. package/dist/tools/balance/all-assets.d.ts +9 -0
  27. package/dist/tools/balance/all-assets.d.ts.map +1 -0
  28. package/dist/tools/balance/all-assets.js +104 -0
  29. package/dist/tools/balance/all-assets.js.map +1 -0
  30. package/dist/tools/dex/fetchAllDexPools.d.ts.map +1 -1
  31. package/dist/tools/dex/fetchAllDexPools.js +5 -0
  32. package/dist/tools/dex/fetchAllDexPools.js.map +1 -1
  33. package/dist/tools/dex/index.js +1 -1
  34. package/dist/tools/dex/index.js.map +1 -1
  35. package/dist/tools/dex/liquidity-positions.d.ts +1 -0
  36. package/dist/tools/dex/liquidity-positions.d.ts.map +1 -1
  37. package/dist/tools/dex/liquidity-positions.js +103 -29
  38. package/dist/tools/dex/liquidity-positions.js.map +1 -1
  39. package/dist/tools/dex/pool-price.d.ts +9 -0
  40. package/dist/tools/dex/pool-price.d.ts.map +1 -0
  41. package/dist/tools/dex/pool-price.js +78 -0
  42. package/dist/tools/dex/pool-price.js.map +1 -0
  43. package/dist/tools/dex/pool-quote-calculation.d.ts +9 -0
  44. package/dist/tools/dex/pool-quote-calculation.d.ts.map +1 -0
  45. package/dist/tools/dex/pool-quote-calculation.js +99 -0
  46. package/dist/tools/dex/pool-quote-calculation.js.map +1 -0
  47. package/dist/tools/dex/pool-quote-external.d.ts +10 -0
  48. package/dist/tools/dex/pool-quote-external.d.ts.map +1 -0
  49. package/dist/tools/dex/pool-quote-external.js +84 -0
  50. package/dist/tools/dex/pool-quote-external.js.map +1 -0
  51. package/dist/tools/dex/pool-quote-local.d.ts +10 -0
  52. package/dist/tools/dex/pool-quote-local.d.ts.map +1 -0
  53. package/dist/tools/dex/pool-quote-local.js +84 -0
  54. package/dist/tools/dex/pool-quote-local.js.map +1 -0
  55. package/dist/tools/dex/position-direct.d.ts +9 -0
  56. package/dist/tools/dex/position-direct.d.ts.map +1 -0
  57. package/dist/tools/dex/position-direct.js +65 -0
  58. package/dist/tools/dex/position-direct.js.map +1 -0
  59. package/dist/tools/index.d.ts +9 -9
  60. package/dist/tools/index.js +10 -10
  61. package/dist/tools/pools/composite-pool.d.ts +9 -0
  62. package/dist/tools/pools/composite-pool.d.ts.map +1 -0
  63. package/dist/tools/pools/composite-pool.js +69 -0
  64. package/dist/tools/pools/composite-pool.js.map +1 -0
  65. package/dist/tools/utils/cleanup.d.ts +9 -0
  66. package/dist/tools/utils/cleanup.d.ts.map +1 -0
  67. package/dist/tools/utils/cleanup.js +54 -0
  68. package/dist/tools/utils/cleanup.js.map +1 -0
  69. package/dist/tools/utils/faucet.d.ts +10 -0
  70. package/dist/tools/utils/faucet.d.ts.map +1 -0
  71. package/dist/tools/utils/faucet.js +51 -0
  72. package/dist/tools/utils/faucet.js.map +1 -0
  73. package/package.json +1 -1
@@ -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
- const positions = await sdk.getSwapUserLiquidityPositions(args.ownerAddress, args.limit, args.bookmark);
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: (positions && Array.isArray(positions)) ? positions.length : 0,
58
- positions: (positions && Array.isArray(positions))
59
- ? positions.map((pos) => ({
60
- positionId: pos.positionId,
61
- token0: pos.token0,
62
- token1: pos.token1,
63
- feeTier: pos.feeTier,
64
- liquidity: pos.liquidity,
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
- // 2. Get Liquidity Position by ID
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
- // 3. Get Liquidity Position by Token Pair
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
- // 4. Estimate Liquidity Removal
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
- // 5. Add Liquidity by Price Range
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
- // 6. Add Liquidity by Tick Range
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
- // 7. Remove Liquidity
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
- // 8. Collect Position Fees
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"}