@gala-chain/launchpad-mcp-server 1.23.0 → 1.23.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/DRY_REFACTORING_GUIDE.md +272 -0
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/prompts/analysis.d.ts.map +1 -1
- package/dist/prompts/analysis.js +14 -63
- package/dist/prompts/analysis.js.map +1 -1
- package/dist/prompts/balances.d.ts.map +1 -1
- package/dist/prompts/balances.js +46 -70
- package/dist/prompts/balances.js.map +1 -1
- package/dist/prompts/creation-utils.d.ts.map +1 -1
- package/dist/prompts/creation-utils.js +27 -50
- package/dist/prompts/creation-utils.js.map +1 -1
- package/dist/prompts/liquidity-positions.d.ts.map +1 -1
- package/dist/prompts/liquidity-positions.js +9 -44
- package/dist/prompts/liquidity-positions.js.map +1 -1
- package/dist/prompts/pools.d.ts.map +1 -1
- package/dist/prompts/pools.js +125 -228
- package/dist/prompts/pools.js.map +1 -1
- package/dist/prompts/portfolio.d.ts.map +1 -1
- package/dist/prompts/portfolio.js +13 -48
- package/dist/prompts/portfolio.js.map +1 -1
- package/dist/prompts/social.d.ts.map +1 -1
- package/dist/prompts/social.js +21 -31
- package/dist/prompts/social.js.map +1 -1
- package/dist/prompts/trading-calculations.d.ts.map +1 -1
- package/dist/prompts/trading-calculations.js +37 -126
- package/dist/prompts/trading-calculations.js.map +1 -1
- package/dist/prompts/trading.d.ts.map +1 -1
- package/dist/prompts/trading.js +23 -60
- package/dist/prompts/trading.js.map +1 -1
- package/dist/prompts/transfers.d.ts.map +1 -1
- package/dist/prompts/transfers.js +21 -31
- package/dist/prompts/transfers.js.map +1 -1
- package/dist/prompts/utility-tools.d.ts.map +1 -1
- package/dist/prompts/utility-tools.js +83 -202
- package/dist/prompts/utility-tools.js.map +1 -1
- package/dist/prompts/utility.d.ts.map +1 -1
- package/dist/prompts/utility.js +5 -20
- package/dist/prompts/utility.js.map +1 -1
- package/dist/prompts/utils/handlerHelpers.d.ts +35 -0
- package/dist/prompts/utils/handlerHelpers.d.ts.map +1 -0
- package/dist/prompts/utils/handlerHelpers.js +53 -0
- package/dist/prompts/utils/handlerHelpers.js.map +1 -0
- package/dist/prompts/utils/textTemplates.d.ts +42 -0
- package/dist/prompts/utils/textTemplates.d.ts.map +1 -0
- package/dist/prompts/utils/textTemplates.js +51 -0
- package/dist/prompts/utils/textTemplates.js.map +1 -0
- package/dist/utils/validation.d.ts +38 -0
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +52 -0
- package/dist/utils/validation.js.map +1 -1
- package/package.json +2 -2
- package/docs/AI-AGENT-PATTERNS.md +0 -555
- package/docs/CONSTRAINTS-REFERENCE.md +0 -454
- package/docs/PROMPT-TOOL-MAPPING.md +0 -352
- package/docs/examples/default-values-pattern.md +0 -240
- package/docs/examples/tool-factory-pattern.md +0 -217
- package/jest.config.js +0 -94
- package/src/__tests__/integration/fetchTokenDetails.integration.test.ts +0 -258
- package/src/__tests__/integration/poolTools.integration.test.ts +0 -185
- package/src/__tests__/server.test.ts +0 -256
- package/src/constants/mcpToolNames.ts +0 -181
- package/src/index.ts +0 -19
- package/src/prompts/__tests__/promptStructure.test.ts +0 -137
- package/src/prompts/__tests__/registry.test.ts +0 -359
- package/src/prompts/analysis.ts +0 -429
- package/src/prompts/balances.ts +0 -198
- package/src/prompts/create-token.ts +0 -123
- package/src/prompts/creation-utils.ts +0 -118
- package/src/prompts/dex-trading.ts +0 -86
- package/src/prompts/discover-tokens.ts +0 -86
- package/src/prompts/index.ts +0 -175
- package/src/prompts/liquidity-positions.ts +0 -270
- package/src/prompts/pools.ts +0 -571
- package/src/prompts/portfolio.ts +0 -242
- package/src/prompts/social.ts +0 -100
- package/src/prompts/trading-calculations.ts +0 -499
- package/src/prompts/trading.ts +0 -191
- package/src/prompts/transfers.ts +0 -103
- package/src/prompts/utility-tools.ts +0 -349
- package/src/prompts/utility.ts +0 -92
- package/src/prompts/utils/workflowTemplates.ts +0 -511
- package/src/schemas/common-schemas.ts +0 -393
- package/src/scripts/test-all-prompts.ts +0 -184
- package/src/server.ts +0 -367
- package/src/tools/__tests__/dex-tools.test.ts +0 -562
- package/src/tools/__tests__/liquidity-positions.test.ts +0 -673
- package/src/tools/balance/index.ts +0 -174
- package/src/tools/creation/index.ts +0 -182
- package/src/tools/dex/index.ts +0 -226
- package/src/tools/dex/liquidity-positions.ts +0 -547
- package/src/tools/index.ts +0 -94
- package/src/tools/pools/fetchAllPools.ts +0 -47
- package/src/tools/pools/fetchAllPriceHistory.ts +0 -119
- package/src/tools/pools/fetchPoolDetails.ts +0 -27
- package/src/tools/pools/fetchPoolDetailsForCalculation.ts +0 -22
- package/src/tools/pools/fetchPools.ts +0 -47
- package/src/tools/pools/fetchPriceHistory.ts +0 -124
- package/src/tools/pools/fetchTokenDetails.ts +0 -77
- package/src/tools/pools/index.ts +0 -284
- package/src/tools/social/index.ts +0 -64
- package/src/tools/trading/index.ts +0 -605
- package/src/tools/transfers/index.ts +0 -75
- package/src/tools/utils/clearCache.ts +0 -36
- package/src/tools/utils/createWallet.ts +0 -19
- package/src/tools/utils/explainSdkUsage.ts +0 -1446
- package/src/tools/utils/getAddress.ts +0 -12
- package/src/tools/utils/getCacheInfo.ts +0 -14
- package/src/tools/utils/getConfig.ts +0 -21
- package/src/tools/utils/getEnvironment.ts +0 -17
- package/src/tools/utils/getEthereumAddress.ts +0 -12
- package/src/tools/utils/getUrlByTokenName.ts +0 -12
- package/src/tools/utils/getVersion.ts +0 -25
- package/src/tools/utils/getWallet.ts +0 -25
- package/src/tools/utils/hasWallet.ts +0 -15
- package/src/tools/utils/index.ts +0 -37
- package/src/tools/utils/isTokenGraduated.ts +0 -16
- package/src/tools/utils/setWallet.ts +0 -41
- package/src/tools/utils/switchEnvironment.ts +0 -28
- package/src/types/mcp.ts +0 -72
- package/src/utils/__tests__/validation.test.ts +0 -147
- package/src/utils/constraints.ts +0 -155
- package/src/utils/default-values.ts +0 -208
- package/src/utils/error-handler.ts +0 -69
- package/src/utils/error-templates.ts +0 -273
- package/src/utils/response-formatter.ts +0 -51
- package/src/utils/tool-factory.ts +0 -303
- package/src/utils/tool-registry.ts +0 -296
- package/src/utils/validation.ts +0 -371
- package/tests/wallet-management-integration.test.ts +0 -284
- package/tsconfig.json +0 -23
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
# DRY Refactoring Guide for MCP Server Prompts
|
|
2
|
+
|
|
3
|
+
This guide documents the DRY (Don't Repeat Yourself) refactoring improvements made to the MCP server codebase.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The refactoring reduces code duplication across 72 prompt handlers by introducing reusable utilities while maintaining 100% API compatibility.
|
|
8
|
+
|
|
9
|
+
**Potential Impact:** ~526 LOC reduction with zero breaking changes
|
|
10
|
+
|
|
11
|
+
## Utility Files Created
|
|
12
|
+
|
|
13
|
+
### 1. `src/prompts/utils/handlerHelpers.ts`
|
|
14
|
+
|
|
15
|
+
Provides reusable helpers for creating standardized MCP prompt handlers.
|
|
16
|
+
|
|
17
|
+
**Functions:**
|
|
18
|
+
- `createPromptResponse(text: string)` - Creates a standard MCP message response
|
|
19
|
+
- `createValidatedHandler<T>(validator, textGenerator)` - Creates a handler with validation + response generation
|
|
20
|
+
|
|
21
|
+
**Benefit:** Eliminates ~360 lines of boilerplate (5 lines per handler × 72 handlers)
|
|
22
|
+
|
|
23
|
+
### 2. `src/prompts/utils/textTemplates.ts`
|
|
24
|
+
|
|
25
|
+
Provides template generators for common prompt patterns.
|
|
26
|
+
|
|
27
|
+
**Functions:**
|
|
28
|
+
- `createSimpleOperationText(config)` - Generates text for simple operation prompts following standard format
|
|
29
|
+
|
|
30
|
+
**Benefit:** Eliminates ~120 lines of template code (~3 lines per simple prompt × 40 prompts)
|
|
31
|
+
|
|
32
|
+
### 3. Updated `src/utils/validation.ts`
|
|
33
|
+
|
|
34
|
+
Added optional validation convenience wrappers.
|
|
35
|
+
|
|
36
|
+
**New Functions:**
|
|
37
|
+
- `validateOptional<T>(value, validator)` - Generic optional field validator
|
|
38
|
+
- `validateOptionalSlippage(slippage?)` - Optional slippage validation
|
|
39
|
+
- `validateOptionalLimit(limit?, max)` - Optional limit validation
|
|
40
|
+
- `validateOptionalAddress(address?)` - Optional address validation
|
|
41
|
+
|
|
42
|
+
**Benefit:** Eliminates ~46 lines of conditional validation (2 lines × 23 instances)
|
|
43
|
+
|
|
44
|
+
## Refactoring Patterns
|
|
45
|
+
|
|
46
|
+
### Pattern 1: Standardized Handler Response
|
|
47
|
+
|
|
48
|
+
**Before:**
|
|
49
|
+
```typescript
|
|
50
|
+
handler: (args) => {
|
|
51
|
+
validateTokenName(args.tokenName);
|
|
52
|
+
return [
|
|
53
|
+
{
|
|
54
|
+
role: 'user',
|
|
55
|
+
content: {
|
|
56
|
+
type: 'text',
|
|
57
|
+
text: `Fetch token ${args.tokenName}...`,
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
];
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**After:**
|
|
65
|
+
```typescript
|
|
66
|
+
import { createPromptResponse } from './utils/handlerHelpers.js';
|
|
67
|
+
|
|
68
|
+
handler: (args) => {
|
|
69
|
+
validateTokenName(args.tokenName);
|
|
70
|
+
return createPromptResponse(`Fetch token ${args.tokenName}...`);
|
|
71
|
+
}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Where to Apply:**
|
|
75
|
+
- All 72 prompt handlers across all prompt files
|
|
76
|
+
- Any prompt file in `src/prompts/*.ts`
|
|
77
|
+
|
|
78
|
+
### Pattern 2: Optional Validation
|
|
79
|
+
|
|
80
|
+
**Before:**
|
|
81
|
+
```typescript
|
|
82
|
+
if (args.slippage) {
|
|
83
|
+
validateSlippage(args.slippage);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if (args.limit) {
|
|
87
|
+
validatePaginationLimit(args.limit, 100);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
if (args.address) {
|
|
91
|
+
validateAddress(args.address);
|
|
92
|
+
}
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**After:**
|
|
96
|
+
```typescript
|
|
97
|
+
import { validateOptionalSlippage, validateOptionalLimit, validateOptionalAddress } from '../utils/validation.js';
|
|
98
|
+
|
|
99
|
+
validateOptionalSlippage(args.slippage);
|
|
100
|
+
validateOptionalLimit(args.limit, 100);
|
|
101
|
+
validateOptionalAddress(args.address);
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Where to Apply:**
|
|
105
|
+
- `trading.ts` - 6 slippage validations
|
|
106
|
+
- `portfolio.ts` - 3 limit validations
|
|
107
|
+
- `analysis.ts` - 4 limit validations, 3 tokenName optional checks
|
|
108
|
+
- `balances.ts` - 4 address validations
|
|
109
|
+
- Other prompt files with optional parameters
|
|
110
|
+
|
|
111
|
+
### Pattern 3: Simple Operation Text Templates
|
|
112
|
+
|
|
113
|
+
**Before:**
|
|
114
|
+
```typescript
|
|
115
|
+
text: `Fetch GALA balance for wallet.
|
|
116
|
+
|
|
117
|
+
${args.address ? `Address: ${args.address}` : 'Using default wallet'}
|
|
118
|
+
|
|
119
|
+
Use ${MCP_TOOLS.FETCH_GALA_BALANCE} to retrieve the GALA balance.
|
|
120
|
+
|
|
121
|
+
Display the balance in a clear format.`
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**After:**
|
|
125
|
+
```typescript
|
|
126
|
+
import { createSimpleOperationText } from './utils/textTemplates.js';
|
|
127
|
+
|
|
128
|
+
text: createSimpleOperationText({
|
|
129
|
+
operation: 'Fetch GALA balance for wallet.',
|
|
130
|
+
parameters: {
|
|
131
|
+
address: args.address ? `Address: ${args.address}` : 'Using default wallet'
|
|
132
|
+
},
|
|
133
|
+
toolName: MCP_TOOLS.FETCH_GALA_BALANCE,
|
|
134
|
+
actionDescription: 'retrieve the GALA balance',
|
|
135
|
+
displayFormat: 'Display the balance in a clear format.'
|
|
136
|
+
})
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
**Where to Apply:**
|
|
140
|
+
- All 40+ simple operation prompts across prompt files
|
|
141
|
+
- Prompts that follow the operation → parameters → tool usage → display format structure
|
|
142
|
+
|
|
143
|
+
## Implementation Checklist
|
|
144
|
+
|
|
145
|
+
### Phase 1: Handler Boilerplate (Highest Priority)
|
|
146
|
+
- [ ] Update all imports in prompt files to include `createPromptResponse`
|
|
147
|
+
- [ ] Replace all `return [{ role: 'user', content: { type: 'text', text: ... } }]` with `return createPromptResponse(...)`
|
|
148
|
+
- [ ] Files to update:
|
|
149
|
+
- [ ] `pools.ts` (14 handlers)
|
|
150
|
+
- [ ] `trading-calculations.ts` (11 handlers)
|
|
151
|
+
- [ ] `balances.ts` (4 handlers)
|
|
152
|
+
- [ ] `creation-utils.ts` (3 handlers)
|
|
153
|
+
- [ ] `social.ts` (2 handlers)
|
|
154
|
+
- [ ] `transfers.ts` (2 handlers)
|
|
155
|
+
- [ ] `utility-tools.ts` (12 handlers)
|
|
156
|
+
- [ ] All other prompt files (existing, not listed)
|
|
157
|
+
|
|
158
|
+
### Phase 2: Optional Validation (High Priority)
|
|
159
|
+
- [ ] Update imports in prompt files
|
|
160
|
+
- [ ] Replace conditional validation patterns with new optional validators
|
|
161
|
+
- [ ] High-impact files:
|
|
162
|
+
- [ ] `trading.ts` (6 instances)
|
|
163
|
+
- [ ] `portfolio.ts` (7 instances)
|
|
164
|
+
- [ ] `analysis.ts` (7 instances)
|
|
165
|
+
- [ ] `balances.ts` (4 instances)
|
|
166
|
+
|
|
167
|
+
### Phase 3: Text Templates (Medium Priority)
|
|
168
|
+
- [ ] Identify all simple operation prompts
|
|
169
|
+
- [ ] Update imports
|
|
170
|
+
- [ ] Replace template code with `createSimpleOperationText()`
|
|
171
|
+
- [ ] Estimated 40 prompts across multiple files
|
|
172
|
+
|
|
173
|
+
### Phase 4: Verification
|
|
174
|
+
- [ ] Run TypeScript compilation: `npx tsc --noEmit`
|
|
175
|
+
- [ ] Run tests: `npm test`
|
|
176
|
+
- [ ] Run linting: `npm run lint`
|
|
177
|
+
- [ ] Verify no regression in test count (should remain 1401+ passing)
|
|
178
|
+
- [ ] Verify all prompts produce identical output
|
|
179
|
+
|
|
180
|
+
## Code Sample: Complete Refactored Handler
|
|
181
|
+
|
|
182
|
+
### Before:
|
|
183
|
+
```typescript
|
|
184
|
+
export const fetchGalaSpotPricePrompt: MCPPrompt = {
|
|
185
|
+
name: 'galachain-launchpad:fetch-gala-spot-price',
|
|
186
|
+
description: 'Fetch current GALA USD spot price',
|
|
187
|
+
handler: () => {
|
|
188
|
+
return [
|
|
189
|
+
{
|
|
190
|
+
role: 'user',
|
|
191
|
+
content: {
|
|
192
|
+
type: 'text',
|
|
193
|
+
text: `Fetch the current GALA USD spot price.
|
|
194
|
+
|
|
195
|
+
Use ${MCP_TOOLS.FETCH_GALA_SPOT_PRICE} to get the latest GALA price in USD.
|
|
196
|
+
|
|
197
|
+
Display the price in a clear format.`,
|
|
198
|
+
},
|
|
199
|
+
},
|
|
200
|
+
];
|
|
201
|
+
},
|
|
202
|
+
};
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### After:
|
|
206
|
+
```typescript
|
|
207
|
+
import { createPromptResponse } from './utils/handlerHelpers.js';
|
|
208
|
+
import { createSimpleOperationText } from './utils/textTemplates.js';
|
|
209
|
+
|
|
210
|
+
export const fetchGalaSpotPricePrompt: MCPPrompt = {
|
|
211
|
+
name: 'galachain-launchpad:fetch-gala-spot-price',
|
|
212
|
+
description: 'Fetch current GALA USD spot price',
|
|
213
|
+
handler: () =>
|
|
214
|
+
createPromptResponse(
|
|
215
|
+
createSimpleOperationText({
|
|
216
|
+
operation: 'Fetch the current GALA USD spot price.',
|
|
217
|
+
toolName: MCP_TOOLS.FETCH_GALA_SPOT_PRICE,
|
|
218
|
+
actionDescription: 'get the latest GALA price in USD',
|
|
219
|
+
displayFormat: 'Display the price in a clear format.'
|
|
220
|
+
})
|
|
221
|
+
),
|
|
222
|
+
};
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
## Benefits
|
|
226
|
+
|
|
227
|
+
| Aspect | Benefit |
|
|
228
|
+
|--------|---------|
|
|
229
|
+
| **Maintainability** | Single point of change for response structure, validation logic, and text formatting |
|
|
230
|
+
| **Consistency** | All prompts follow identical patterns, easier to understand and predict behavior |
|
|
231
|
+
| **Testability** | Utility functions can be tested independently |
|
|
232
|
+
| **Scalability** | Adding new prompts is faster and less error-prone |
|
|
233
|
+
| **LOC Reduction** | ~526 lines of boilerplate eliminated |
|
|
234
|
+
| **API Compatibility** | Zero breaking changes, 100% backward compatible |
|
|
235
|
+
|
|
236
|
+
## Testing Strategy
|
|
237
|
+
|
|
238
|
+
1. **Unit Tests:** Add tests for utility functions if not present
|
|
239
|
+
2. **Integration Tests:** Verify all 72 prompts still produce identical output
|
|
240
|
+
3. **Regression Tests:** Ensure no prompt behavior changes
|
|
241
|
+
4. **Type Safety:** Full TypeScript compilation with strict checks
|
|
242
|
+
|
|
243
|
+
## Timeline
|
|
244
|
+
|
|
245
|
+
- **Phase 1 (Handler Boilerplate):** ~1 hour (72 handlers, mechanical change)
|
|
246
|
+
- **Phase 2 (Optional Validation):** ~30 minutes (23 instances)
|
|
247
|
+
- **Phase 3 (Text Templates):** ~45 minutes (40 prompts)
|
|
248
|
+
- **Phase 4 (Testing/Verification):** ~15 minutes
|
|
249
|
+
- **Total:** ~2.5 hours for complete refactoring
|
|
250
|
+
|
|
251
|
+
## Risk Assessment
|
|
252
|
+
|
|
253
|
+
| Phase | Risk | Mitigation |
|
|
254
|
+
|-------|------|-----------|
|
|
255
|
+
| 1 | **LOW** | Pure mechanical change, output unchanged | Full test coverage |
|
|
256
|
+
| 2 | **LOW** | Logic preservation via wrappers | Verify validation behavior |
|
|
257
|
+
| 3 | **LOW** | Template-based generation | Compare output strings |
|
|
258
|
+
| Overall | **LOW** | No API changes, well-tested utilities | Comprehensive testing |
|
|
259
|
+
|
|
260
|
+
## Notes
|
|
261
|
+
|
|
262
|
+
- All changes are internal implementation details
|
|
263
|
+
- No MCP tool signatures change
|
|
264
|
+
- All changes follow DRY principle without adding unnecessary complexity
|
|
265
|
+
- Utilities are properly documented with JSDoc comments
|
|
266
|
+
- Both new utility files include comprehensive examples
|
|
267
|
+
|
|
268
|
+
## See Also
|
|
269
|
+
|
|
270
|
+
- `src/prompts/utils/handlerHelpers.ts` - Handler utilities
|
|
271
|
+
- `src/prompts/utils/textTemplates.ts` - Template utilities
|
|
272
|
+
- `src/utils/validation.ts` - Validation utilities (updated)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../src/prompts/analysis.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../src/prompts/analysis.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAKjD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SA0DjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,SA8CpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAsC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAyD/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAkEhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SA+DjC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,EAOtC,CAAC"}
|
package/dist/prompts/analysis.js
CHANGED
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.analysisPrompts = exports.fetchAllPoolsPrompt = exports.tradeHistoryPrompt = exports.poolDetailsPrompt = exports.spotPricesPrompt = exports.graduationStatusPrompt = exports.compareTokensPrompt = void 0;
|
|
9
9
|
const mcpToolNames_js_1 = require("../constants/mcpToolNames.js");
|
|
10
10
|
const validation_js_1 = require("../utils/validation.js");
|
|
11
|
+
const handlerHelpers_js_1 = require("./utils/handlerHelpers.js");
|
|
11
12
|
/**
|
|
12
13
|
* Compare Tokens - Side-by-side comparison
|
|
13
14
|
*/
|
|
@@ -30,12 +31,7 @@ exports.compareTokensPrompt = {
|
|
|
30
31
|
// Validate inputs
|
|
31
32
|
(0, validation_js_1.validateTokenName)(args.token1, 'token1');
|
|
32
33
|
(0, validation_js_1.validateTokenName)(args.token2, 'token2');
|
|
33
|
-
return
|
|
34
|
-
{
|
|
35
|
-
role: 'user',
|
|
36
|
-
content: {
|
|
37
|
-
type: 'text',
|
|
38
|
-
text: `Compare two Launchpad tokens side-by-side:
|
|
34
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Compare two Launchpad tokens side-by-side:
|
|
39
35
|
|
|
40
36
|
Token 1: ${args.token1}
|
|
41
37
|
Token 2: ${args.token2}
|
|
@@ -71,10 +67,7 @@ Provide analysis:
|
|
|
71
67
|
- Which token is closer to graduation?
|
|
72
68
|
- Which has better liquidity?
|
|
73
69
|
- Which might be a better investment and why?
|
|
74
|
-
- Any notable badges or achievements
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
];
|
|
70
|
+
- Any notable badges or achievements?`);
|
|
78
71
|
},
|
|
79
72
|
};
|
|
80
73
|
/**
|
|
@@ -93,12 +86,7 @@ exports.graduationStatusPrompt = {
|
|
|
93
86
|
handler: (args) => {
|
|
94
87
|
// Validate inputs
|
|
95
88
|
const tokenArray = (0, validation_js_1.validateTokenList)(args.tokens);
|
|
96
|
-
return
|
|
97
|
-
{
|
|
98
|
-
role: 'user',
|
|
99
|
-
content: {
|
|
100
|
-
type: 'text',
|
|
101
|
-
text: `Check graduation status for multiple tokens:
|
|
89
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Check graduation status for multiple tokens:
|
|
102
90
|
|
|
103
91
|
Tokens: ${args.tokens}
|
|
104
92
|
|
|
@@ -128,10 +116,7 @@ Summary:
|
|
|
128
116
|
|
|
129
117
|
Provide recommendations:
|
|
130
118
|
- Which tokens are good graduation opportunities?
|
|
131
|
-
- Which tokens might be undervalued
|
|
132
|
-
},
|
|
133
|
-
},
|
|
134
|
-
];
|
|
119
|
+
- Which tokens might be undervalued?`);
|
|
135
120
|
},
|
|
136
121
|
};
|
|
137
122
|
/**
|
|
@@ -150,12 +135,7 @@ exports.spotPricesPrompt = {
|
|
|
150
135
|
handler: (args) => {
|
|
151
136
|
// Validate inputs
|
|
152
137
|
(0, validation_js_1.validateTokenList)(args.tokens);
|
|
153
|
-
return
|
|
154
|
-
{
|
|
155
|
-
role: 'user',
|
|
156
|
-
content: {
|
|
157
|
-
type: 'text',
|
|
158
|
-
text: `Get spot prices for multiple Launchpad tokens:
|
|
138
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Get spot prices for multiple Launchpad tokens:
|
|
159
139
|
|
|
160
140
|
Tokens: ${args.tokens}
|
|
161
141
|
|
|
@@ -177,10 +157,7 @@ Present results:
|
|
|
177
157
|
|
|
178
158
|
Performance note: Using LOCAL calculations - instant results with <0.01% difference from external!
|
|
179
159
|
|
|
180
|
-
Sort by USD price (highest to lowest)
|
|
181
|
-
},
|
|
182
|
-
},
|
|
183
|
-
];
|
|
160
|
+
Sort by USD price (highest to lowest).`);
|
|
184
161
|
},
|
|
185
162
|
};
|
|
186
163
|
/**
|
|
@@ -199,12 +176,7 @@ exports.poolDetailsPrompt = {
|
|
|
199
176
|
handler: (args) => {
|
|
200
177
|
// Validate inputs
|
|
201
178
|
(0, validation_js_1.validateTokenName)(args.tokenName);
|
|
202
|
-
return
|
|
203
|
-
{
|
|
204
|
-
role: 'user',
|
|
205
|
-
content: {
|
|
206
|
-
type: 'text',
|
|
207
|
-
text: `Get comprehensive pool information for "${args.tokenName}":
|
|
179
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Get comprehensive pool information for "${args.tokenName}":
|
|
208
180
|
|
|
209
181
|
1. Full pool details: ${mcpToolNames_js_1.MCP_TOOLS.FETCH_POOL_DETAILS}
|
|
210
182
|
2. Token distribution: ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKEN_DISTRIBUTION}
|
|
@@ -245,10 +217,7 @@ Display organized sections:
|
|
|
245
217
|
**Reverse Bonding Curve:**
|
|
246
218
|
- Max fee factor
|
|
247
219
|
- Min fee factor
|
|
248
|
-
- Current fee structure
|
|
249
|
-
},
|
|
250
|
-
},
|
|
251
|
-
];
|
|
220
|
+
- Current fee structure`);
|
|
252
221
|
},
|
|
253
222
|
};
|
|
254
223
|
/**
|
|
@@ -284,19 +253,12 @@ exports.tradeHistoryPrompt = {
|
|
|
284
253
|
if (args.tokenName) {
|
|
285
254
|
(0, validation_js_1.validateTokenName)(args.tokenName);
|
|
286
255
|
}
|
|
287
|
-
|
|
288
|
-
(0, validation_js_1.validatePaginationLimit)(args.limit, 20);
|
|
289
|
-
}
|
|
256
|
+
(0, validation_js_1.validateOptionalLimit)(args.limit, 20);
|
|
290
257
|
if (args.tradeType && args.tradeType !== 'BUY' && args.tradeType !== 'SELL') {
|
|
291
258
|
throw new Error('tradeType must be either BUY or SELL');
|
|
292
259
|
}
|
|
293
260
|
const limit = args.limit || '20';
|
|
294
|
-
return
|
|
295
|
-
{
|
|
296
|
-
role: 'user',
|
|
297
|
-
content: {
|
|
298
|
-
type: 'text',
|
|
299
|
-
text: `Show recent trade history:
|
|
261
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Show recent trade history:
|
|
300
262
|
|
|
301
263
|
${args.tokenName ? `Token: ${args.tokenName}` : 'All tokens'}
|
|
302
264
|
${args.userAddress ? `User: ${args.userAddress}` : 'All users'}
|
|
@@ -323,10 +285,7 @@ Calculate summary:
|
|
|
323
285
|
- Total trades shown
|
|
324
286
|
- Total volume (GALA)
|
|
325
287
|
- Average trade size
|
|
326
|
-
- Buy vs Sell ratio (if not filtered)
|
|
327
|
-
},
|
|
328
|
-
},
|
|
329
|
-
];
|
|
288
|
+
- Buy vs Sell ratio (if not filtered)`);
|
|
330
289
|
},
|
|
331
290
|
};
|
|
332
291
|
/**
|
|
@@ -356,12 +315,7 @@ exports.fetchAllPoolsPrompt = {
|
|
|
356
315
|
? `- search: "${args.search}" (fuzzy match filter)`
|
|
357
316
|
: '- No search filter';
|
|
358
317
|
const typeFilter = args.type ? args.type : 'recent';
|
|
359
|
-
return
|
|
360
|
-
{
|
|
361
|
-
role: 'user',
|
|
362
|
-
content: {
|
|
363
|
-
type: 'text',
|
|
364
|
-
text: `Fetch ALL available Launchpad pools with automatic pagination:
|
|
318
|
+
return (0, handlerHelpers_js_1.createPromptResponse)(`Fetch ALL available Launchpad pools with automatic pagination:
|
|
365
319
|
|
|
366
320
|
Use ${mcpToolNames_js_1.MCP_TOOLS.FETCH_ALL_POOLS} with:
|
|
367
321
|
${searchFilter}
|
|
@@ -396,10 +350,7 @@ Performance note:
|
|
|
396
350
|
- Automatic cache warming for token metadata
|
|
397
351
|
- Much faster than manual pagination!
|
|
398
352
|
|
|
399
|
-
Sort pools by creation date (newest first) or progress (closest to graduation first)
|
|
400
|
-
},
|
|
401
|
-
},
|
|
402
|
-
];
|
|
353
|
+
Sort pools by creation date (newest first) or progress (closest to graduation first).`);
|
|
403
354
|
},
|
|
404
355
|
};
|
|
405
356
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/prompts/analysis.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,kEAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/prompts/analysis.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances.d.ts","sourceRoot":"","sources":["../../src/prompts/balances.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"balances.d.ts","sourceRoot":"","sources":["../../src/prompts/balances.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAMjD;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAyBpC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,SA+BrC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAiDtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAuCjC,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,SAAS,EAKrC,CAAC"}
|
package/dist/prompts/balances.js
CHANGED
|
@@ -8,6 +8,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.balancePrompts = exports.updateProfilePrompt = exports.fetchTokensCreatedPrompt = exports.fetchTokenBalancePrompt = exports.fetchGalaBalancePrompt = void 0;
|
|
9
9
|
const mcpToolNames_js_1 = require("../constants/mcpToolNames.js");
|
|
10
10
|
const validation_js_1 = require("../utils/validation.js");
|
|
11
|
+
const handlerHelpers_js_1 = require("./utils/handlerHelpers.js");
|
|
12
|
+
const textTemplates_js_1 = require("./utils/textTemplates.js");
|
|
11
13
|
/**
|
|
12
14
|
* Fetch GALA Balance - GALA balance query
|
|
13
15
|
*/
|
|
@@ -22,24 +24,16 @@ exports.fetchGalaBalancePrompt = {
|
|
|
22
24
|
},
|
|
23
25
|
],
|
|
24
26
|
handler: (args) => {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
${args.address ? `Address: ${args.address}` : 'Using default wallet'}
|
|
36
|
-
|
|
37
|
-
Use ${mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_BALANCE} to retrieve the GALA balance.
|
|
38
|
-
|
|
39
|
-
Display the balance in a clear format.`,
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
];
|
|
27
|
+
(0, validation_js_1.validateOptionalAddress)(args.address);
|
|
28
|
+
return (0, handlerHelpers_js_1.createPromptResponse)((0, textTemplates_js_1.createSimpleOperationText)({
|
|
29
|
+
operation: 'Get GALA balance for wallet.',
|
|
30
|
+
parameters: args.address
|
|
31
|
+
? { address: `Address: ${args.address}` }
|
|
32
|
+
: { wallet: 'Using default wallet' },
|
|
33
|
+
toolName: mcpToolNames_js_1.MCP_TOOLS.FETCH_GALA_BALANCE,
|
|
34
|
+
actionDescription: 'retrieve the GALA balance',
|
|
35
|
+
displayFormat: 'Display the balance in a clear format.',
|
|
36
|
+
}));
|
|
43
37
|
},
|
|
44
38
|
};
|
|
45
39
|
/**
|
|
@@ -62,22 +56,16 @@ exports.fetchTokenBalancePrompt = {
|
|
|
62
56
|
],
|
|
63
57
|
handler: (args) => {
|
|
64
58
|
(0, validation_js_1.validateAddress)(args.address);
|
|
65
|
-
return
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
text: `Get balance for specific token.
|
|
71
|
-
|
|
72
|
-
Token: ${args.tokenName}
|
|
73
|
-
Address: ${args.address}
|
|
74
|
-
|
|
75
|
-
Use ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKEN_BALANCE} to retrieve the token balance.
|
|
76
|
-
|
|
77
|
-
Display the balance with token details.`,
|
|
78
|
-
},
|
|
59
|
+
return (0, handlerHelpers_js_1.createPromptResponse)((0, textTemplates_js_1.createSimpleOperationText)({
|
|
60
|
+
operation: 'Get balance for specific token.',
|
|
61
|
+
parameters: {
|
|
62
|
+
token: `Token: ${args.tokenName}`,
|
|
63
|
+
address: `Address: ${args.address}`,
|
|
79
64
|
},
|
|
80
|
-
|
|
65
|
+
toolName: mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKEN_BALANCE,
|
|
66
|
+
actionDescription: 'retrieve the token balance',
|
|
67
|
+
displayFormat: 'Display the balance with token details.',
|
|
68
|
+
}));
|
|
81
69
|
},
|
|
82
70
|
};
|
|
83
71
|
/**
|
|
@@ -115,25 +103,19 @@ exports.fetchTokensCreatedPrompt = {
|
|
|
115
103
|
],
|
|
116
104
|
handler: (args) => {
|
|
117
105
|
(0, validation_js_1.validateAddress)(args.address);
|
|
118
|
-
return
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
Page: ${args.page || 1}
|
|
127
|
-
Limit: ${args.limit || 20}
|
|
128
|
-
${args.tokenName ? `Token Name Filter: ${args.tokenName}` : ''}
|
|
129
|
-
${args.search ? `Search Filter: ${args.search}` : ''}
|
|
130
|
-
|
|
131
|
-
Use ${mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKENS_CREATED} to retrieve created tokens.
|
|
132
|
-
|
|
133
|
-
Display the list of tokens created by this wallet.`,
|
|
134
|
-
},
|
|
106
|
+
return (0, handlerHelpers_js_1.createPromptResponse)((0, textTemplates_js_1.createSimpleOperationText)({
|
|
107
|
+
operation: 'Get tokens created by wallet.',
|
|
108
|
+
parameters: {
|
|
109
|
+
address: `Address: ${args.address}`,
|
|
110
|
+
page: `Page: ${args.page || 1}`,
|
|
111
|
+
limit: `Limit: ${args.limit || 20}`,
|
|
112
|
+
...(args.tokenName && { tokenFilter: `Token Name Filter: ${args.tokenName}` }),
|
|
113
|
+
...(args.search && { searchFilter: `Search Filter: ${args.search}` }),
|
|
135
114
|
},
|
|
136
|
-
|
|
115
|
+
toolName: mcpToolNames_js_1.MCP_TOOLS.FETCH_TOKENS_CREATED,
|
|
116
|
+
actionDescription: 'retrieve created tokens',
|
|
117
|
+
displayFormat: 'Display the list of tokens created by this wallet.',
|
|
118
|
+
}));
|
|
137
119
|
},
|
|
138
120
|
};
|
|
139
121
|
/**
|
|
@@ -160,26 +142,20 @@ exports.updateProfilePrompt = {
|
|
|
160
142
|
},
|
|
161
143
|
],
|
|
162
144
|
handler: (args) => {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
Full Name: ${args.fullName}
|
|
174
|
-
Profile Image: ${args.profileImage}
|
|
175
|
-
${args.address ? `Address: ${args.address}` : 'Using default wallet'}
|
|
176
|
-
|
|
177
|
-
Use ${mcpToolNames_js_1.MCP_TOOLS.UPDATE_PROFILE} to update the profile.
|
|
178
|
-
|
|
179
|
-
Display confirmation of successful update.`,
|
|
180
|
-
},
|
|
145
|
+
(0, validation_js_1.validateOptionalAddress)(args.address);
|
|
146
|
+
return (0, handlerHelpers_js_1.createPromptResponse)((0, textTemplates_js_1.createSimpleOperationText)({
|
|
147
|
+
operation: 'Update user profile.',
|
|
148
|
+
parameters: {
|
|
149
|
+
fullName: `Full Name: ${args.fullName}`,
|
|
150
|
+
profileImage: `Profile Image: ${args.profileImage}`,
|
|
151
|
+
...(args.address
|
|
152
|
+
? { address: `Address: ${args.address}` }
|
|
153
|
+
: { wallet: 'Using default wallet' }),
|
|
181
154
|
},
|
|
182
|
-
|
|
155
|
+
toolName: mcpToolNames_js_1.MCP_TOOLS.UPDATE_PROFILE,
|
|
156
|
+
actionDescription: 'update the profile',
|
|
157
|
+
displayFormat: 'Display confirmation of successful update.',
|
|
158
|
+
}));
|
|
183
159
|
},
|
|
184
160
|
};
|
|
185
161
|
exports.balancePrompts = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"balances.js","sourceRoot":"","sources":["../../src/prompts/balances.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,kEAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"balances.js","sourceRoot":"","sources":["../../src/prompts/balances.ts"],"names":[],"mappings":"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"}
|