@gala-chain/launchpad-mcp-server 1.14.3 → 1.15.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,142 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.15.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Fix isGraduated flag calculation to use correct saleStatus value
8
+
9
+ **Bug Fix:**
10
+ - Fixed `GalaChainService` calculation of `isGraduated` flag
11
+ - Was: `isGraduated = response.Data.saleStatus === 'Completed'` ❌
12
+ - Now: `isGraduated = response.Data.saleStatus === 'Finished'` ✅
13
+ - Backend actually returns `saleStatus: "Finished"` for graduated tokens, not `"Completed"`
14
+ - `DexService` now correctly uses reliable `isGraduated` flag for graduation detection
15
+
16
+ **Impact:**
17
+ - `fetchLaunchpadTokenSpotPrice()` now correctly identifies graduated tokens using `isGraduated`
18
+ - Tokens with `isGraduated: true` (saleStatus: "Finished") use `/v1/trade/price` DEX endpoint
19
+ - Ensures accurate spot pricing for graduated launchpad tokens like GALADOG
20
+ - No breaking changes - behavior corrected to match backend state progression
21
+
22
+ **Result:**
23
+ - GALADOG: `isGraduated: true` (saleStatus: "Finished") → Uses DEX endpoint ✅
24
+ - Other tokens: `isGraduated: false` (saleStatus: "Ongoing") → Uses bonding curve ✅
25
+
26
+ - Updated dependencies
27
+ - @gala-chain/launchpad-sdk@3.20.1
28
+
29
+ ## 1.15.0
30
+
31
+ ### Minor Changes
32
+
33
+ - Add tokenName parameter support to fetchPriceHistory and fetchAllPriceHistory (v3.20.0+)
34
+
35
+ **Features:**
36
+ - New optional `tokenName` parameter enables simple token names (e.g., "demonkpop") with automatic
37
+ resolution to full tokenId
38
+ - Mutual exclusivity validation: use exactly one of `tokenName` OR `tokenId` (not both, not
39
+ neither)
40
+ - Full backward compatibility with existing tokenId parameter usage (string and object formats)
41
+ - New helper method `fetchTokenClassKeyByTokenName()` for token name resolution
42
+ - Enhanced JSDoc with comprehensive examples for all three token identification methods
43
+
44
+ **SDK Changes:**
45
+ - `PriceHistoryService`: Added tokenName parameter support with auto-resolution via
46
+ TokenResolverService
47
+ - `LaunchpadSDK`: Wired TokenResolverService to PriceHistoryService for automatic name resolution
48
+ - Updated type definitions with optional `tokenName?: string` parameter
49
+ - Added comprehensive validation for mutual exclusivity
50
+
51
+ **MCP Server Changes:**
52
+ - `gala_launchpad_fetch_price_history`: Updated schema to support optional tokenName parameter
53
+ - `gala_launchpad_fetch_all_price_history`: Updated schema to support optional tokenName parameter
54
+ - Both tools now accept flexible token identification (tokenName or tokenId, choose one)
55
+
56
+ **Documentation:**
57
+ - Updated SDK README with new usage patterns and examples
58
+ - Updated CLAUDE.md Price History Patterns section
59
+ - Added complete section in complete-sdk-demo.ts demonstrating tokenName parameter
60
+ - Enhanced JSDoc comments for all methods with practical examples
61
+
62
+ **Testing:**
63
+ - Added 33 comprehensive unit tests covering:
64
+ - Token name to token class key resolution
65
+ - Mutual exclusivity validation
66
+ - Error handling for invalid inputs
67
+ - Integration with both fetchPriceHistory and fetchAllPriceHistory
68
+ - All test suites passing (1102 total tests)
69
+
70
+ **Breaking Changes:** None - fully backward compatible
71
+
72
+ **Migration Guide:** Instead of: `sdk.fetchPriceHistory({ tokenId: 'Token|Unit|DKP|eth:...' })`
73
+ You can now use: `sdk.fetchPriceHistory({ tokenName: 'demonkpop' })`
74
+
75
+ ### Patch Changes
76
+
77
+ - Fix token format conversion and add DEX spot pricing for graduated launchpad tokens
78
+
79
+ **Bug Fixes:**
80
+ - **CRITICAL**: Fixed PriceHistoryService token format conversion that was losing Ethereum
81
+ addresses for launchpad tokens
82
+ - Was converting: `Token|Unit|GDOG|eth:902...` → `GDOG$Unit$none$none` ❌
83
+ - Now converts: `Token|Unit|GDOG|eth:902...` → `Token$Unit$GDOG$eth:902...` ✅
84
+ - Impact: All launchpad token price history queries now return data instead of empty results
85
+ - Affected methods: `fetchPriceHistory()`, `fetchAllPriceHistory()`
86
+ - Updated test expectations in `price-history-service.test.ts` to validate correct token format
87
+ - All 1,102 unit tests passing
88
+
89
+ **Features:**
90
+ - New method `DexService.fetchDexTokenSpotPrice(tokenId)` for real-time DEX market prices
91
+ - Uses `/v1/trade/price` endpoint for accurate graduated token pricing
92
+ - Supports both pipe-delimited and object token ID formats
93
+ - Perfect for tokens trading on the DEX post-graduation
94
+ - Enhanced `fetchLaunchpadTokenSpotPrice()` to intelligently select price source:
95
+ - Active pool tokens: Uses bonding curve calculation
96
+ - Graduated tokens: Uses `/v1/trade/price` endpoint for real DEX market prices
97
+ - Optional `fetchPoolDetails` parameter enables automatic graduation detection
98
+ - Gracefully falls back to bonding curve if graduation check unavailable
99
+
100
+ **SDK Changes:**
101
+ - `PriceHistoryService.ts`: Fixed token format converter to use `pipeFormatToDollarFormat()`
102
+ utility
103
+ - `DexService.ts`: Added `fetchDexTokenSpotPrice()` method with full documentation
104
+ - `DexService.ts`: Enhanced `fetchLaunchpadTokenSpotPrice()` with graduation detection
105
+ - Added import of `pipeFormatToDollarFormat` to DexService
106
+
107
+ **Test Results:**
108
+ - All price history service tests passing (33 tests)
109
+ - All SDK tests passing (1102 total tests)
110
+ - No regressions detected
111
+
112
+ **Breaking Changes:** None - both are enhancements/bug fixes
113
+
114
+ **Example Usage (Graduated Token):**
115
+
116
+ ```typescript
117
+ // Graduated token now returns real DEX market price
118
+ const price = await sdk.fetchLaunchpadTokenSpotPrice(
119
+ 'galadog',
120
+ calculateBuyAmount,
121
+ fetchPoolDetails // Optional - enables automatic DEX pricing
122
+ );
123
+ // Returns: { symbol: 'GALADOG', price: 0.019110 } (real market price)
124
+ ```
125
+
126
+ **Example Usage (Direct DEX Pricing):**
127
+
128
+ ```typescript
129
+ // Query DEX directly for any trading token
130
+ const price = await dexService.fetchDexTokenSpotPrice(
131
+ 'Token|Unit|GDOG|eth:902Ef7566c8A8bEe5517FdEC0D7b5d1157942830'
132
+ );
133
+ // Returns: { symbol: 'GDOG', price: 0.019110 }
134
+ ```
135
+
136
+ - Updated dependencies
137
+ - Updated dependencies
138
+ - @gala-chain/launchpad-sdk@3.20.0
139
+
3
140
  ## 1.14.3
4
141
 
5
142
  ### Patch Changes
@@ -3,5 +3,5 @@
3
3
  * This file is generated by scripts/inject-version.ts during build
4
4
  * DO NOT EDIT MANUALLY
5
5
  */
6
- export declare const MCP_SERVER_VERSION = "1.14.3";
6
+ export declare const MCP_SERVER_VERSION = "1.15.1";
7
7
  //# sourceMappingURL=version.d.ts.map
@@ -6,5 +6,5 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.MCP_SERVER_VERSION = void 0;
9
- exports.MCP_SERVER_VERSION = '1.14.3';
9
+ exports.MCP_SERVER_VERSION = '1.15.1';
10
10
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchAllPriceHistory.d.ts","sourceRoot":"","sources":["../../../src/tools/pools/fetchAllPriceHistory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIlD,eAAO,MAAM,wBAAwB,EAAE,OA2FtC,CAAC"}
1
+ {"version":3,"file":"fetchAllPriceHistory.d.ts","sourceRoot":"","sources":["../../../src/tools/pools/fetchAllPriceHistory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAIlD,eAAO,MAAM,wBAAwB,EAAE,OA2GtC,CAAC"}
@@ -18,7 +18,12 @@ exports.fetchAllPriceHistoryTool = {
18
18
  **Requirements:**
19
19
  - DEX Backend API must be configured (dexBackendBaseUrl in SDK config)
20
20
  - Node.js environment only (not available in browser)
21
- - Token parameter is required
21
+ - Either tokenName OR tokenId is required (not both)
22
+
23
+ **Token Identification:**
24
+ - Use \`tokenName\` for convenience (e.g., "demonkpop") - automatically resolved to full token ID
25
+ - Use \`tokenId\` for direct specification (e.g., "Token|Unit|DKP|eth:...")
26
+ - Provide exactly ONE of these parameters
22
27
 
23
28
  **Use Cases:**
24
29
  - Complete historical price analysis and charting
@@ -30,6 +35,10 @@ exports.fetchAllPriceHistoryTool = {
30
35
  inputSchema: {
31
36
  type: 'object',
32
37
  properties: {
38
+ tokenName: {
39
+ type: 'string',
40
+ description: 'Simple token name for convenience (e.g., "demonkpop", "shoewars") - automatically resolves to full token ID. Use this OR tokenId, not both.',
41
+ },
33
42
  tokenId: {
34
43
  oneOf: [
35
44
  {
@@ -60,7 +69,7 @@ exports.fetchAllPriceHistoryTool = {
60
69
  description: 'TokenClassKey object format',
61
70
  },
62
71
  ],
63
- description: 'Token identifier (string or TokenClassKey object)',
72
+ description: 'Token identifier (string or TokenClassKey object). Use this OR tokenName, not both.',
64
73
  },
65
74
  from: {
66
75
  type: 'string',
@@ -78,14 +87,20 @@ exports.fetchAllPriceHistoryTool = {
78
87
  description: 'Sort order for results (default: DESC for newest-first)',
79
88
  },
80
89
  },
81
- required: ['tokenId'],
90
+ required: [],
82
91
  },
83
92
  handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
84
93
  // Convert string dates to Date objects if provided
85
94
  const options = {
86
- tokenId: args.tokenId,
87
95
  sortOrder: args.sortOrder,
88
96
  };
97
+ // Support both tokenName and tokenId (mutual exclusivity validation happens in SDK)
98
+ if (args.tokenName) {
99
+ options.tokenName = args.tokenName;
100
+ }
101
+ else {
102
+ options.tokenId = args.tokenId;
103
+ }
89
104
  if (args.from) {
90
105
  options.from = new Date(args.from);
91
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetchAllPriceHistory.js","sourceRoot":"","sources":["../../../src/tools/pools/fetchAllPriceHistory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AAEpD,QAAA,wBAAwB,GAAY;IAC/C,IAAI,EAAE,wCAAwC;IAC9C,WAAW,EAAE;;;;;;;;;;;;;;;oHAeqG;IAElH,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,oGAAoG;qBACvG;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kCAAkC;6BAChD;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,4BAA4B;6BAC1C;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oCAAoC;6BAClD;yBACF;wBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;wBAC7D,WAAW,EAAE,6BAA6B;qBAC3C;iBACF;gBACD,WAAW,EAAE,mDAAmD;aACjE;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,qEAAqE;aACnF;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,2DAA2D;aACzE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,yDAAyD;aACvE;SACF;QACD,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IAED,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,mDAAmD;QACnD,MAAM,OAAO,GAAQ;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"fetchAllPriceHistory.js","sourceRoot":"","sources":["../../../src/tools/pools/fetchAllPriceHistory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AAEpD,QAAA,wBAAwB,GAAY;IAC/C,IAAI,EAAE,wCAAwC;IAC9C,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;oHAoBqG;IAElH,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6IAA6I;aAChJ;YACD,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,oGAAoG;qBACvG;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kCAAkC;6BAChD;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,4BAA4B;6BAC1C;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oCAAoC;6BAClD;yBACF;wBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;wBAC7D,WAAW,EAAE,6BAA6B;qBAC3C;iBACF;gBACD,WAAW,EAAE,qFAAqF;aACnG;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,qEAAqE;aACnF;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,2DAA2D;aACzE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,yDAAyD;aACvE;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IAED,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,mDAAmD;QACnD,MAAM,OAAO,GAAQ;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;QAEF,oFAAoF;QACpF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPriceHistory.d.ts","sourceRoot":"","sources":["../../../src/tools/pools/fetchPriceHistory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,eAAO,MAAM,qBAAqB,EAAE,OA+FnC,CAAC"}
1
+ {"version":3,"file":"fetchPriceHistory.d.ts","sourceRoot":"","sources":["../../../src/tools/pools/fetchPriceHistory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,eAAO,MAAM,qBAAqB,EAAE,OA+GnC,CAAC"}
@@ -19,7 +19,12 @@ exports.fetchPriceHistoryTool = {
19
19
  **Requirements:**
20
20
  - DEX Backend API must be configured (dexBackendBaseUrl in SDK config)
21
21
  - Node.js environment only (not available in browser)
22
- - Token parameter is required
22
+ - Either tokenName OR tokenId is required (not both)
23
+
24
+ **Token Identification:**
25
+ - Use \`tokenName\` for convenience (e.g., "demonkpop") - automatically resolved to full token ID
26
+ - Use \`tokenId\` for direct specification (e.g., "Token|Unit|DKP|eth:...")
27
+ - Provide exactly ONE of these parameters
23
28
 
24
29
  **Use Cases:**
25
30
  - Historical price analysis and charting
@@ -31,6 +36,10 @@ exports.fetchPriceHistoryTool = {
31
36
  inputSchema: {
32
37
  type: 'object',
33
38
  properties: {
39
+ tokenName: {
40
+ type: 'string',
41
+ description: 'Simple token name for convenience (e.g., "demonkpop", "shoewars") - automatically resolves to full token ID. Use this OR tokenId, not both.',
42
+ },
34
43
  tokenId: {
35
44
  oneOf: [
36
45
  {
@@ -61,7 +70,7 @@ exports.fetchPriceHistoryTool = {
61
70
  description: 'TokenClassKey object format',
62
71
  },
63
72
  ],
64
- description: 'Token identifier (string or TokenClassKey object)',
73
+ description: 'Token identifier (string or TokenClassKey object). Use this OR tokenName, not both.',
65
74
  },
66
75
  from: {
67
76
  type: 'string',
@@ -81,16 +90,22 @@ exports.fetchPriceHistoryTool = {
81
90
  page: common_schemas_js_1.PAGE_SCHEMA,
82
91
  limit: (0, common_schemas_js_1.createLimitSchema)('priceHistory', 10),
83
92
  },
84
- required: ['tokenId'],
93
+ required: [],
85
94
  },
86
95
  handler: (0, error_handler_js_1.withErrorHandling)(async (sdk, args) => {
87
96
  // Convert string dates to Date objects if provided
88
97
  const options = {
89
- tokenId: args.tokenId,
90
98
  sortOrder: args.sortOrder,
91
99
  page: args.page,
92
100
  limit: args.limit,
93
101
  };
102
+ // Support both tokenName and tokenId (mutual exclusivity validation happens in SDK)
103
+ if (args.tokenName) {
104
+ options.tokenName = args.tokenName;
105
+ }
106
+ else {
107
+ options.tokenId = args.tokenId;
108
+ }
94
109
  if (args.from) {
95
110
  options.from = new Date(args.from);
96
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fetchPriceHistory.js","sourceRoot":"","sources":["../../../src/tools/pools/fetchPriceHistory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AACjE,uEAAiF;AAEpE,QAAA,qBAAqB,GAAY;IAC5C,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EAAE;;;;;;;;;;;;;;;oFAeqE;IAElF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,oGAAoG;qBACvG;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kCAAkC;6BAChD;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,4BAA4B;6BAC1C;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oCAAoC;6BAClD;yBACF;wBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;wBAC7D,WAAW,EAAE,6BAA6B;qBAC3C;iBACF;gBACD,WAAW,EAAE,mDAAmD;aACjE;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,qEAAqE;aACnF;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,2DAA2D;aACzE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,yDAAyD;aACvE;YACD,IAAI,EAAE,+BAAW;YACjB,KAAK,EAAE,IAAA,qCAAiB,EAAC,cAAc,EAAE,EAAE,CAAC;SAC7C;QACD,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IAED,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,mDAAmD;QACnD,MAAM,OAAO,GAAQ;YACnB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"fetchPriceHistory.js","sourceRoot":"","sources":["../../../src/tools/pools/fetchPriceHistory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,6EAAkE;AAClE,mEAAiE;AACjE,uEAAiF;AAEpE,QAAA,qBAAqB,GAAY;IAC5C,IAAI,EAAE,oCAAoC;IAC1C,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;oFAoBqE;IAElF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,6IAA6I;aAChJ;YACD,OAAO,EAAE;gBACP,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,oGAAoG;qBACvG;oBACD;wBACE,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,kCAAkC;6BAChD;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+BAA+B;6BAC7C;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,4BAA4B;6BAC1C;4BACD,aAAa,EAAE;gCACb,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oCAAoC;6BAClD;yBACF;wBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,CAAC;wBAC7D,WAAW,EAAE,6BAA6B;qBAC3C;iBACF;gBACD,WAAW,EAAE,qFAAqF;aACnG;YACD,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,qEAAqE;aACnF;YACD,EAAE,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,WAAW;gBACnB,WAAW,EAAE,2DAA2D;aACzE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;gBACrB,WAAW,EAAE,yDAAyD;aACvE;YACD,IAAI,EAAE,+BAAW;YACjB,KAAK,EAAE,IAAA,qCAAiB,EAAC,cAAc,EAAE,EAAE,CAAC;SAC7C;QACD,QAAQ,EAAE,EAAE;KACb;IAED,OAAO,EAAE,IAAA,oCAAiB,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7C,mDAAmD;QACnD,MAAM,OAAO,GAAQ;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC;QAEF,oFAAoF;QACpF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACrC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO,IAAA,qCAAa,EAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;CACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gala-chain/launchpad-mcp-server",
3
- "version": "1.14.3",
3
+ "version": "1.15.1",
4
4
  "description": "MCP server for Gala Launchpad SDK with 55 tools + 14 slash commands - Production-grade AI agent integration with comprehensive validation, optimized performance, and 80%+ test coverage",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -64,7 +64,7 @@
64
64
  "dependencies": {
65
65
  "@gala-chain/api": "^2.4.3",
66
66
  "@gala-chain/connect": "^2.4.3",
67
- "@gala-chain/launchpad-sdk": "^3.19.2",
67
+ "@gala-chain/launchpad-sdk": "^3.20.1",
68
68
  "@modelcontextprotocol/sdk": "^0.5.0",
69
69
  "axios": "^1.12.2",
70
70
  "bignumber.js": "^9.1.2",