@172ai/containers-mcp-server 1.0.9 → 1.0.10

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.
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * 172.ai Container CLI Tool
4
+ * Command line interface that reuses MCP service code for container operations
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=cli-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-tool.d.ts","sourceRoot":"","sources":["../src/cli-tool.ts"],"names":[],"mappings":";AAEA;;;GAGG"}
@@ -0,0 +1,450 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * 172.ai Container CLI Tool
5
+ * Command line interface that reuses MCP service code for container operations
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ var __importDefault = (this && this.__importDefault) || function (mod) {
41
+ return (mod && mod.__esModule) ? mod : { "default": mod };
42
+ };
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ // Check for commands that don't require config before importing anything
45
+ const requiresSetup = !process.argv.includes('--help') &&
46
+ !process.argv.includes('-h') &&
47
+ !process.argv.includes('help') &&
48
+ !process.argv.includes('setup') &&
49
+ !process.argv.includes('--version') &&
50
+ process.argv.length > 2;
51
+ const commander_1 = require("commander");
52
+ const chalk_1 = __importDefault(require("chalk"));
53
+ const ora_1 = __importDefault(require("ora"));
54
+ const program = new commander_1.Command();
55
+ const spinner = (0, ora_1.default)();
56
+ // Lazy load services only when needed
57
+ let containerService;
58
+ let buildService;
59
+ let fileService;
60
+ let capabilityService;
61
+ let userService;
62
+ let authManager;
63
+ let config;
64
+ let ErrorHandler;
65
+ const loadServices = async () => {
66
+ if (containerService)
67
+ return; // Already loaded
68
+ try {
69
+ const services = await Promise.all([
70
+ Promise.resolve().then(() => __importStar(require('./services/containerService'))),
71
+ Promise.resolve().then(() => __importStar(require('./services/buildService'))),
72
+ Promise.resolve().then(() => __importStar(require('./services/fileService'))),
73
+ Promise.resolve().then(() => __importStar(require('./services/capabilityService'))),
74
+ Promise.resolve().then(() => __importStar(require('./services/userService'))),
75
+ Promise.resolve().then(() => __importStar(require('./auth'))),
76
+ Promise.resolve().then(() => __importStar(require('./config'))),
77
+ Promise.resolve().then(() => __importStar(require('./utils/errorHandler')))
78
+ ]);
79
+ containerService = services[0].containerService;
80
+ buildService = services[1].buildService;
81
+ fileService = services[2].fileService;
82
+ capabilityService = services[3].capabilityService;
83
+ userService = services[4].userService;
84
+ authManager = services[5].authManager;
85
+ config = services[6].config;
86
+ ErrorHandler = services[7].ErrorHandler;
87
+ }
88
+ catch (error) {
89
+ if (error.message.includes('Authentication configuration required')) {
90
+ console.error(chalk_1.default.red('Configuration required. Please run:'));
91
+ console.error(chalk_1.default.yellow('containers-cli setup'));
92
+ process.exit(1);
93
+ }
94
+ throw error;
95
+ }
96
+ };
97
+ // Helper functions for formatting output
98
+ const formatContainer = (container) => {
99
+ return `
100
+ ${chalk_1.default.bold.blue(container.name)} (${container.id})
101
+ ${chalk_1.default.gray('Description:')} ${container.description}
102
+ ${chalk_1.default.gray('Private:')} ${container.isPrivate ? chalk_1.default.red('Yes') : chalk_1.default.green('No')}
103
+ ${chalk_1.default.gray('Tags:')} ${container.tags?.join(', ') || 'None'}
104
+ ${chalk_1.default.gray('Created:')} ${new Date(container.createdAt).toLocaleDateString()}
105
+ ${chalk_1.default.gray('URL:')} ${container.url || 'N/A'}`;
106
+ };
107
+ const formatFileSize = (bytes) => {
108
+ if (bytes === 0)
109
+ return '0 B';
110
+ const k = 1024;
111
+ const sizes = ['B', 'KB', 'MB', 'GB'];
112
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
113
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];
114
+ };
115
+ // Global error handler
116
+ const handleError = (error) => {
117
+ spinner.stop();
118
+ const processedError = ErrorHandler.processError(error, 'CLI');
119
+ console.error(chalk_1.default.red('Error:'), processedError.message);
120
+ if (config.isDevelopment()) {
121
+ console.error(chalk_1.default.gray('Details:'), processedError.details);
122
+ }
123
+ process.exit(1);
124
+ };
125
+ // Authentication check wrapper
126
+ const withAuth = (fn) => {
127
+ return async (...args) => {
128
+ try {
129
+ await loadServices();
130
+ const isAuthenticated = await authManager.testAuthentication();
131
+ if (!isAuthenticated) {
132
+ console.error(chalk_1.default.red('Authentication failed. Please check your credentials.'));
133
+ console.error(chalk_1.default.yellow('Run with --setup to configure authentication.'));
134
+ process.exit(1);
135
+ }
136
+ return await fn(...args);
137
+ }
138
+ catch (error) {
139
+ handleError(error);
140
+ }
141
+ };
142
+ };
143
+ // Container Commands
144
+ program
145
+ .command('containers')
146
+ .alias('ls')
147
+ .description('List containers')
148
+ .option('-s, --scope <scope>', 'Filter scope: public, myCollection, all', 'all')
149
+ .option('-l, --limit <limit>', 'Number of containers to fetch', '20')
150
+ .option('-q, --query <query>', 'Search query')
151
+ .action(withAuth(async (options) => {
152
+ spinner.start('Fetching containers...');
153
+ const response = await containerService.listContainers({
154
+ scope: options.scope,
155
+ limit: parseInt(options.limit),
156
+ query: options.query
157
+ });
158
+ spinner.stop();
159
+ if (response.containers.length === 0) {
160
+ console.log(chalk_1.default.yellow('No containers found.'));
161
+ return;
162
+ }
163
+ console.log(chalk_1.default.bold(`Found ${response.total} container(s):\n`));
164
+ response.containers.forEach((container, index) => {
165
+ console.log(`${index + 1}.${formatContainer(container)}\n`);
166
+ });
167
+ }));
168
+ program
169
+ .command('get <containerId>')
170
+ .description('Get container details')
171
+ .action(withAuth(async (containerId) => {
172
+ spinner.start('Fetching container...');
173
+ const container = await containerService.getContainer({ containerId });
174
+ spinner.stop();
175
+ console.log(formatContainer(container));
176
+ }));
177
+ program
178
+ .command('create')
179
+ .description('Create a new container')
180
+ .option('-n, --name <name>', 'Container name')
181
+ .option('-d, --description <description>', 'Container description')
182
+ .option('-f, --dockerfile <path>', 'Path to Dockerfile')
183
+ .option('-t, --tags <tags>', 'Comma-separated tags')
184
+ .option('-p, --private', 'Make container private', false)
185
+ .action(withAuth(async (options) => {
186
+ if (!options.name || !options.description || !options.dockerfile) {
187
+ console.error(chalk_1.default.red('Name, description, and dockerfile are required.'));
188
+ console.error('Usage: create -n "My Container" -d "Description" -f ./Dockerfile');
189
+ process.exit(1);
190
+ }
191
+ let dockerfileContent;
192
+ try {
193
+ const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
194
+ dockerfileContent = await fs.readFile(options.dockerfile, 'utf8');
195
+ }
196
+ catch (error) {
197
+ console.error(chalk_1.default.red(`Failed to read Dockerfile: ${options.dockerfile}`));
198
+ process.exit(1);
199
+ }
200
+ spinner.start('Creating container...');
201
+ const container = await containerService.createContainer({
202
+ name: options.name,
203
+ description: options.description,
204
+ dockerfile: dockerfileContent,
205
+ tags: options.tags ? options.tags.split(',').map((t) => t.trim()) : [],
206
+ isPrivate: options.private
207
+ });
208
+ spinner.stop();
209
+ console.log(chalk_1.default.green('Container created successfully!'));
210
+ console.log(formatContainer(container));
211
+ }));
212
+ program
213
+ .command('delete <containerId>')
214
+ .description('Delete a container')
215
+ .option('-y, --yes', 'Skip confirmation prompt')
216
+ .action(withAuth(async (containerId, options) => {
217
+ if (!options.yes) {
218
+ const { default: inquirer } = await Promise.resolve().then(() => __importStar(require('inquirer')));
219
+ const { confirm } = await inquirer.prompt([{
220
+ type: 'confirm',
221
+ name: 'confirm',
222
+ message: `Are you sure you want to delete container ${containerId}?`,
223
+ default: false
224
+ }]);
225
+ if (!confirm) {
226
+ console.log('Operation cancelled.');
227
+ return;
228
+ }
229
+ }
230
+ spinner.start('Deleting container...');
231
+ const result = await containerService.deleteContainer({ containerId });
232
+ spinner.stop();
233
+ console.log(chalk_1.default.green(result.message));
234
+ }));
235
+ // Build Commands
236
+ program
237
+ .command('build <containerId>')
238
+ .description('Build a container')
239
+ .action(withAuth(async (containerId) => {
240
+ spinner.start('Starting build...');
241
+ const buildResult = await buildService.buildContainer({ containerId });
242
+ spinner.stop();
243
+ console.log(chalk_1.default.green('Build started successfully!'));
244
+ console.log(`Build ID: ${buildResult.id}`);
245
+ console.log(`Status: ${buildResult.status}`);
246
+ }));
247
+ program
248
+ .command('builds <containerId>')
249
+ .description('List builds for a container')
250
+ .option('-l, --limit <limit>', 'Number of builds to fetch', '10')
251
+ .action(withAuth(async (containerId, options) => {
252
+ spinner.start('Fetching builds...');
253
+ const response = await buildService.listBuilds({
254
+ containerId,
255
+ limit: parseInt(options.limit)
256
+ });
257
+ spinner.stop();
258
+ if (response.builds.length === 0) {
259
+ console.log(chalk_1.default.yellow('No builds found.'));
260
+ return;
261
+ }
262
+ console.log(chalk_1.default.bold(`Found ${response.total} build(s):\n`));
263
+ response.builds.forEach((build, index) => {
264
+ const statusColor = build.status === 'completed' ? chalk_1.default.green :
265
+ build.status === 'failed' ? chalk_1.default.red : chalk_1.default.yellow;
266
+ console.log(`${index + 1}. ${chalk_1.default.bold(build.id)}`);
267
+ console.log(` Status: ${statusColor(build.status)}`);
268
+ console.log(` Started: ${new Date(build.startTime).toLocaleString()}`);
269
+ if (build.endTime) {
270
+ console.log(` Ended: ${new Date(build.endTime).toLocaleString()}`);
271
+ }
272
+ console.log('');
273
+ });
274
+ }));
275
+ // File Commands
276
+ program
277
+ .command('files <containerId>')
278
+ .description('List files in a container')
279
+ .option('-p, --path <path>', 'Directory path', '/')
280
+ .action(withAuth(async (containerId, options) => {
281
+ spinner.start('Fetching files...');
282
+ const response = await fileService.listContainerFiles({
283
+ containerId,
284
+ path: options.path
285
+ });
286
+ spinner.stop();
287
+ if (response.files.length === 0) {
288
+ console.log(chalk_1.default.yellow('No files found.'));
289
+ return;
290
+ }
291
+ console.log(chalk_1.default.bold(`Files in ${response.path}:\n`));
292
+ response.files.forEach((file, index) => {
293
+ const typeIcon = file.type === 'directory' ? '📁' : '📄';
294
+ const sizeStr = file.size ? formatFileSize(file.size) : 'N/A';
295
+ console.log(`${index + 1}. ${typeIcon} ${chalk_1.default.bold(file.name)}`);
296
+ console.log(` Path: ${file.path}`);
297
+ console.log(` Size: ${sizeStr}`);
298
+ if (file.lastModified) {
299
+ console.log(` Modified: ${new Date(file.lastModified).toLocaleString()}`);
300
+ }
301
+ console.log('');
302
+ });
303
+ }));
304
+ program
305
+ .command('upload <containerId> <filePath>')
306
+ .description('Upload a file to a container')
307
+ .option('-f, --file <localPath>', 'Local file path to upload')
308
+ .action(withAuth(async (containerId, filePath, options) => {
309
+ if (!options.file) {
310
+ console.error(chalk_1.default.red('Local file path is required (use -f flag)'));
311
+ process.exit(1);
312
+ }
313
+ let content;
314
+ try {
315
+ const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
316
+ content = await fs.readFile(options.file, 'utf8');
317
+ }
318
+ catch (error) {
319
+ console.error(chalk_1.default.red(`Failed to read file: ${options.file}`));
320
+ process.exit(1);
321
+ }
322
+ spinner.start('Uploading file...');
323
+ const result = await fileService.uploadFile({
324
+ containerId,
325
+ filePath,
326
+ content
327
+ });
328
+ spinner.stop();
329
+ console.log(chalk_1.default.green('File uploaded successfully!'));
330
+ console.log(`Path: ${result.path}`);
331
+ console.log(`Size: ${formatFileSize(result.size)}`);
332
+ }));
333
+ // User Commands
334
+ program
335
+ .command('balance')
336
+ .description('Check token balance')
337
+ .action(withAuth(async () => {
338
+ spinner.start('Fetching token balance...');
339
+ const balance = await userService.getTokenBalance();
340
+ spinner.stop();
341
+ console.log(chalk_1.default.bold('Token Balance:'));
342
+ console.log(`Tokens: ${chalk_1.default.green(balance.tokenBalance.toLocaleString())}`);
343
+ console.log(`Last Updated: ${new Date(balance.lastUpdated).toLocaleString()}`);
344
+ }));
345
+ program
346
+ .command('profile')
347
+ .description('Show user profile')
348
+ .action(withAuth(async () => {
349
+ spinner.start('Fetching profile...');
350
+ const profile = await userService.getUserProfile();
351
+ spinner.stop();
352
+ console.log(chalk_1.default.bold('User Profile:'));
353
+ console.log(`Email: ${profile.email}`);
354
+ console.log(`ID: ${profile.id}`);
355
+ if (profile.displayName) {
356
+ console.log(`Name: ${profile.displayName}`);
357
+ }
358
+ console.log(`Roles: ${profile.roles.join(', ')}`);
359
+ console.log(`Created: ${new Date(profile.createdAt).toLocaleString()}`);
360
+ }));
361
+ program
362
+ .command('transactions')
363
+ .description('Show transaction history')
364
+ .option('-l, --limit <limit>', 'Number of transactions to show', '20')
365
+ .action(withAuth(async (options) => {
366
+ spinner.start('Fetching transactions...');
367
+ const response = await userService.getTransactionHistory(parseInt(options.limit));
368
+ spinner.stop();
369
+ if (response.transactions.length === 0) {
370
+ console.log(chalk_1.default.yellow('No transactions found.'));
371
+ return;
372
+ }
373
+ console.log(chalk_1.default.bold(`Transaction History (${response.transactions.length} of ${response.total}):\n`));
374
+ response.transactions.forEach((transaction, index) => {
375
+ const typeColor = transaction.type === 'purchase' ? chalk_1.default.green : chalk_1.default.red;
376
+ const typeSymbol = transaction.type === 'purchase' ? '+' : '-';
377
+ console.log(`${index + 1}. ${typeColor(typeSymbol + transaction.tokens)} tokens`);
378
+ console.log(` Type: ${transaction.type}`);
379
+ console.log(` Date: ${new Date(transaction.timestamp).toLocaleString()}`);
380
+ if (transaction.description) {
381
+ console.log(` Description: ${transaction.description}`);
382
+ }
383
+ console.log('');
384
+ });
385
+ }));
386
+ // Setup Command
387
+ program
388
+ .command('setup')
389
+ .description('Configure authentication and settings')
390
+ .action(async () => {
391
+ const { MCPServerSetup } = await Promise.resolve().then(() => __importStar(require('./setup.js')));
392
+ const setup = new MCPServerSetup();
393
+ await setup.run();
394
+ });
395
+ // Test Command
396
+ program
397
+ .command('test')
398
+ .description('Test authentication and connection')
399
+ .action(async () => {
400
+ console.log(chalk_1.default.blue('🔍 Testing authentication and connection...\n'));
401
+ try {
402
+ await loadServices();
403
+ const isAuthenticated = await authManager.testAuthentication();
404
+ if (isAuthenticated) {
405
+ console.log(chalk_1.default.green('✅ Authentication successful!'));
406
+ console.log(chalk_1.default.green('✅ Connection to API is working'));
407
+ // Test a simple API call
408
+ spinner.start('Testing API endpoints...');
409
+ const response = await containerService.listContainers({ limit: 1 });
410
+ spinner.stop();
411
+ console.log(chalk_1.default.green('✅ API endpoints are accessible'));
412
+ console.log(chalk_1.default.blue(`Found ${response.total} containers in your account`));
413
+ }
414
+ else {
415
+ console.log(chalk_1.default.red('❌ Authentication failed'));
416
+ console.log(chalk_1.default.yellow('Run "setup" command to configure authentication'));
417
+ process.exit(1);
418
+ }
419
+ }
420
+ catch (error) {
421
+ handleError(error);
422
+ }
423
+ });
424
+ // Program configuration
425
+ program
426
+ .name('containers-cli')
427
+ .description('172.ai Container Management CLI Tool')
428
+ .version('1.0.0')
429
+ .option('-c, --config <path>', 'Path to config file')
430
+ .option('-v, --verbose', 'Verbose output')
431
+ .hook('preAction', async (thisCommand, actionCommand) => {
432
+ if (thisCommand.opts().verbose) {
433
+ process.env.LOG_LEVEL = 'debug';
434
+ }
435
+ if (thisCommand.opts().config) {
436
+ process.env.CONFIG_PATH = thisCommand.opts().config;
437
+ }
438
+ });
439
+ // Handle unknown commands
440
+ program.on('command:*', () => {
441
+ console.error(chalk_1.default.red('Invalid command: %s'), program.args.join(' '));
442
+ console.log('See --help for a list of available commands.');
443
+ process.exit(1);
444
+ });
445
+ // Parse command line arguments
446
+ if (process.argv.length === 2) {
447
+ program.help();
448
+ }
449
+ program.parse(process.argv);
450
+ //# sourceMappingURL=cli-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-tool.js","sourceRoot":"","sources":["../src/cli-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { User, UserBalance } from '../types';
2
+ /**
3
+ * User management service for token balance and user operations
4
+ */
5
+ export declare class UserService {
6
+ private httpClient;
7
+ constructor();
8
+ /**
9
+ * Get current user's token balance
10
+ */
11
+ getTokenBalance(): Promise<UserBalance>;
12
+ /**
13
+ * Get user profile information
14
+ */
15
+ getUserProfile(): Promise<User>;
16
+ /**
17
+ * Get user's transaction history
18
+ */
19
+ getTransactionHistory(limit?: number, offset?: number): Promise<{
20
+ transactions: Array<{
21
+ id: string;
22
+ type: 'purchase' | 'consume';
23
+ tokens: number;
24
+ timestamp: string;
25
+ description?: string;
26
+ }>;
27
+ total: number;
28
+ hasMore: boolean;
29
+ }>;
30
+ }
31
+ export declare const userService: UserService;
32
+ //# sourceMappingURL=userService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userService.d.ts","sourceRoot":"","sources":["../../src/services/userService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAI7C;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAgB;;IAMlC;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC;IAiB7C;;OAEG;IACG,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrC;;OAEG;IACG,qBAAqB,CAAC,KAAK,GAAE,MAAW,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO,CAAC;QAC3E,YAAY,EAAE,KAAK,CAAC;YAClB,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;YAC7B,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,CAAC,EAAE,MAAM,CAAC;SACtB,CAAC,CAAC;QACH,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;CA8BH;AAGD,eAAO,MAAM,WAAW,aAAoB,CAAC"}
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.userService = exports.UserService = void 0;
4
+ const auth_1 = require("../auth");
5
+ const errorHandler_1 = require("../utils/errorHandler");
6
+ /**
7
+ * User management service for token balance and user operations
8
+ */
9
+ class UserService {
10
+ constructor() {
11
+ this.httpClient = auth_1.authManager.getHttpClient();
12
+ }
13
+ /**
14
+ * Get current user's token balance
15
+ */
16
+ async getTokenBalance() {
17
+ try {
18
+ const response = await this.httpClient.get('/v1/users/balance');
19
+ if (!response.data) {
20
+ throw errorHandler_1.ErrorHandler.createServerError('Invalid response from balance API');
21
+ }
22
+ return response.data;
23
+ }
24
+ catch (error) {
25
+ if (error instanceof errorHandler_1.ApiError && error.status === 404) {
26
+ throw errorHandler_1.ErrorHandler.createNotFoundError('User not found or balance not available');
27
+ }
28
+ throw errorHandler_1.ErrorHandler.processError(error, 'UserService.getTokenBalance');
29
+ }
30
+ }
31
+ /**
32
+ * Get user profile information
33
+ */
34
+ async getUserProfile() {
35
+ try {
36
+ const response = await this.httpClient.get('/v1/users/me');
37
+ if (!response.data) {
38
+ throw errorHandler_1.ErrorHandler.createServerError('Invalid response from user profile API');
39
+ }
40
+ return response.data;
41
+ }
42
+ catch (error) {
43
+ if (error instanceof errorHandler_1.ApiError && error.status === 404) {
44
+ throw errorHandler_1.ErrorHandler.createNotFoundError('User profile not found');
45
+ }
46
+ throw errorHandler_1.ErrorHandler.processError(error, 'UserService.getUserProfile');
47
+ }
48
+ }
49
+ /**
50
+ * Get user's transaction history
51
+ */
52
+ async getTransactionHistory(limit = 50, offset = 0) {
53
+ try {
54
+ const queryParams = new URLSearchParams({
55
+ limit: limit.toString(),
56
+ offset: offset.toString()
57
+ });
58
+ const response = await this.httpClient.get(`/v1/users/me/transactions?${queryParams.toString()}`);
59
+ if (!response.data) {
60
+ throw errorHandler_1.ErrorHandler.createServerError('Invalid response from transaction history API');
61
+ }
62
+ const data = response.data;
63
+ return {
64
+ transactions: data.transactions || [],
65
+ total: data.total || 0,
66
+ hasMore: data.hasMore || false
67
+ };
68
+ }
69
+ catch (error) {
70
+ if (error instanceof errorHandler_1.ApiError && error.status === 404) {
71
+ return {
72
+ transactions: [],
73
+ total: 0,
74
+ hasMore: false
75
+ };
76
+ }
77
+ throw errorHandler_1.ErrorHandler.processError(error, 'UserService.getTransactionHistory');
78
+ }
79
+ }
80
+ }
81
+ exports.UserService = UserService;
82
+ // Export singleton instance
83
+ exports.userService = new UserService();
84
+ //# sourceMappingURL=userService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userService.js","sourceRoot":"","sources":["../../src/services/userService.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -226,4 +226,25 @@ export interface ListCapabilitiesParams {
226
226
  export interface GetCapabilityParams {
227
227
  capabilityId: string;
228
228
  }
229
+ export interface User {
230
+ id: string;
231
+ email: string;
232
+ displayName?: string;
233
+ roles: string[];
234
+ createdAt: string;
235
+ lastLoginAt?: string;
236
+ }
237
+ export interface UserBalance {
238
+ userId: string;
239
+ tokenBalance: number;
240
+ lastUpdated: string;
241
+ }
242
+ export interface Transaction {
243
+ id: string;
244
+ userId: string;
245
+ type: 'purchase' | 'consume';
246
+ tokens: number;
247
+ timestamp: string;
248
+ description?: string;
249
+ }
229
250
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@172ai/containers-mcp-server",
3
- "version": "1.0.9",
3
+ "version": "1.0.10",
4
4
  "description": "MCP server for 172.ai container management platform - enables AI assistants to manage containers, builds, and files",
5
5
  "main": "dist/cli.js",
6
6
  "bin": {
7
- "containers-mcp-server": "dist/cli.js"
7
+ "containers-mcp-server": "dist/cli.js",
8
+ "containers-cli": "dist/cli-tool.js"
8
9
  },
9
10
  "scripts": {
10
11
  "start": "node dist/server.js",
@@ -44,7 +45,8 @@
44
45
  "chalk": "^5.3.0",
45
46
  "ora": "^7.0.0",
46
47
  "axios": "^1.6.0",
47
- "@modelcontextprotocol/sdk": "^0.4.0"
48
+ "@modelcontextprotocol/sdk": "^0.4.0",
49
+ "commander": "^11.1.0"
48
50
  },
49
51
  "devDependencies": {
50
52
  "@types/node": "^20.10.0",