@gala-chain/launchpad-mcp-server 1.18.0 → 1.19.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.
Files changed (101) hide show
  1. package/CHANGELOG.md +185 -0
  2. package/README.md +83 -3
  3. package/dist/generated/version.d.ts +1 -1
  4. package/dist/generated/version.js +1 -1
  5. package/dist/prompts/create-token.d.ts +15 -0
  6. package/dist/prompts/create-token.d.ts.map +1 -0
  7. package/dist/prompts/create-token.js +106 -0
  8. package/dist/prompts/create-token.js.map +1 -0
  9. package/dist/prompts/dex-trading.d.ts +18 -0
  10. package/dist/prompts/dex-trading.d.ts.map +1 -0
  11. package/dist/prompts/dex-trading.js +83 -0
  12. package/dist/prompts/dex-trading.js.map +1 -0
  13. package/dist/prompts/discover-tokens.d.ts +15 -0
  14. package/dist/prompts/discover-tokens.d.ts.map +1 -0
  15. package/dist/prompts/discover-tokens.js +78 -0
  16. package/dist/prompts/discover-tokens.js.map +1 -0
  17. package/dist/prompts/index.d.ts +9 -4
  18. package/dist/prompts/index.d.ts.map +1 -1
  19. package/dist/prompts/index.js +20 -3
  20. package/dist/prompts/index.js.map +1 -1
  21. package/dist/prompts/utils/workflowTemplates.d.ts +28 -0
  22. package/dist/prompts/utils/workflowTemplates.d.ts.map +1 -1
  23. package/dist/prompts/utils/workflowTemplates.js +136 -0
  24. package/dist/prompts/utils/workflowTemplates.js.map +1 -1
  25. package/dist/tools/dex/index.d.ts +14 -0
  26. package/dist/tools/dex/index.d.ts.map +1 -0
  27. package/dist/tools/dex/index.js +202 -0
  28. package/dist/tools/dex/index.js.map +1 -0
  29. package/dist/tools/index.d.ts +1 -1
  30. package/dist/tools/index.d.ts.map +1 -1
  31. package/dist/tools/index.js +18 -12
  32. package/dist/tools/index.js.map +1 -1
  33. package/dist/tools/utils/explainSdkUsage.d.ts.map +1 -1
  34. package/dist/tools/utils/explainSdkUsage.js +94 -1
  35. package/dist/tools/utils/explainSdkUsage.js.map +1 -1
  36. package/dist/utils/validation.d.ts +18 -0
  37. package/dist/utils/validation.d.ts.map +1 -1
  38. package/dist/utils/validation.js +35 -0
  39. package/dist/utils/validation.js.map +1 -1
  40. package/package.json +3 -3
  41. package/docs/AI-AGENT-PATTERNS.md +0 -555
  42. package/docs/CONSTRAINTS-REFERENCE.md +0 -454
  43. package/docs/PROMPT-TOOL-MAPPING.md +0 -352
  44. package/docs/examples/default-values-pattern.md +0 -240
  45. package/docs/examples/tool-factory-pattern.md +0 -217
  46. package/jest.config.js +0 -94
  47. package/src/__tests__/integration/fetchTokenDetails.integration.test.ts +0 -258
  48. package/src/__tests__/integration/poolTools.integration.test.ts +0 -185
  49. package/src/constants/mcpToolNames.ts +0 -141
  50. package/src/index.ts +0 -19
  51. package/src/prompts/__tests__/promptStructure.test.ts +0 -114
  52. package/src/prompts/__tests__/registry.test.ts +0 -145
  53. package/src/prompts/analysis.ts +0 -429
  54. package/src/prompts/index.ts +0 -127
  55. package/src/prompts/portfolio.ts +0 -242
  56. package/src/prompts/trading.ts +0 -191
  57. package/src/prompts/utility.ts +0 -43
  58. package/src/prompts/utils/workflowTemplates.ts +0 -344
  59. package/src/schemas/common-schemas.ts +0 -393
  60. package/src/scripts/test-all-prompts.ts +0 -184
  61. package/src/server.ts +0 -277
  62. package/src/tools/balance/index.ts +0 -174
  63. package/src/tools/creation/index.ts +0 -182
  64. package/src/tools/index.ts +0 -80
  65. package/src/tools/pools/fetchAllPools.ts +0 -47
  66. package/src/tools/pools/fetchAllPriceHistory.ts +0 -119
  67. package/src/tools/pools/fetchPoolDetails.ts +0 -27
  68. package/src/tools/pools/fetchPoolDetailsForCalculation.ts +0 -22
  69. package/src/tools/pools/fetchPools.ts +0 -47
  70. package/src/tools/pools/fetchPriceHistory.ts +0 -124
  71. package/src/tools/pools/fetchTokenDetails.ts +0 -77
  72. package/src/tools/pools/index.ts +0 -284
  73. package/src/tools/social/index.ts +0 -64
  74. package/src/tools/trading/index.ts +0 -605
  75. package/src/tools/transfers/index.ts +0 -75
  76. package/src/tools/utils/clearCache.ts +0 -36
  77. package/src/tools/utils/createWallet.ts +0 -19
  78. package/src/tools/utils/explainSdkUsage.ts +0 -1420
  79. package/src/tools/utils/getAddress.ts +0 -12
  80. package/src/tools/utils/getCacheInfo.ts +0 -14
  81. package/src/tools/utils/getConfig.ts +0 -11
  82. package/src/tools/utils/getEthereumAddress.ts +0 -12
  83. package/src/tools/utils/getUrlByTokenName.ts +0 -12
  84. package/src/tools/utils/getVersion.ts +0 -25
  85. package/src/tools/utils/getWallet.ts +0 -25
  86. package/src/tools/utils/hasWallet.ts +0 -15
  87. package/src/tools/utils/index.ts +0 -33
  88. package/src/tools/utils/isTokenGraduated.ts +0 -16
  89. package/src/tools/utils/setWallet.ts +0 -41
  90. package/src/types/mcp.ts +0 -72
  91. package/src/utils/__tests__/validation.test.ts +0 -147
  92. package/src/utils/constraints.ts +0 -155
  93. package/src/utils/default-values.ts +0 -208
  94. package/src/utils/error-handler.ts +0 -69
  95. package/src/utils/error-templates.ts +0 -273
  96. package/src/utils/response-formatter.ts +0 -51
  97. package/src/utils/tool-factory.ts +0 -257
  98. package/src/utils/tool-registry.ts +0 -296
  99. package/src/utils/validation.ts +0 -336
  100. package/tests/wallet-management-integration.test.ts +0 -284
  101. package/tsconfig.json +0 -23
@@ -11,11 +11,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
11
11
  exports.tools = exports.registry = void 0;
12
12
  const index_js_1 = require("./pools/index.js");
13
13
  const index_js_2 = require("./trading/index.js");
14
- const index_js_3 = require("./balance/index.js");
15
- const index_js_4 = require("./creation/index.js");
16
- const index_js_5 = require("./social/index.js");
17
- const index_js_6 = require("./transfers/index.js");
18
- const index_js_7 = require("./utils/index.js");
14
+ const index_js_3 = require("./dex/index.js");
15
+ const index_js_4 = require("./balance/index.js");
16
+ const index_js_5 = require("./creation/index.js");
17
+ const index_js_6 = require("./social/index.js");
18
+ const index_js_7 = require("./transfers/index.js");
19
+ const index_js_8 = require("./utils/index.js");
19
20
  const tool_registry_js_1 = require("../utils/tool-registry.js");
20
21
  /**
21
22
  * Tool categories with metadata
@@ -31,36 +32,41 @@ const toolCategories = [
31
32
  description: 'Token trading operations (buy, sell, calculate amounts)',
32
33
  tools: index_js_2.tradingTools,
33
34
  },
35
+ {
36
+ name: 'dex',
37
+ description: 'DEX/GalaSwap trading for graduated tokens (NEW in v3.23.0)',
38
+ tools: index_js_3.dexTools,
39
+ },
34
40
  {
35
41
  name: 'balance',
36
42
  description: 'Balance queries and portfolio management',
37
- tools: index_js_3.balanceTools,
43
+ tools: index_js_4.balanceTools,
38
44
  },
39
45
  {
40
46
  name: 'creation',
41
47
  description: 'Token creation and launch operations',
42
- tools: index_js_4.creationTools,
48
+ tools: index_js_5.creationTools,
43
49
  },
44
50
  {
45
51
  name: 'social',
46
52
  description: 'Comments and social interactions',
47
- tools: index_js_5.socialTools,
53
+ tools: index_js_6.socialTools,
48
54
  },
49
55
  {
50
56
  name: 'transfers',
51
57
  description: 'Token and GALA transfer operations',
52
- tools: index_js_6.transferTools,
58
+ tools: index_js_7.transferTools,
53
59
  },
54
60
  {
55
61
  name: 'utils',
56
62
  description: 'Utility tools (wallet, config, SDK documentation)',
57
- tools: index_js_7.utilityTools,
63
+ tools: index_js_8.utilityTools,
58
64
  },
59
65
  ];
60
66
  /**
61
- * Enhanced tool registry with validation (57 tools)
67
+ * Enhanced tool registry with validation (62 tools - added 5 DEX tools in v3.23.0)
62
68
  */
63
- exports.registry = (0, tool_registry_js_1.createToolRegistry)(toolCategories, 57);
69
+ exports.registry = (0, tool_registry_js_1.createToolRegistry)(toolCategories, 62);
64
70
  /**
65
71
  * Complete tool array (for backward compatibility)
66
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,+CAA6C;AAC7C,iDAAkD;AAClD,iDAAkD;AAClD,kDAAoD;AACpD,gDAAgD;AAChD,mDAAqD;AACrD,+CAAgD;AAChD,gEAAgF;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG;IACrB;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,oBAAS;KACjB;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,uBAAY;KACpB;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,0CAA0C;QACvD,KAAK,EAAE,uBAAY;KACpB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,sCAAsC;QACnD,KAAK,EAAE,wBAAa;KACrB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kCAAkC;QAC/C,KAAK,EAAE,sBAAW;KACnB;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,oCAAoC;QACjD,KAAK,EAAE,wBAAa;KACrB;IACD;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,mDAAmD;QAChE,KAAK,EAAE,uBAAY;KACpB;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,QAAQ,GAAG,IAAA,qCAAkB,EAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAE/D;;GAEG;AACU,QAAA,KAAK,GAAG,gBAAQ,CAAC,KAAK,CAAC;AAEpC,wCAAwC;AACxC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;IACjC,IAAA,kCAAe,EAAC,gBAAQ,CAAC,CAAC;AAC5B,CAAC;AAED,qCAAqC;AACrC,IAAI,CAAC,gBAAQ,CAAC,OAAO,EAAE,CAAC;IACtB,MAAM,IAAI,KAAK,CACb,qCAAqC,gBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,+CAA6C;AAC7C,iDAAkD;AAClD,6CAA0C;AAC1C,iDAAkD;AAClD,kDAAoD;AACpD,gDAAgD;AAChD,mDAAqD;AACrD,+CAAgD;AAChD,gEAAgF;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG;IACrB;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,oBAAS;KACjB;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,uBAAY;KACpB;IACD;QACE,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,4DAA4D;QACzE,KAAK,EAAE,mBAAQ;KAChB;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,0CAA0C;QACvD,KAAK,EAAE,uBAAY;KACpB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,sCAAsC;QACnD,KAAK,EAAE,wBAAa;KACrB;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kCAAkC;QAC/C,KAAK,EAAE,sBAAW;KACnB;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,oCAAoC;QACjD,KAAK,EAAE,wBAAa;KACrB;IACD;QACE,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,mDAAmD;QAChE,KAAK,EAAE,uBAAY;KACpB;CACF,CAAC;AAEF;;GAEG;AACU,QAAA,QAAQ,GAAG,IAAA,qCAAkB,EAAC,cAAc,EAAE,EAAE,CAAC,CAAC;AAE/D;;GAEG;AACU,QAAA,KAAK,GAAG,gBAAQ,CAAC,KAAK,CAAC;AAEpC,wCAAwC;AACxC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;IACjC,IAAA,kCAAe,EAAC,gBAAQ,CAAC,CAAC;AAC5B,CAAC;AAED,qCAAqC;AACrC,IAAI,CAAC,gBAAQ,CAAC,OAAO,EAAE,CAAC;IACtB,MAAM,IAAI,KAAK,CACb,qCAAqC,gBAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClE,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"explainSdkUsage.d.ts","sourceRoot":"","sources":["../../../src/tools/utils/explainSdkUsage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AA4zClD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAqEjC,CAAC"}
1
+ {"version":3,"file":"explainSdkUsage.d.ts","sourceRoot":"","sources":["../../../src/tools/utils/explainSdkUsage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAw5ClD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAuEjC,CAAC"}
@@ -520,6 +520,88 @@ async function transferTokens() {
520
520
  **MCP Tool Equivalents:**
521
521
  - \`gala_launchpad_transfer_gala\`
522
522
  - \`gala_launchpad_transfer_token\`
523
+ `,
524
+ 'dex-trading': `
525
+ ## DEX Trading with SDK - GalaSwap Integration
526
+
527
+ Trade graduated tokens on the GalaSwap DEX with real-time WebSocket monitoring:
528
+
529
+ \`\`\`typescript
530
+ import { createLaunchpadSDK } from '@gala-chain/launchpad-sdk';
531
+
532
+ async function dexTradingExample() {
533
+ // 1. Initialize SDK with wallet
534
+ const sdk = createLaunchpadSDK({
535
+ wallet: 'your-private-key',
536
+ env: 'production'
537
+ });
538
+
539
+ // ============================================================================
540
+ // QUOTES: Get pricing information (read-only operations)
541
+ // ============================================================================
542
+
543
+ // Quote 1: Exact input (spend known GALA amount)
544
+ const quoteIn = await sdk.getSwapQuoteExactInput('GALA', 'GUSDC', '100');
545
+ console.log('Spend 100 GALA → get ~' + quoteIn.estimatedOutput + ' GUSDC');
546
+ console.log('Price impact: ' + quoteIn.priceImpact + '%');
547
+ console.log('Fee tier: ' + quoteIn.feeTier + ' bps');
548
+
549
+ // Quote 2: Exact output (get known token amount)
550
+ const quoteOut = await sdk.getSwapQuoteExactOutput('GALA', 'GUSDC', '100');
551
+ console.log('Get exactly 100 GUSDC → need ~' + quoteOut.inputAmount + ' GALA');
552
+
553
+ // ============================================================================
554
+ // EXECUTE: Perform the swap with slippage protection
555
+ // ============================================================================
556
+
557
+ const result = await sdk.executeSwap(
558
+ 'GALA', // from token
559
+ 'GUSDC', // to token
560
+ '100', // input amount (100 GALA)
561
+ quoteIn.estimatedOutput, // Use quote's output!
562
+ quoteIn.feeTier, // Use quote's fee tier!
563
+ 0.01 // 1% slippage tolerance
564
+ );
565
+
566
+ console.log('Transaction ID: ' + result.transactionId);
567
+ console.log('Status: ' + result.status);
568
+ console.log('Received: ' + result.outputAmount + ' ' + result.toToken);
569
+
570
+ // ============================================================================
571
+ // PORTFOLIO: Check balances and assets
572
+ // ============================================================================
573
+
574
+ const assets = await sdk.getSwapUserAssets(sdk.getEthereumAddress());
575
+ console.log('Assets in wallet:');
576
+ assets.forEach(asset => {
577
+ console.log(' ' + asset.symbol + ': ' + asset.balance);
578
+ });
579
+
580
+ // ============================================================================
581
+ // POOL INFO: Check liquidity before trading
582
+ // ============================================================================
583
+
584
+ const pool = await sdk.getSwapPoolInfo('GALA', 'GUSDC');
585
+ console.log('GALA↔GUSDC Pool Info:');
586
+ console.log(' Liquidity: ' + pool.liquidity);
587
+ console.log(' Available fee tiers: ' + pool.feeTiers.join(', ') + ' bps');
588
+ console.log(' 24h swaps: ' + pool.swapCount);
589
+ }
590
+ \`\`\`
591
+
592
+ **Key Architecture:**
593
+ - **Unified WebSocket**: Uses LaunchpadSDK's unified WebSocket for transaction monitoring
594
+ - **Environment Alignment**: STAGE/PROD URLs must match between LaunchpadSDK and GSwapService
595
+ - **Token Formats**: Supports simple names ('GALA') or full IDs ('GALA|Unit|none|none')
596
+ - **Slippage Protection**: Always use quote values for execution
597
+ - **Fee Tiers**: 500 (0.05%), 3000 (0.30%), 10000 (1.00%)
598
+
599
+ **MCP Tool Equivalents:**
600
+ - \`gala_launchpad_get_swap_quote_exact_input\`
601
+ - \`gala_launchpad_get_swap_quote_exact_output\`
602
+ - \`gala_launchpad_execute_swap\`
603
+ - \`gala_launchpad_get_swap_user_assets\`
604
+ - \`gala_launchpad_get_swap_pool_info\`
523
605
  `,
524
606
  'error-handling': `
525
607
  ## Error Handling with SDK
@@ -1299,6 +1381,15 @@ function calculateGini(holders: Array<{balance: string}>) {
1299
1381
  | \`gala_launchpad_update_profile\` | \`sdk.updateProfile(data)\` | Update profile info |
1300
1382
  | \`gala_launchpad_upload_profile_image\` | \`sdk.uploadProfileImage(options)\` | Upload profile image |
1301
1383
 
1384
+ ### GSwap DEX Trading
1385
+ | MCP Tool | SDK Method | Notes |
1386
+ |----------|------------|-------|
1387
+ | \`gala_launchpad_get_swap_quote_exact_input\` | \`sdk.getSwapQuoteExactInput(fromToken, toToken, amount)\` | Get quote for known input |
1388
+ | \`gala_launchpad_get_swap_quote_exact_output\` | \`sdk.getSwapQuoteExactOutput(fromToken, toToken, amount)\` | Get quote for known output |
1389
+ | \`gala_launchpad_execute_swap\` | \`sdk.executeSwap(fromToken, toToken, amount, estimatedOutput, feeTier, slippage)\` | Execute swap with slippage |
1390
+ | \`gala_launchpad_get_swap_user_assets\` | \`sdk.getSwapUserAssets(walletAddress)\` | Get token balances on DEX |
1391
+ | \`gala_launchpad_get_swap_pool_info\` | \`sdk.getSwapPoolInfo(tokenA, tokenB)\` | Get liquidity & fee tiers |
1392
+
1302
1393
  ### Token Creation
1303
1394
  | MCP Tool | SDK Method | Notes |
1304
1395
  |----------|------------|-------|
@@ -1344,6 +1435,7 @@ Available topics:
1344
1435
  - 'pool-graduation' - Graduate a bonding curve pool
1345
1436
  - 'fetch-pools' - Query pool data and details
1346
1437
  - 'balances' - Check GALA and token balances
1438
+ - 'dex-trading' - GalaSwap DEX trading (quotes, swaps, assets, pool info)
1347
1439
  - 'price-history' - Historical price analysis and technical analysis
1348
1440
  - 'token-details' - Comprehensive token metadata and validation
1349
1441
  - 'token-distribution' - Analyze token holder distribution and concentration
@@ -1354,7 +1446,7 @@ Available topics:
1354
1446
  - 'error-handling' - Handle errors and exceptions
1355
1447
  - 'installation' - Install and configure SDK
1356
1448
  - 'local-calculations' - Local vs external bonding curve calculations
1357
- - 'mcp-to-sdk-mapping' - Complete mapping of MCP tools to SDK methods (56+ tools)
1449
+ - 'mcp-to-sdk-mapping' - Complete mapping of MCP tools to SDK methods (57+ tools)
1358
1450
 
1359
1451
  Returns runnable TypeScript code examples with explanations.`,
1360
1452
  inputSchema: {
@@ -1368,6 +1460,7 @@ Returns runnable TypeScript code examples with explanations.`,
1368
1460
  'pool-graduation',
1369
1461
  'fetch-pools',
1370
1462
  'balances',
1463
+ 'dex-trading',
1371
1464
  'price-history',
1372
1465
  'token-details',
1373
1466
  'token-distribution',
@@ -1 +1 @@
1
- {"version":3,"file":"explainSdkUsage.js","sourceRoot":"","sources":["../../../src/tools/utils/explainSdkUsage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"explainSdkUsage.js","sourceRoot":"","sources":["../../../src/tools/utils/explainSdkUsage.ts"],"names":[],"mappings":"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"}
@@ -139,6 +139,24 @@ export declare function validatePaginationLimit(limit: string | number, max?: nu
139
139
  * ```
140
140
  */
141
141
  export declare function validateTokenList(tokens: string, fieldName?: string): string[];
142
+ /**
143
+ * Validate URL format
144
+ *
145
+ * URLs must be well-formed HTTP/HTTPS URLs.
146
+ *
147
+ * @param url - URL to validate
148
+ * @param fieldName - Field name for error messages (default: 'url')
149
+ * @throws {ValidationError} If URL is invalid
150
+ *
151
+ * @example
152
+ * ```typescript
153
+ * validateUrl('https://example.com'); // ✅ Valid
154
+ * validateUrl('https://twitter.com/user'); // ✅ Valid
155
+ * validateUrl('http://localhost:3000'); // ✅ Valid
156
+ * validateUrl('not-a-url'); // ❌ Throws: invalid format
157
+ * ```
158
+ */
159
+ export declare function validateUrl(url: string, fieldName?: string): void;
142
160
  /**
143
161
  * Safe validation wrapper that doesn't throw
144
162
  *
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAE/B,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;CAKlB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAc,GAAG,IAAI,CAmB7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,SAAS,SAAa,GACrB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,IAAI,CAgB5E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,IAAI,CAmB9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,GAAG,SAAM,EACT,SAAS,SAAU,GAClB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,MAAM,EAAE,CA2BhF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,YAAY,EAAE,MAAM,IAAI,GACvB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAUtC"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAE/B,KAAK,EAAE,MAAM;gBAAb,KAAK,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;CAKlB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAc,GAAG,IAAI,CAmB7E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,GAAG,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,IAAI,CAqBN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,SAAS,SAAa,GACrB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAY,GAAG,IAAI,CAgB5E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,IAAI,CAmB9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,GAAG,SAAM,EACT,SAAS,SAAU,GAClB,IAAI,CAoBN;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAW,GAAG,MAAM,EAAE,CA2BhF;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,IAAI,CAgBhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC1B,YAAY,EAAE,MAAM,IAAI,GACvB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAUtC"}
@@ -14,6 +14,7 @@ exports.validateAddress = validateAddress;
14
14
  exports.validateTokenSymbol = validateTokenSymbol;
15
15
  exports.validatePaginationLimit = validatePaginationLimit;
16
16
  exports.validateTokenList = validateTokenList;
17
+ exports.validateUrl = validateUrl;
17
18
  exports.safeValidate = safeValidate;
18
19
  /**
19
20
  * Validation error class for better error handling
@@ -245,6 +246,40 @@ function validateTokenList(tokens, fieldName = 'tokens') {
245
246
  });
246
247
  return tokenArray;
247
248
  }
249
+ /**
250
+ * Validate URL format
251
+ *
252
+ * URLs must be well-formed HTTP/HTTPS URLs.
253
+ *
254
+ * @param url - URL to validate
255
+ * @param fieldName - Field name for error messages (default: 'url')
256
+ * @throws {ValidationError} If URL is invalid
257
+ *
258
+ * @example
259
+ * ```typescript
260
+ * validateUrl('https://example.com'); // ✅ Valid
261
+ * validateUrl('https://twitter.com/user'); // ✅ Valid
262
+ * validateUrl('http://localhost:3000'); // ✅ Valid
263
+ * validateUrl('not-a-url'); // ❌ Throws: invalid format
264
+ * ```
265
+ */
266
+ function validateUrl(url, fieldName = 'url') {
267
+ if (!url || typeof url !== 'string') {
268
+ throw new ValidationError(fieldName, 'URL is required');
269
+ }
270
+ try {
271
+ const urlObj = new URL(url);
272
+ if (!['http:', 'https:'].includes(urlObj.protocol)) {
273
+ throw new ValidationError(fieldName, 'URL must use HTTP or HTTPS protocol');
274
+ }
275
+ }
276
+ catch (error) {
277
+ if (error instanceof ValidationError) {
278
+ throw error;
279
+ }
280
+ throw new ValidationError(fieldName, `Invalid URL format: ${url}`);
281
+ }
282
+ }
248
283
  /**
249
284
  * Safe validation wrapper that doesn't throw
250
285
  *
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@gala-chain/launchpad-mcp-server",
3
- "version": "1.18.0",
4
- "description": "MCP server for Gala Launchpad - 57 tools (pool management, trading, price history, token creation, wallet management) supporting optional wallet (read-only and full-access modes). Production-grade AI agent integration for Claude Desktop with comprehensive validation and 80%+ test coverage",
3
+ "version": "1.19.1",
4
+ "description": "MCP server for Gala Launchpad - 62 tools (pool management, GSwap DEX trading, price history, token creation, wallet management) supporting optional wallet (read-only and full-access modes). Production-grade AI agent integration for Claude Desktop with comprehensive validation and 80%+ test coverage",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "gala-launchpad-mcp": "./dist/index.js"
@@ -73,7 +73,7 @@
73
73
  "dependencies": {
74
74
  "@gala-chain/api": "^2.4.3",
75
75
  "@gala-chain/connect": "^2.4.3",
76
- "@gala-chain/launchpad-sdk": "^3.23.0",
76
+ "@gala-chain/launchpad-sdk": "^3.24.1",
77
77
  "@modelcontextprotocol/sdk": "^0.5.0",
78
78
  "axios": "^1.12.2",
79
79
  "bignumber.js": "^9.1.2",