@gala-chain/launchpad-mcp-server 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/.env.example +13 -0
  2. package/.eslintrc.json +20 -0
  3. package/README.md +178 -0
  4. package/dist/index.d.ts +6 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +17 -0
  7. package/dist/index.js.map +1 -0
  8. package/dist/server.d.ts +32 -0
  9. package/dist/server.d.ts.map +1 -0
  10. package/dist/server.js +151 -0
  11. package/dist/server.js.map +1 -0
  12. package/dist/tools/balance/index.d.ts +12 -0
  13. package/dist/tools/balance/index.d.ts.map +1 -0
  14. package/dist/tools/balance/index.js +182 -0
  15. package/dist/tools/balance/index.js.map +1 -0
  16. package/dist/tools/creation/index.d.ts +9 -0
  17. package/dist/tools/creation/index.d.ts.map +1 -0
  18. package/dist/tools/creation/index.js +154 -0
  19. package/dist/tools/creation/index.js.map +1 -0
  20. package/dist/tools/index.d.ts +10 -0
  21. package/dist/tools/index.d.ts.map +1 -0
  22. package/dist/tools/index.js +27 -0
  23. package/dist/tools/index.js.map +1 -0
  24. package/dist/tools/pools/fetchPoolDetails.d.ts +6 -0
  25. package/dist/tools/pools/fetchPoolDetails.d.ts.map +1 -0
  26. package/dist/tools/pools/fetchPoolDetails.js +25 -0
  27. package/dist/tools/pools/fetchPoolDetails.js.map +1 -0
  28. package/dist/tools/pools/fetchPools.d.ts +6 -0
  29. package/dist/tools/pools/fetchPools.d.ts.map +1 -0
  30. package/dist/tools/pools/fetchPools.js +44 -0
  31. package/dist/tools/pools/fetchPools.js.map +1 -0
  32. package/dist/tools/pools/index.d.ts +14 -0
  33. package/dist/tools/pools/index.d.ts.map +1 -0
  34. package/dist/tools/pools/index.js +215 -0
  35. package/dist/tools/pools/index.js.map +1 -0
  36. package/dist/tools/social/index.d.ts +8 -0
  37. package/dist/tools/social/index.d.ts.map +1 -0
  38. package/dist/tools/social/index.js +70 -0
  39. package/dist/tools/social/index.js.map +1 -0
  40. package/dist/tools/trading/index.d.ts +12 -0
  41. package/dist/tools/trading/index.d.ts.map +1 -0
  42. package/dist/tools/trading/index.js +270 -0
  43. package/dist/tools/trading/index.js.map +1 -0
  44. package/dist/tools/transfers/index.d.ts +8 -0
  45. package/dist/tools/transfers/index.d.ts.map +1 -0
  46. package/dist/tools/transfers/index.js +81 -0
  47. package/dist/tools/transfers/index.js.map +1 -0
  48. package/dist/types/mcp.d.ts +37 -0
  49. package/dist/types/mcp.d.ts.map +1 -0
  50. package/dist/types/mcp.js +5 -0
  51. package/dist/types/mcp.js.map +1 -0
  52. package/dist/utils/error-handler.d.ts +15 -0
  53. package/dist/utils/error-handler.d.ts.map +1 -0
  54. package/dist/utils/error-handler.js +50 -0
  55. package/dist/utils/error-handler.js.map +1 -0
  56. package/dist/utils/response-formatter.d.ts +19 -0
  57. package/dist/utils/response-formatter.d.ts.map +1 -0
  58. package/dist/utils/response-formatter.js +46 -0
  59. package/dist/utils/response-formatter.js.map +1 -0
  60. package/package.json +73 -0
  61. package/test-mcp.js +89 -0
package/.env.example ADDED
@@ -0,0 +1,13 @@
1
+ # Gala Launchpad MCP Server Configuration
2
+
3
+ # Required: Your Ethereum wallet private key (with 0x prefix)
4
+ PRIVATE_KEY=0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef
5
+
6
+ # Optional: Environment (development or production)
7
+ ENVIRONMENT=development
8
+
9
+ # Optional: Enable debug logging (true or false)
10
+ DEBUG=false
11
+
12
+ # Optional: Request timeout in milliseconds
13
+ TIMEOUT=30000
package/.eslintrc.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "extends": [
3
+ "eslint:recommended",
4
+ "plugin:@typescript-eslint/recommended"
5
+ ],
6
+ "parser": "@typescript-eslint/parser",
7
+ "parserOptions": {
8
+ "ecmaVersion": 2022,
9
+ "sourceType": "module"
10
+ },
11
+ "plugins": ["@typescript-eslint"],
12
+ "env": {
13
+ "node": true,
14
+ "es2022": true
15
+ },
16
+ "rules": {
17
+ "@typescript-eslint/no-explicit-any": "off",
18
+ "@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_" }]
19
+ }
20
+ }
package/README.md ADDED
@@ -0,0 +1,178 @@
1
+ # @gala-chain/launchpad-mcp-server
2
+
3
+ MCP (Model Context Protocol) server for Gala Launchpad SDK - Enables AI agents to interact with Gala Launchpad.
4
+
5
+ ## 🚀 Features
6
+
7
+ - **27 AI-accessible tools** for complete Gala Launchpad integration
8
+ - **Type-safe** - Full TypeScript support with validated inputs
9
+ - **Production-ready** - Built on [@gala-chain/launchpad-sdk v3.0.2](https://www.npmjs.com/package/@gala-chain/launchpad-sdk)
10
+ - **Easy setup** - Works with Claude Desktop and other MCP clients
11
+ - **Comprehensive** - Pool management, trading, balances, token creation, comments, transfers
12
+
13
+ ## 📦 Installation
14
+
15
+ ```bash
16
+ npm install -g @gala-chain/launchpad-mcp-server
17
+ ```
18
+
19
+ ## 🏁 Quick Start
20
+
21
+ ### Claude Desktop Configuration
22
+
23
+ Add to your `claude_desktop_config.json`:
24
+
25
+ ```json
26
+ {
27
+ "mcpServers": {
28
+ "gala-launchpad": {
29
+ "command": "npx",
30
+ "args": ["-y", "@gala-chain/launchpad-mcp-server"],
31
+ "env": {
32
+ "PRIVATE_KEY": "0x1234567890abcdef...",
33
+ "ENVIRONMENT": "development"
34
+ }
35
+ }
36
+ }
37
+ }
38
+ ```
39
+
40
+ **Environment Variables:**
41
+ - `PRIVATE_KEY` (required) - Your Ethereum wallet private key
42
+ - `ENVIRONMENT` (optional) - `development` or `production` (default: development)
43
+ - `DEBUG` (optional) - `true` to enable debug logging
44
+ - `TIMEOUT` (optional) - Request timeout in milliseconds (default: 30000)
45
+
46
+ ### Using with Claude Desktop
47
+
48
+ 1. **Install**: `npm install -g @gala-chain/launchpad-mcp-server`
49
+ 2. **Configure**: Add server to `claude_desktop_config.json` (see above)
50
+ 3. **Restart Claude Desktop**
51
+ 4. **Use tools**: Ask Claude to interact with Gala Launchpad!
52
+
53
+ ## 🛠️ Available Tools (27 Total)
54
+
55
+ ### Pool Management (8 tools)
56
+ - `gala_launchpad_fetch_pools` - Fetch token pools with filtering
57
+ - `gala_launchpad_fetch_pool_details` - Get detailed pool state
58
+ - `gala_launchpad_fetch_token_distribution` - Get holder distribution
59
+ - `gala_launchpad_fetch_token_badges` - Get achievement badges
60
+ - `gala_launchpad_fetch_volume_data` - Get OHLCV charting data
61
+ - `gala_launchpad_check_token_name` - Check name availability
62
+ - `gala_launchpad_check_token_symbol` - Check symbol availability
63
+ - `gala_launchpad_resolve_vault_address` - Get GalaChain vault address
64
+
65
+ ### Trading Operations (6 tools)
66
+ - `gala_launchpad_calculate_buy_amount` - Calculate buy amounts
67
+ - `gala_launchpad_calculate_sell_amount` - Calculate sell amounts
68
+ - `gala_launchpad_buy_tokens` - Execute token purchase
69
+ - `gala_launchpad_sell_tokens` - Execute token sale
70
+ - `gala_launchpad_fetch_trades` - Get trade history
71
+ - `gala_launchpad_calculate_initial_buy` - Calculate initial buy
72
+
73
+ ### Balance & Portfolio (6 tools)
74
+ - `gala_launchpad_fetch_gala_balance` - Get GALA balance
75
+ - `gala_launchpad_fetch_token_balance` - Get token balance
76
+ - `gala_launchpad_fetch_tokens_held` - Get portfolio holdings
77
+ - `gala_launchpad_fetch_tokens_created` - Get created tokens
78
+ - `gala_launchpad_fetch_profile` - Get user profile
79
+ - `gala_launchpad_update_profile` - Update profile
80
+
81
+ ### Token Creation (3 tools)
82
+ - `gala_launchpad_launch_token` - Create new token pool
83
+ - `gala_launchpad_upload_token_image` - Upload token image from filesystem
84
+ - `gala_launchpad_upload_profile_image` - Upload profile image from filesystem
85
+
86
+ ### Comments & Social (2 tools)
87
+ - `gala_launchpad_post_comment` - Post comment on token
88
+ - `gala_launchpad_fetch_comments` - Get token comments
89
+
90
+ ### Token Transfers (2 tools)
91
+ - `gala_launchpad_transfer_gala` - Transfer GALA tokens
92
+ - `gala_launchpad_transfer_token` - Transfer launchpad tokens
93
+
94
+ ## 💡 Example Usage
95
+
96
+ Ask Claude (or your AI assistant):
97
+
98
+ > "Fetch the 10 most recent token pools on Gala Launchpad"
99
+
100
+ > "What's my GALA balance?"
101
+
102
+ > "Calculate how many tokens I'd get if I buy with 100 GALA on dragnrkti"
103
+
104
+ > "Buy 50 GALA worth of rocketri tokens with 5% slippage"
105
+
106
+ > "Show me all tokens I'm holding"
107
+
108
+ ## 🔧 Development
109
+
110
+ ### Local Development
111
+
112
+ ```bash
113
+ # Clone repository
114
+ git clone https://gitlab.com/gala-games/defi/launchpad/sdk.git
115
+ cd launchpad-sdk/packages/mcp-server
116
+
117
+ # Install dependencies
118
+ npm install
119
+
120
+ # Build
121
+ npm run build
122
+
123
+ # Run in development mode
124
+ npm run dev
125
+ ```
126
+
127
+ ### Testing
128
+
129
+ ```bash
130
+ npm test
131
+ ```
132
+
133
+ ## 📚 Documentation
134
+
135
+ - [MCP Tool Specification](../../packages/sdk/docs/MCP-TOOL-SPECIFICATION.md) - Complete tool reference
136
+ - [AI Agent Guide](../../packages/sdk/docs/AI-AGENT-GUIDE.md) - Integration patterns
137
+ - [SDK Documentation](../sdk/README.md) - Underlying SDK reference
138
+
139
+ ## 🔐 Security
140
+
141
+ **Important Security Notes:**
142
+
143
+ 1. **Private Keys** - Never commit private keys to version control
144
+ 2. **Environment Variables** - Store credentials in `claude_desktop_config.json` securely
145
+ 3. **Wallet Safety** - Use separate wallets for development and production
146
+ 4. **Amount Limits** - Consider setting up trading limits for automated agents
147
+
148
+ ## 🐛 Troubleshooting
149
+
150
+ ### "SDK not initialized"
151
+ - Ensure `PRIVATE_KEY` is set in environment variables
152
+ - Check that private key format is valid (0x + 64 hex characters)
153
+
154
+ ### "Tool not found"
155
+ - Restart Claude Desktop after configuration changes
156
+ - Verify server is listed in Claude Desktop settings
157
+
158
+ ### "Connection failed"
159
+ - Check DEBUG=true logs for detailed error messages
160
+ - Verify network connectivity to Gala Launchpad backends
161
+
162
+ ## 📄 License
163
+
164
+ MIT License - see [LICENSE](../../LICENSE) file for details.
165
+
166
+ ## 🤝 Contributing
167
+
168
+ Contributions welcome! Please read [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.
169
+
170
+ ## 📞 Support
171
+
172
+ - **Issues**: [GitLab Issues](https://gitlab.com/gala-games/defi/launchpad/sdk/-/issues)
173
+ - **Documentation**: [Full Documentation](../../packages/sdk/docs/)
174
+ - **SDK Package**: [@gala-chain/launchpad-sdk](https://www.npmjs.com/package/@gala-chain/launchpad-sdk)
175
+
176
+ ---
177
+
178
+ **Built with ❤️ for the Gala ecosystem**
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Gala Launchpad MCP Server Entry Point
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG"}
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Gala Launchpad MCP Server Entry Point
4
+ */
5
+ import { LaunchpadMCPServer } from './server.js';
6
+ async function main() {
7
+ const server = new LaunchpadMCPServer();
8
+ try {
9
+ await server.start();
10
+ }
11
+ catch (error) {
12
+ console.error('[MCP Server] Fatal error:', error);
13
+ process.exit(1);
14
+ }
15
+ }
16
+ main();
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAExC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Gala Launchpad MCP Server
3
+ *
4
+ * Provides MCP tools for AI agents to interact with Gala Launchpad
5
+ */
6
+ export declare class LaunchpadMCPServer {
7
+ private server;
8
+ private sdk;
9
+ private debug;
10
+ constructor();
11
+ /**
12
+ * Initialize SDK with AgentConfig
13
+ */
14
+ initialize(): Promise<void>;
15
+ /**
16
+ * Setup tool handlers
17
+ */
18
+ private setupToolHandlers;
19
+ /**
20
+ * Setup error handlers
21
+ */
22
+ private setupErrorHandlers;
23
+ /**
24
+ * Start the MCP server
25
+ */
26
+ start(): Promise<void>;
27
+ /**
28
+ * Cleanup resources
29
+ */
30
+ cleanup(): void;
31
+ }
32
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +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"}
package/dist/server.js ADDED
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Gala Launchpad MCP Server
3
+ *
4
+ * Provides MCP tools for AI agents to interact with Gala Launchpad
5
+ */
6
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
7
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
8
+ import { ListToolsRequestSchema, CallToolRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
9
+ import { AgentConfig } from '@gala-chain/launchpad-sdk';
10
+ import { tools } from './tools/index.js';
11
+ export class LaunchpadMCPServer {
12
+ server;
13
+ sdk = null;
14
+ debug;
15
+ constructor() {
16
+ this.debug = process.env.DEBUG === 'true';
17
+ this.server = new Server({
18
+ name: '@gala-chain/launchpad-mcp-server',
19
+ version: '1.0.0',
20
+ }, {
21
+ capabilities: {
22
+ tools: {},
23
+ },
24
+ });
25
+ this.setupToolHandlers();
26
+ this.setupErrorHandlers();
27
+ }
28
+ /**
29
+ * Initialize SDK with AgentConfig
30
+ */
31
+ async initialize() {
32
+ try {
33
+ if (this.debug) {
34
+ console.error('[MCP Server] Initializing SDK...');
35
+ }
36
+ const { sdk, validation } = await AgentConfig.quickSetup({
37
+ environment: process.env.ENVIRONMENT || 'development',
38
+ privateKey: process.env.PRIVATE_KEY,
39
+ timeout: parseInt(process.env.TIMEOUT || '30000', 10),
40
+ debug: this.debug,
41
+ autoValidate: true,
42
+ });
43
+ this.sdk = sdk;
44
+ if (this.debug) {
45
+ console.error('[MCP Server] SDK initialized successfully');
46
+ if (validation) {
47
+ console.error(`[MCP Server] Validation - Ready: ${validation.ready}`);
48
+ console.error(`[MCP Server] Validation - Can Trade: ${validation.capabilities.canTrade}`);
49
+ }
50
+ }
51
+ if (validation && !validation.ready) {
52
+ console.error('[MCP Server] Warning: SDK not ready', validation.issues);
53
+ }
54
+ }
55
+ catch (error) {
56
+ console.error('[MCP Server] Failed to initialize SDK:', error);
57
+ throw error;
58
+ }
59
+ }
60
+ /**
61
+ * Setup tool handlers
62
+ */
63
+ setupToolHandlers() {
64
+ // Register tools/list handler
65
+ this.server.setRequestHandler(ListToolsRequestSchema, async () => {
66
+ if (this.debug) {
67
+ console.error(`[MCP Server] Listing ${tools.length} tools`);
68
+ }
69
+ return {
70
+ tools: tools.map((tool) => ({
71
+ name: tool.name,
72
+ description: tool.description,
73
+ inputSchema: tool.inputSchema,
74
+ })),
75
+ };
76
+ });
77
+ // Register tools/call handler
78
+ this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
79
+ const toolName = request.params.name;
80
+ const args = request.params.arguments || {};
81
+ if (this.debug) {
82
+ console.error(`[MCP Server] Executing tool: ${toolName}`);
83
+ console.error(`[MCP Server] Arguments:`, JSON.stringify(args, null, 2));
84
+ }
85
+ const tool = tools.find((t) => t.name === toolName);
86
+ if (!tool) {
87
+ throw new Error(`Tool not found: ${toolName}`);
88
+ }
89
+ if (!this.sdk) {
90
+ throw new Error('SDK not initialized. Please ensure PRIVATE_KEY environment variable is set.');
91
+ }
92
+ try {
93
+ const result = await tool.handler(this.sdk, args);
94
+ if (this.debug) {
95
+ console.error(`[MCP Server] Tool execution successful: ${toolName}`);
96
+ }
97
+ return result;
98
+ }
99
+ catch (error) {
100
+ console.error(`[MCP Server] Tool execution failed: ${toolName}`, error);
101
+ throw error;
102
+ }
103
+ });
104
+ }
105
+ /**
106
+ * Setup error handlers
107
+ */
108
+ setupErrorHandlers() {
109
+ this.server.onerror = (error) => {
110
+ console.error('[MCP Server] Protocol error:', error);
111
+ };
112
+ process.on('SIGINT', () => {
113
+ if (this.debug) {
114
+ console.error('[MCP Server] Received SIGINT, shutting down...');
115
+ }
116
+ this.cleanup();
117
+ process.exit(0);
118
+ });
119
+ process.on('SIGTERM', () => {
120
+ if (this.debug) {
121
+ console.error('[MCP Server] Received SIGTERM, shutting down...');
122
+ }
123
+ this.cleanup();
124
+ process.exit(0);
125
+ });
126
+ }
127
+ /**
128
+ * Start the MCP server
129
+ */
130
+ async start() {
131
+ await this.initialize();
132
+ const transport = new StdioServerTransport();
133
+ await this.server.connect(transport);
134
+ if (this.debug) {
135
+ console.error('[MCP Server] Gala Launchpad MCP server running on stdio');
136
+ console.error(`[MCP Server] Registered ${tools.length} tools`);
137
+ }
138
+ }
139
+ /**
140
+ * Cleanup resources
141
+ */
142
+ cleanup() {
143
+ if (this.sdk) {
144
+ this.sdk.cleanup();
145
+ if (this.debug) {
146
+ console.error('[MCP Server] SDK cleaned up');
147
+ }
148
+ }
149
+ }
150
+ }
151
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Balance & Portfolio Tools
3
+ */
4
+ import type { MCPTool } from '../../types/mcp.js';
5
+ export declare const fetchGalaBalanceTool: MCPTool;
6
+ export declare const fetchTokenBalanceTool: MCPTool;
7
+ export declare const fetchTokensHeldTool: MCPTool;
8
+ export declare const fetchTokensCreatedTool: MCPTool;
9
+ export declare const fetchProfileTool: MCPTool;
10
+ export declare const updateProfileTool: MCPTool;
11
+ export declare const balanceTools: MCPTool[];
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/balance/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,eAAO,MAAM,oBAAoB,EAAE,OAiBlC,CAAC;AAGF,eAAO,MAAM,qBAAqB,EAAE,OA0BnC,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,OAgCjC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OAgCpC,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,OAiB9B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAgC/B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,OAAO,EAOjC,CAAC"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Balance & Portfolio Tools
3
+ */
4
+ import { formatSuccess } from '../../utils/response-formatter.js';
5
+ import { withErrorHandling } from '../../utils/error-handler.js';
6
+ // 1. Fetch GALA Balance
7
+ export const fetchGalaBalanceTool = {
8
+ name: 'gala_launchpad_fetch_gala_balance',
9
+ description: 'Get GALA balance for a wallet',
10
+ inputSchema: {
11
+ type: 'object',
12
+ properties: {
13
+ walletAddress: {
14
+ type: 'string',
15
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
16
+ description: 'Wallet address (optional, defaults to SDK wallet)',
17
+ },
18
+ },
19
+ },
20
+ handler: withErrorHandling(async (sdk, args) => {
21
+ const result = await sdk.fetchGalaBalance(args.walletAddress);
22
+ return formatSuccess(result);
23
+ }),
24
+ };
25
+ // 2. Fetch Token Balance
26
+ export const fetchTokenBalanceTool = {
27
+ name: 'gala_launchpad_fetch_token_balance',
28
+ description: 'Get launchpad token balance',
29
+ inputSchema: {
30
+ type: 'object',
31
+ properties: {
32
+ tokenName: {
33
+ type: 'string',
34
+ pattern: '^[a-z0-9_-]{2,20}$',
35
+ description: 'Token name',
36
+ },
37
+ walletAddress: {
38
+ type: 'string',
39
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
40
+ description: 'Wallet address',
41
+ },
42
+ },
43
+ required: ['tokenName', 'walletAddress'],
44
+ },
45
+ handler: withErrorHandling(async (sdk, args) => {
46
+ const result = await sdk.fetchTokenBalance({
47
+ tokenName: args.tokenName,
48
+ address: args.walletAddress,
49
+ });
50
+ return formatSuccess(result);
51
+ }),
52
+ };
53
+ // 3. Fetch Tokens Held
54
+ export const fetchTokensHeldTool = {
55
+ name: 'gala_launchpad_fetch_tokens_held',
56
+ description: 'Get all tokens held by a wallet',
57
+ inputSchema: {
58
+ type: 'object',
59
+ properties: {
60
+ address: {
61
+ type: 'string',
62
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
63
+ description: 'Wallet address',
64
+ },
65
+ page: {
66
+ type: 'number',
67
+ minimum: 1,
68
+ description: 'Page number (default: 1)',
69
+ },
70
+ limit: {
71
+ type: 'number',
72
+ minimum: 1,
73
+ maximum: 100,
74
+ description: 'Results per page (default: 20)',
75
+ },
76
+ },
77
+ required: ['address'],
78
+ },
79
+ handler: withErrorHandling(async (sdk, args) => {
80
+ const result = await sdk.fetchTokensHeld({
81
+ page: args.page || 1,
82
+ limit: args.limit || 20,
83
+ });
84
+ return formatSuccess(result);
85
+ }),
86
+ };
87
+ // 4. Fetch Tokens Created
88
+ export const fetchTokensCreatedTool = {
89
+ name: 'gala_launchpad_fetch_tokens_created',
90
+ description: 'Get all tokens created by a wallet',
91
+ inputSchema: {
92
+ type: 'object',
93
+ properties: {
94
+ address: {
95
+ type: 'string',
96
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
97
+ description: 'Wallet address',
98
+ },
99
+ page: {
100
+ type: 'number',
101
+ minimum: 1,
102
+ description: 'Page number (default: 1)',
103
+ },
104
+ limit: {
105
+ type: 'number',
106
+ minimum: 1,
107
+ maximum: 100,
108
+ description: 'Results per page (default: 20)',
109
+ },
110
+ },
111
+ required: ['address'],
112
+ },
113
+ handler: withErrorHandling(async (sdk, args) => {
114
+ const result = await sdk.fetchTokensCreated({
115
+ page: args.page || 1,
116
+ limit: args.limit || 20,
117
+ });
118
+ return formatSuccess(result);
119
+ }),
120
+ };
121
+ // 5. Fetch Profile
122
+ export const fetchProfileTool = {
123
+ name: 'gala_launchpad_fetch_profile',
124
+ description: 'Get user profile data',
125
+ inputSchema: {
126
+ type: 'object',
127
+ properties: {
128
+ walletAddress: {
129
+ type: 'string',
130
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
131
+ description: 'Wallet address (optional, defaults to SDK wallet)',
132
+ },
133
+ },
134
+ },
135
+ handler: withErrorHandling(async (sdk, args) => {
136
+ const result = await sdk.fetchProfile(args.walletAddress);
137
+ return formatSuccess(result);
138
+ }),
139
+ };
140
+ // 6. Update Profile
141
+ export const updateProfileTool = {
142
+ name: 'gala_launchpad_update_profile',
143
+ description: 'Update user profile',
144
+ inputSchema: {
145
+ type: 'object',
146
+ properties: {
147
+ fullName: {
148
+ type: 'string',
149
+ maxLength: 50,
150
+ pattern: '^[a-zA-Z\\s]+$',
151
+ description: 'Full name',
152
+ },
153
+ profileImage: {
154
+ type: 'string',
155
+ description: 'Profile image URL or empty string',
156
+ },
157
+ walletAddress: {
158
+ type: 'string',
159
+ pattern: '^(0x[a-fA-F0-9]{40}|eth\\|[a-fA-F0-9]{40})$',
160
+ description: 'Wallet address',
161
+ },
162
+ },
163
+ required: ['fullName', 'profileImage', 'walletAddress'],
164
+ },
165
+ handler: withErrorHandling(async (sdk, args) => {
166
+ const result = await sdk.updateProfile({
167
+ fullName: args.fullName,
168
+ profileImage: args.profileImage,
169
+ walletAddress: args.walletAddress,
170
+ });
171
+ return formatSuccess(result);
172
+ }),
173
+ };
174
+ export const balanceTools = [
175
+ fetchGalaBalanceTool,
176
+ fetchTokenBalanceTool,
177
+ fetchTokensHeldTool,
178
+ fetchTokensCreatedTool,
179
+ fetchProfileTool,
180
+ updateProfileTool,
181
+ ];
182
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/balance/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Token Creation Tools
3
+ */
4
+ import type { MCPTool } from '../../types/mcp.js';
5
+ export declare const launchTokenTool: MCPTool;
6
+ export declare const uploadTokenImageTool: MCPTool;
7
+ export declare const uploadProfileImageTool: MCPTool;
8
+ export declare const creationTools: MCPTool[];
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/creation/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAKlD,eAAO,MAAM,eAAe,EAAE,OAgF7B,CAAC;AAGF,eAAO,MAAM,oBAAoB,EAAE,OA+BlC,CAAC;AAGF,eAAO,MAAM,sBAAsB,EAAE,OA4BpC,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,OAAO,EAIlC,CAAC"}