@gala-chain/launchpad-mcp-server 1.3.0 → 1.5.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 (48) hide show
  1. package/README.md +128 -0
  2. package/dist/constants/mcpToolNames.d.ts +159 -0
  3. package/dist/constants/mcpToolNames.d.ts.map +1 -0
  4. package/dist/constants/mcpToolNames.js +131 -0
  5. package/dist/constants/mcpToolNames.js.map +1 -0
  6. package/dist/prompts/__tests__/promptStructure.test.d.ts +7 -0
  7. package/dist/prompts/__tests__/promptStructure.test.d.ts.map +1 -0
  8. package/dist/prompts/__tests__/promptStructure.test.js +106 -0
  9. package/dist/prompts/__tests__/promptStructure.test.js.map +1 -0
  10. package/dist/prompts/__tests__/registry.test.d.ts +7 -0
  11. package/dist/prompts/__tests__/registry.test.d.ts.map +1 -0
  12. package/dist/prompts/__tests__/registry.test.js +119 -0
  13. package/dist/prompts/__tests__/registry.test.js.map +1 -0
  14. package/dist/prompts/analysis.d.ts +31 -0
  15. package/dist/prompts/analysis.d.ts.map +1 -0
  16. package/dist/prompts/analysis.js +342 -0
  17. package/dist/prompts/analysis.js.map +1 -0
  18. package/dist/prompts/index.d.ts +83 -0
  19. package/dist/prompts/index.d.ts.map +1 -0
  20. package/dist/prompts/index.js +117 -0
  21. package/dist/prompts/index.js.map +1 -0
  22. package/dist/prompts/portfolio.d.ts +31 -0
  23. package/dist/prompts/portfolio.d.ts.map +1 -0
  24. package/dist/prompts/portfolio.js +233 -0
  25. package/dist/prompts/portfolio.js.map +1 -0
  26. package/dist/prompts/trading.d.ts +27 -0
  27. package/dist/prompts/trading.d.ts.map +1 -0
  28. package/dist/prompts/trading.js +179 -0
  29. package/dist/prompts/trading.js.map +1 -0
  30. package/dist/prompts/utils/workflowTemplates.d.ts +103 -0
  31. package/dist/prompts/utils/workflowTemplates.d.ts.map +1 -0
  32. package/dist/prompts/utils/workflowTemplates.js +315 -0
  33. package/dist/prompts/utils/workflowTemplates.js.map +1 -0
  34. package/dist/server.d.ts +4 -0
  35. package/dist/server.d.ts.map +1 -1
  36. package/dist/server.js +51 -1
  37. package/dist/server.js.map +1 -1
  38. package/dist/types/mcp.d.ts +29 -0
  39. package/dist/types/mcp.d.ts.map +1 -1
  40. package/dist/utils/__tests__/validation.test.d.ts +7 -0
  41. package/dist/utils/__tests__/validation.test.d.ts.map +1 -0
  42. package/dist/utils/__tests__/validation.test.js +122 -0
  43. package/dist/utils/__tests__/validation.test.js.map +1 -0
  44. package/dist/utils/validation.d.ts +162 -0
  45. package/dist/utils/validation.d.ts.map +1 -0
  46. package/dist/utils/validation.js +276 -0
  47. package/dist/utils/validation.js.map +1 -0
  48. package/package.json +2 -2
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Workflow Template Utilities
3
+ *
4
+ * Reusable templates for common workflow patterns in prompts.
5
+ * Reduces duplication and ensures consistency across slash commands.
6
+ */
7
+ /**
8
+ * Configuration for trading workflow generation
9
+ */
10
+ export interface TradingWorkflowConfig {
11
+ operation: 'buy' | 'sell' | 'graduate';
12
+ tokenName: string;
13
+ amount?: string;
14
+ amountType?: 'gala' | 'tokens';
15
+ slippage?: string;
16
+ }
17
+ /**
18
+ * Create a complete trading workflow with all standard steps
19
+ *
20
+ * @param config - Trading workflow configuration
21
+ * @returns Formatted workflow text with numbered steps
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const workflow = createTradingWorkflow({
26
+ * operation: 'buy',
27
+ * tokenName: 'anime',
28
+ * amount: '100',
29
+ * amountType: 'gala',
30
+ * slippage: '1'
31
+ * });
32
+ * ```
33
+ */
34
+ export declare function createTradingWorkflow(config: TradingWorkflowConfig): string;
35
+ /**
36
+ * Format a list of steps with numbers
37
+ *
38
+ * @param steps - Array of step descriptions
39
+ * @returns Formatted steps with numbering
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * formatWorkflowSteps([
44
+ * 'Fetch pool details',
45
+ * 'Calculate price',
46
+ * 'Show results'
47
+ * ]);
48
+ * // Returns:
49
+ * // "1. Fetch pool details
50
+ * // 2. Calculate price
51
+ * // 3. Show results"
52
+ * ```
53
+ */
54
+ export declare function formatWorkflowSteps(steps: string[]): string;
55
+ /**
56
+ * Create a standard confirmation step for destructive operations
57
+ *
58
+ * @param operation - Operation name (e.g., 'buy', 'sell', 'graduate')
59
+ * @returns Confirmation step text
60
+ */
61
+ export declare function createConfirmationStep(operation: string): string;
62
+ /**
63
+ * Create a standard verification step after transaction
64
+ *
65
+ * @param operation - Operation name
66
+ * @param verifications - Array of verification checks to perform
67
+ * @returns Verification step text
68
+ */
69
+ export declare function createVerificationStep(operation: string, verifications: string[]): string;
70
+ /**
71
+ * Create an optimized performance note for LOCAL calculations
72
+ *
73
+ * @returns Performance optimization guidance text
74
+ */
75
+ export declare function createPerformanceNote(): string;
76
+ /**
77
+ * Create a cost breakdown display template
78
+ *
79
+ * @param operation - Operation type for context
80
+ * @returns Cost breakdown template text
81
+ */
82
+ export declare function createCostBreakdown(operation: 'buy' | 'sell' | 'graduate'): string;
83
+ /**
84
+ * Create a balance check step
85
+ *
86
+ * @param assetType - Type of asset to check ('GALA' or token name)
87
+ * @returns Balance check step text
88
+ */
89
+ export declare function createBalanceCheckStep(assetType: 'GALA' | string): string;
90
+ /**
91
+ * Create analysis workflow for token evaluation
92
+ *
93
+ * @param tokenName - Token to analyze
94
+ * @returns Complete analysis workflow
95
+ */
96
+ export declare function createAnalysisWorkflow(tokenName: string): string;
97
+ /**
98
+ * Create portfolio analysis workflow
99
+ *
100
+ * @returns Complete portfolio analysis workflow
101
+ */
102
+ export declare function createPortfolioWorkflow(): string;
103
+ //# sourceMappingURL=workflowTemplates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflowTemplates.d.ts","sourceRoot":"","sources":["../../../src/prompts/utils/workflowTemplates.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAa3E;AAqID;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAE3D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE,GACtB,MAAM,CAMR;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAuBlF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAKzE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAgBhE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CA2BhD"}
@@ -0,0 +1,315 @@
1
+ "use strict";
2
+ /**
3
+ * Workflow Template Utilities
4
+ *
5
+ * Reusable templates for common workflow patterns in prompts.
6
+ * Reduces duplication and ensures consistency across slash commands.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.createTradingWorkflow = createTradingWorkflow;
10
+ exports.formatWorkflowSteps = formatWorkflowSteps;
11
+ exports.createConfirmationStep = createConfirmationStep;
12
+ exports.createVerificationStep = createVerificationStep;
13
+ exports.createPerformanceNote = createPerformanceNote;
14
+ exports.createCostBreakdown = createCostBreakdown;
15
+ exports.createBalanceCheckStep = createBalanceCheckStep;
16
+ exports.createAnalysisWorkflow = createAnalysisWorkflow;
17
+ exports.createPortfolioWorkflow = createPortfolioWorkflow;
18
+ const mcpToolNames_js_1 = require("../../constants/mcpToolNames.js");
19
+ /**
20
+ * Create a complete trading workflow with all standard steps
21
+ *
22
+ * @param config - Trading workflow configuration
23
+ * @returns Formatted workflow text with numbered steps
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * const workflow = createTradingWorkflow({
28
+ * operation: 'buy',
29
+ * tokenName: 'anime',
30
+ * amount: '100',
31
+ * amountType: 'gala',
32
+ * slippage: '1'
33
+ * });
34
+ * ```
35
+ */
36
+ function createTradingWorkflow(config) {
37
+ const { operation, tokenName, amount, amountType, slippage = '1' } = config;
38
+ switch (operation) {
39
+ case 'buy':
40
+ return createBuyWorkflow(tokenName, amount, amountType, slippage);
41
+ case 'sell':
42
+ return createSellWorkflow(tokenName, amount, slippage);
43
+ case 'graduate':
44
+ return createGraduationWorkflow(tokenName, slippage);
45
+ default:
46
+ throw new Error(`Unknown operation: ${operation}`);
47
+ }
48
+ }
49
+ /**
50
+ * Create buy tokens workflow
51
+ */
52
+ function createBuyWorkflow(tokenName, amount, amountType, slippage) {
53
+ const slippageFactor = parseFloat(slippage) / 100;
54
+ const typeParam = amountType === 'gala' ? 'native' : 'exact';
55
+ const amountLabel = amountType === 'gala' ? 'GALA to spend' : 'Tokens to buy';
56
+ return `Help me buy tokens on Gala Launchpad:
57
+
58
+ Token: ${tokenName}
59
+ ${amountLabel}: ${amount}
60
+ Slippage tolerance: ${slippage}%
61
+
62
+ Please follow this workflow:
63
+
64
+ 1. Calculate buy amount using ${mcpToolNames_js_1.MCP_TOOLS.CALCULATE_BUY_AMOUNT}:
65
+ - tokenName: "${tokenName}"
66
+ - amount: "${amount}"
67
+ - type: "${typeParam}" (${amountType === 'gala' ? 'spending GALA' : 'buying exact tokens'})
68
+
69
+ 2. Show me the breakdown:
70
+ - Tokens I'll receive
71
+ - Transaction fee
72
+ - Gas fee
73
+ - Reverse bonding curve fee
74
+ - Total cost
75
+
76
+ 3. Ask for confirmation before executing
77
+
78
+ 4. If I confirm, execute the buy using ${mcpToolNames_js_1.MCP_TOOLS.BUY_TOKENS} with:
79
+ - expectedAmount from calculation
80
+ - maxAcceptableReverseBondingCurveFee from calculation
81
+ - slippageToleranceFactor: ${slippageFactor}
82
+
83
+ 5. After purchase, show transaction ID and verify balance`;
84
+ }
85
+ /**
86
+ * Create sell tokens workflow
87
+ */
88
+ function createSellWorkflow(tokenName, amount, slippage) {
89
+ const slippageFactor = parseFloat(slippage) / 100;
90
+ return `Help me sell tokens on Gala Launchpad:
91
+
92
+ Token: ${tokenName}
93
+ Tokens to sell: ${amount}
94
+ Slippage tolerance: ${slippage}%
95
+
96
+ Please follow this workflow:
97
+
98
+ 1. Check my token balance using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKEN_BALANCE}
99
+
100
+ 2. Calculate sell amount using ${mcpToolNames_js_1.MCP_TOOLS.CALCULATE_SELL_AMOUNT}:
101
+ - tokenName: "${tokenName}"
102
+ - amount: "${amount}"
103
+ - type: "exact" (selling exact token amount)
104
+
105
+ 3. Show me the breakdown:
106
+ - GALA I'll receive
107
+ - Transaction fee
108
+ - Gas fee
109
+ - Reverse bonding curve fee
110
+ - Net proceeds
111
+
112
+ 4. Ask for confirmation before executing
113
+
114
+ 5. If I confirm, execute the sell using ${mcpToolNames_js_1.MCP_TOOLS.SELL_TOKENS} with:
115
+ - expectedAmount from calculation
116
+ - maxAcceptableReverseBondingCurveFee from calculation
117
+ - slippageToleranceFactor: ${slippageFactor}
118
+
119
+ 6. After sale, show transaction ID and verify updated balance`;
120
+ }
121
+ /**
122
+ * Create token graduation workflow
123
+ */
124
+ function createGraduationWorkflow(tokenName, slippage) {
125
+ const slippageFactor = parseFloat(slippage) / 100;
126
+ return `Help me graduate the token "${tokenName}" on Gala Launchpad:
127
+
128
+ Slippage tolerance: ${slippage}%
129
+
130
+ Please follow this workflow:
131
+
132
+ 1. Check if token is already graduated using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_POOL_DETAILS}
133
+ - If saleStatus is "Completed", inform me it's already graduated
134
+
135
+ 2. Fetch optimized pool details using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_POOL_DETAILS_FOR_CALCULATION}
136
+
137
+ 3. Calculate graduation cost using ${mcpToolNames_js_1.MCP_TOOLS.CALCULATE_BUY_AMOUNT_FOR_GRADUATION} with:
138
+ - calculateAmountMode: "local"
139
+ - currentSupply from pool details
140
+
141
+ 4. Show me the breakdown:
142
+ - GALA required to graduate: [amount field - this is GALA cost, NOT token quantity!]
143
+ - Transaction fee
144
+ - Gas fee
145
+ - Total cost
146
+
147
+ 5. Check my GALA balance using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_BALANCE}
148
+ - Verify I have enough GALA for graduation
149
+
150
+ 6. Ask for confirmation before executing
151
+
152
+ 7. If I confirm, execute graduation using ${mcpToolNames_js_1.MCP_TOOLS.GRADUATE_TOKEN} with:
153
+ - tokenName: "${tokenName}"
154
+ - slippageToleranceFactor: ${slippageFactor}
155
+ - calculateAmountMode: "local"
156
+ - currentSupply from pool details (optimization!)
157
+
158
+ 8. After graduation:
159
+ - Show transaction ID
160
+ - Verify pool status changed to "Completed"
161
+ - Get frontend URL using ${mcpToolNames_js_1.MCP_TOOLS.GET_URL_BY_TOKEN_NAME}
162
+
163
+ IMPORTANT: The "amount" field in graduation calculations is GALA cost, not token quantity!`;
164
+ }
165
+ /**
166
+ * Format a list of steps with numbers
167
+ *
168
+ * @param steps - Array of step descriptions
169
+ * @returns Formatted steps with numbering
170
+ *
171
+ * @example
172
+ * ```typescript
173
+ * formatWorkflowSteps([
174
+ * 'Fetch pool details',
175
+ * 'Calculate price',
176
+ * 'Show results'
177
+ * ]);
178
+ * // Returns:
179
+ * // "1. Fetch pool details
180
+ * // 2. Calculate price
181
+ * // 3. Show results"
182
+ * ```
183
+ */
184
+ function formatWorkflowSteps(steps) {
185
+ return steps.map((step, index) => `${index + 1}. ${step}`).join('\n\n');
186
+ }
187
+ /**
188
+ * Create a standard confirmation step for destructive operations
189
+ *
190
+ * @param operation - Operation name (e.g., 'buy', 'sell', 'graduate')
191
+ * @returns Confirmation step text
192
+ */
193
+ function createConfirmationStep(operation) {
194
+ return `Ask for confirmation before executing the ${operation} operation`;
195
+ }
196
+ /**
197
+ * Create a standard verification step after transaction
198
+ *
199
+ * @param operation - Operation name
200
+ * @param verifications - Array of verification checks to perform
201
+ * @returns Verification step text
202
+ */
203
+ function createVerificationStep(operation, verifications) {
204
+ const checks = verifications
205
+ .map((check, index) => ` ${String.fromCharCode(97 + index)}. ${check}`)
206
+ .join('\n');
207
+ return `After ${operation} completes:\n${checks}`;
208
+ }
209
+ /**
210
+ * Create an optimized performance note for LOCAL calculations
211
+ *
212
+ * @returns Performance optimization guidance text
213
+ */
214
+ function createPerformanceNote() {
215
+ return `Use the performance optimization pattern from SDK v3.9.0 to minimize network calls.`;
216
+ }
217
+ /**
218
+ * Create a cost breakdown display template
219
+ *
220
+ * @param operation - Operation type for context
221
+ * @returns Cost breakdown template text
222
+ */
223
+ function createCostBreakdown(operation) {
224
+ switch (operation) {
225
+ case 'buy':
226
+ return `Show me the breakdown:
227
+ - Tokens I'll receive
228
+ - Transaction fee
229
+ - Gas fee
230
+ - Reverse bonding curve fee
231
+ - Total cost`;
232
+ case 'sell':
233
+ return `Show me the breakdown:
234
+ - GALA I'll receive
235
+ - Transaction fee
236
+ - Gas fee
237
+ - Reverse bonding curve fee
238
+ - Net proceeds`;
239
+ case 'graduate':
240
+ return `Show me the breakdown:
241
+ - GALA required to graduate
242
+ - Transaction fee
243
+ - Gas fee
244
+ - Total cost`;
245
+ }
246
+ }
247
+ /**
248
+ * Create a balance check step
249
+ *
250
+ * @param assetType - Type of asset to check ('GALA' or token name)
251
+ * @returns Balance check step text
252
+ */
253
+ function createBalanceCheckStep(assetType) {
254
+ if (assetType === 'GALA') {
255
+ return `Check my GALA balance using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_BALANCE}`;
256
+ }
257
+ return `Check my ${assetType} token balance using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKEN_BALANCE}`;
258
+ }
259
+ /**
260
+ * Create analysis workflow for token evaluation
261
+ *
262
+ * @param tokenName - Token to analyze
263
+ * @returns Complete analysis workflow
264
+ */
265
+ function createAnalysisWorkflow(tokenName) {
266
+ return `Analyze the token "${tokenName}" using the Gala Launchpad MCP server:
267
+
268
+ 1. Fetch optimized pool details using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_POOL_DETAILS_FOR_CALCULATION}
269
+ 2. Calculate current USD spot price using LOCAL mode with the currentSupply
270
+ 3. Calculate graduation cost using LOCAL mode with the currentSupply
271
+ 4. Show remaining tokens and pool status (saleStatus)
272
+ 5. Calculate pool progress percentage: (currentSupply / maxSupply * 100)
273
+
274
+ ${createPerformanceNote()}
275
+
276
+ Provide a brief analysis including:
277
+ - Current token price in USD
278
+ - Total GALA required to graduate the pool
279
+ - How close the token is to graduation (percentage)
280
+ - Whether this would be a good time to buy or wait`;
281
+ }
282
+ /**
283
+ * Create portfolio analysis workflow
284
+ *
285
+ * @returns Complete portfolio analysis workflow
286
+ */
287
+ function createPortfolioWorkflow() {
288
+ return `Analyze my complete Gala Launchpad portfolio:
289
+
290
+ 1. Get GALA balance using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_BALANCE}
291
+
292
+ 2. Get all tokens I'm holding using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKENS_HELD}
293
+ - Use pagination if needed to get all tokens
294
+
295
+ 3. For each token, calculate USD value using optimized pattern:
296
+ a. Fetch pool details once: ${mcpToolNames_js_1.MCP_TOOLS.FETCH_POOL_DETAILS_FOR_CALCULATION}
297
+ b. Calculate spot price: ${mcpToolNames_js_1.MCP_TOOLS.FETCH_LAUNCHPAD_TOKEN_SPOT_PRICE} with LOCAL mode
298
+ c. Multiply token balance by spot price for USD value
299
+
300
+ 4. Calculate GALA USD value using ${mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_SPOT_PRICE}
301
+
302
+ 5. Present a comprehensive portfolio summary:
303
+ - GALA balance and USD value
304
+ - Each token holding with:
305
+ * Token name
306
+ * Balance
307
+ * USD spot price
308
+ * Total USD value
309
+ - Total portfolio value in USD
310
+ - Top 3 holdings by value
311
+ - Number of different tokens held
312
+
313
+ ${createPerformanceNote()}`;
314
+ }
315
+ //# sourceMappingURL=workflowTemplates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflowTemplates.js","sourceRoot":"","sources":["../../../src/prompts/utils/workflowTemplates.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAgCH,sDAaC;AAwJD,kDAEC;AAQD,wDAEC;AASD,wDASC;AAOD,sDAEC;AAQD,kDAuBC;AAQD,wDAKC;AAQD,wDAgBC;AAOD,0DA2BC;AAhVD,qEAA4D;AAa5D;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,qBAAqB,CAAC,MAA6B;IACjE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,GAAG,EAAE,GAAG,MAAM,CAAC;IAE5E,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,OAAO,iBAAiB,CAAC,SAAS,EAAE,MAAO,EAAE,UAAW,EAAE,QAAQ,CAAC,CAAC;QACtE,KAAK,MAAM;YACT,OAAO,kBAAkB,CAAC,SAAS,EAAE,MAAO,EAAE,QAAQ,CAAC,CAAC;QAC1D,KAAK,UAAU;YACb,OAAO,wBAAwB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACvD;YACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,SAAiB,EACjB,MAAc,EACd,UAA6B,EAC7B,QAAgB;IAEhB,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;IAClD,MAAM,SAAS,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;IAC7D,MAAM,WAAW,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;IAE9E,OAAO;;SAEA,SAAS;EAChB,WAAW,KAAK,MAAM;sBACF,QAAQ;;;;gCAIE,2BAAS,CAAC,oBAAoB;mBAC3C,SAAS;gBACZ,MAAM;cACR,SAAS,MAAM,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,qBAAqB;;;;;;;;;;;yCAWnD,2BAAS,CAAC,UAAU;;;gCAG7B,cAAc;;0DAEY,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,SAAiB,EACjB,MAAc,EACd,QAAgB;IAEhB,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;IAElD,OAAO;;SAEA,SAAS;kBACA,MAAM;sBACF,QAAQ;;;;kCAII,2BAAS,CAAC,mBAAmB;;iCAE9B,2BAAS,CAAC,qBAAqB;mBAC7C,SAAS;gBACZ,MAAM;;;;;;;;;;;;0CAYoB,2BAAS,CAAC,WAAW;;;gCAG/B,cAAc;;8DAEgB,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,SAAiB,EAAE,QAAgB;IACnE,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;IAElD,OAAO,+BAA+B,SAAS;;sBAE3B,QAAQ;;;;+CAIiB,2BAAS,CAAC,kBAAkB;;;wCAGnC,2BAAS,CAAC,kCAAkC;;qCAE/C,2BAAS,CAAC,mCAAmC;;;;;;;;;;iCAUjD,2BAAS,CAAC,kBAAkB;;;;;4CAKjB,2BAAS,CAAC,cAAc;mBACjD,SAAS;gCACI,cAAc;;;;;;;8BAOhB,2BAAS,CAAC,qBAAqB;;2FAE8B,CAAC;AAC5F,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,mBAAmB,CAAC,KAAe;IACjD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,SAAiB;IACtD,OAAO,6CAA6C,SAAS,YAAY,CAAC;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,sBAAsB,CACpC,SAAiB,EACjB,aAAuB;IAEvB,MAAM,MAAM,GAAG,aAAa;SACzB,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;SACxE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,SAAS,SAAS,gBAAgB,MAAM,EAAE,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB;IACnC,OAAO,qFAAqF,CAAC;AAC/F,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,SAAsC;IACxE,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,KAAK;YACR,OAAO;;;;;gBAKG,CAAC;QACb,KAAK,MAAM;YACT,OAAO;;;;;kBAKK,CAAC;QACf,KAAK,UAAU;YACb,OAAO;;;;gBAIG,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,SAA0B;IAC/D,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,OAAO,+BAA+B,2BAAS,CAAC,kBAAkB,EAAE,CAAC;IACvE,CAAC;IACD,OAAO,YAAY,SAAS,wBAAwB,2BAAS,CAAC,mBAAmB,EAAE,CAAC;AACtF,CAAC;AAED;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,SAAiB;IACtD,OAAO,sBAAsB,SAAS;;wCAEA,2BAAS,CAAC,kCAAkC;;;;;;EAMlF,qBAAqB,EAAE;;;;;;mDAM0B,CAAC;AACpD,CAAC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB;IACrC,OAAO;;4BAEmB,2BAAS,CAAC,kBAAkB;;sCAElB,2BAAS,CAAC,iBAAiB;;;;iCAIhC,2BAAS,CAAC,kCAAkC;8BAC/C,2BAAS,CAAC,gCAAgC;;;oCAGpC,2BAAS,CAAC,qBAAqB;;;;;;;;;;;;;EAajE,qBAAqB,EAAE,EAAE,CAAC;AAC5B,CAAC"}
package/dist/server.d.ts CHANGED
@@ -16,6 +16,10 @@ export declare class LaunchpadMCPServer {
16
16
  * Setup tool handlers
17
17
  */
18
18
  private setupToolHandlers;
19
+ /**
20
+ * Setup prompt handlers
21
+ */
22
+ private setupPromptHandlers;
19
23
  /**
20
24
  * Setup error handlers
21
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,GAAG,CAA6B;IACxC,OAAO,CAAC,KAAK,CAAU;;IAqBvB;;OAEG;IACG,UAAU;IAiChB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;OAEG;IACG,KAAK;IAYX;;OAEG;IACH,OAAO;CAQR"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,GAAG,CAA6B;IACxC,OAAO,CAAC,KAAK,CAAU;;IAyBvB;;OAEG;IACG,UAAU;IAiChB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiD3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;OAEG;IACG,KAAK;IAaX;;OAEG;IACH,OAAO;CAQR"}
package/dist/server.js CHANGED
@@ -11,6 +11,7 @@ const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
11
11
  const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
12
12
  const launchpad_sdk_1 = require("@gala-chain/launchpad-sdk");
13
13
  const index_js_2 = require("./tools/index.js");
14
+ const index_js_3 = require("./prompts/index.js");
14
15
  class LaunchpadMCPServer {
15
16
  server;
16
17
  sdk = null;
@@ -19,13 +20,17 @@ class LaunchpadMCPServer {
19
20
  this.debug = process.env.DEBUG === 'true';
20
21
  this.server = new index_js_1.Server({
21
22
  name: '@gala-chain/launchpad-mcp-server',
22
- version: '1.0.0',
23
+ version: '1.5.0',
23
24
  }, {
24
25
  capabilities: {
25
26
  tools: {},
27
+ prompts: {
28
+ listChanged: true,
29
+ },
26
30
  },
27
31
  });
28
32
  this.setupToolHandlers();
33
+ this.setupPromptHandlers();
29
34
  this.setupErrorHandlers();
30
35
  }
31
36
  /**
@@ -105,6 +110,50 @@ class LaunchpadMCPServer {
105
110
  }
106
111
  });
107
112
  }
113
+ /**
114
+ * Setup prompt handlers
115
+ */
116
+ setupPromptHandlers() {
117
+ // Register prompts/list handler
118
+ this.server.setRequestHandler(types_js_1.ListPromptsRequestSchema, async () => {
119
+ if (this.debug) {
120
+ console.error(`[MCP Server] Listing ${index_js_3.prompts.length} prompts`);
121
+ }
122
+ return {
123
+ prompts: index_js_3.prompts.map((prompt) => ({
124
+ name: prompt.name,
125
+ description: prompt.description,
126
+ arguments: prompt.arguments || [],
127
+ })),
128
+ };
129
+ });
130
+ // Register prompts/get handler
131
+ this.server.setRequestHandler(types_js_1.GetPromptRequestSchema, async (request) => {
132
+ const promptName = request.params.name;
133
+ const args = (request.params.arguments || {});
134
+ if (this.debug) {
135
+ console.error(`[MCP Server] Getting prompt: ${promptName}`);
136
+ console.error(`[MCP Server] Arguments:`, JSON.stringify(args, null, 2));
137
+ }
138
+ const prompt = (0, index_js_3.getPrompt)(promptName);
139
+ if (!prompt) {
140
+ throw new Error(`Prompt not found: ${promptName}`);
141
+ }
142
+ try {
143
+ const messages = prompt.handler(args);
144
+ if (this.debug) {
145
+ console.error(`[MCP Server] Prompt generated ${messages.length} messages`);
146
+ }
147
+ return {
148
+ messages,
149
+ };
150
+ }
151
+ catch (error) {
152
+ console.error(`[MCP Server] Prompt generation failed: ${promptName}`, error);
153
+ throw error;
154
+ }
155
+ });
156
+ }
108
157
  /**
109
158
  * Setup error handlers
110
159
  */
@@ -137,6 +186,7 @@ class LaunchpadMCPServer {
137
186
  if (this.debug) {
138
187
  console.error('[MCP Server] Gala Launchpad MCP server running on stdio');
139
188
  console.error(`[MCP Server] Registered ${index_js_2.tools.length} tools`);
189
+ console.error(`[MCP Server] Registered ${index_js_3.prompts.length} prompts (slash commands)`);
140
190
  }
141
191
  }
142
192
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,wEAAmE;AACnE,wEAAiF;AACjF,iEAG4C;AAC5C,6DAA2E;AAC3E,+CAAyC;AAEzC,MAAa,kBAAkB;IACrB,MAAM,CAAS;IACf,GAAG,GAAwB,IAAI,CAAC;IAChC,KAAK,CAAU;IAEvB;QACE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC;QAE1C,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAM,CACtB;YACE,IAAI,EAAE,kCAAkC;YACxC,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV;SACF,CACF,CAAC;QAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACpD,CAAC;YAED,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,2BAAW,CAAC,UAAU,CAAC;gBACvD,WAAW,EAAG,OAAO,CAAC,GAAG,CAAC,WAAmB,IAAI,aAAa;gBAC9D,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;gBACnC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,EAAE,EAAE,CAAC;gBACrD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YAEf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtE,OAAO,CAAC,KAAK,CAAC,wCAAwC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;YAED,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACpC,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,8BAA8B;QAC9B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE;YAC/D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,gBAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;YAC9D,CAAC;YAED,OAAO;gBACL,KAAK,EAAE,gBAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,gCAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAc,CAAC;YAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;YAE5C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;gBAC1D,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,IAAI,GAAG,gBAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YAEpD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACjG,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAElD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,EAAE,CAAC,CAAC;gBACvE,CAAC;gBAED,OAAO,MAAa,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;gBACxE,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC9B,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACvD,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACzB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACzE,OAAO,CAAC,KAAK,CAAC,2BAA2B,gBAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;CACF;AArKD,gDAqKC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,wEAAmE;AACnE,wEAAiF;AACjF,iEAK4C;AAC5C,6DAA2E;AAC3E,+CAAyC;AACzC,iDAAwD;AAExD,MAAa,kBAAkB;IACrB,MAAM,CAAS;IACf,GAAG,GAAwB,IAAI,CAAC;IAChC,KAAK,CAAU;IAEvB;QACE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC;QAE1C,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAM,CACtB;YACE,IAAI,EAAE,kCAAkC;YACxC,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE;oBACP,WAAW,EAAE,IAAI;iBAClB;aACF;SACF,CACF,CAAC;QAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACpD,CAAC;YAED,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,2BAAW,CAAC,UAAU,CAAC;gBACvD,WAAW,EAAG,OAAO,CAAC,GAAG,CAAC,WAAmB,IAAI,aAAa;gBAC9D,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;gBACnC,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,EAAE,EAAE,CAAC;gBACrD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YAEf,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBACtE,OAAO,CAAC,KAAK,CAAC,wCAAwC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;YAED,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACpC,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,8BAA8B;QAC9B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE;YAC/D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,gBAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;YAC9D,CAAC;YAED,OAAO;gBACL,KAAK,EAAE,gBAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC1B,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,gCAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAc,CAAC;YAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;YAE5C,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;gBAC1D,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,IAAI,GAAG,gBAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;YAEpD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACjG,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAElD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,EAAE,CAAC,CAAC;gBACvE,CAAC;gBAED,OAAO,MAAa,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;gBACxE,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB;QACzB,gCAAgC;QAChC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,mCAAwB,EAAE,KAAK,IAAI,EAAE;YACjE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,kBAAO,CAAC,MAAM,UAAU,CAAC,CAAC;YAClE,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,kBAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBAChC,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;iBAClC,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACtE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,IAAc,CAAC;YACjD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAA2B,CAAC;YAExE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,UAAU,CAAC,CAAC;YAErC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAC;YACrD,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAEtC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,QAAQ,CAAC,MAAM,WAAW,CAAC,CAAC;gBAC7E,CAAC;gBAED,OAAO;oBACL,QAAQ;iBACT,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC7E,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC9B,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACvD,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;YACzB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACnE,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExB,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACzE,OAAO,CAAC,KAAK,CAAC,2BAA2B,gBAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;YAC/D,OAAO,CAAC,KAAK,CAAC,2BAA2B,kBAAO,CAAC,MAAM,2BAA2B,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA9ND,gDA8NC"}
@@ -34,4 +34,33 @@ export interface ToolContext {
34
34
  sdk: LaunchpadSDK;
35
35
  debug: boolean;
36
36
  }
37
+ /**
38
+ * MCP Prompt Argument Definition
39
+ */
40
+ export interface MCPPromptArgument {
41
+ name: string;
42
+ description: string;
43
+ required: boolean;
44
+ }
45
+ /**
46
+ * MCP Prompt Definition
47
+ */
48
+ export interface MCPPrompt {
49
+ name: string;
50
+ description: string;
51
+ arguments?: MCPPromptArgument[];
52
+ handler: (args: Record<string, string>) => PromptMessage[];
53
+ }
54
+ /**
55
+ * Prompt Message (from MCP spec)
56
+ */
57
+ export interface PromptMessage {
58
+ role: 'user' | 'assistant';
59
+ content: {
60
+ type: 'text' | 'image' | 'resource';
61
+ text?: string;
62
+ data?: string;
63
+ mimeType?: string;
64
+ };
65
+ }
37
66
  //# sourceMappingURL=mcp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;QACpC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,YAAY,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/types/mcp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,KAAK,CAAC;QACb,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;QACpC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,YAAY,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAChC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,aAAa,EAAE,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC;QACpC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;CACH"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Validation Utilities Tests
3
+ *
4
+ * Tests for input validation functions
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=validation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/validation.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}