@myvtp/mcp 0.3.0 → 0.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.
package/dist/client.d.ts CHANGED
@@ -12,6 +12,7 @@ export interface App {
12
12
  export interface DeployResult {
13
13
  app?: App;
14
14
  replaced?: boolean;
15
+ warning?: string;
15
16
  error?: string;
16
17
  message?: string;
17
18
  existingApp?: App;
@@ -42,6 +43,29 @@ export interface ConnectionService {
42
43
  docsUrl: string;
43
44
  fields: ConnectionField[];
44
45
  }
46
+ /**
47
+ * VTP configuration schema (v2) - minimal config with server-side builds.
48
+ */
49
+ interface VTPConfig {
50
+ name: string;
51
+ id?: string;
52
+ description?: string;
53
+ framework?: string;
54
+ build?: {
55
+ command?: string;
56
+ output?: string;
57
+ node_version?: number;
58
+ };
59
+ start?: {
60
+ command?: string;
61
+ port?: number;
62
+ };
63
+ env?: string[];
64
+ build_env?: string[];
65
+ connections?: string[];
66
+ volumes?: Record<string, string>;
67
+ ignore?: string[];
68
+ }
45
69
  /**
46
70
  * List all deployed apps (owned by the current user).
47
71
  */
@@ -54,13 +78,68 @@ export declare function listAppTypes(): Promise<AppTypeInfo[]>;
54
78
  * Get deployment guide for a specific app type.
55
79
  */
56
80
  export declare function getDeploymentGuide(type: string): Promise<DeploymentGuide>;
81
+ /**
82
+ * Get the deployment workflow guide.
83
+ */
84
+ export declare function getWorkflow(): Promise<string>;
57
85
  /**
58
86
  * Deploy an app from a local directory.
59
- * Reads vtp.yaml for all config including deploy path, creates tar.gz archive, and POSTs to the API.
87
+ * Reads vtp.yaml for all config, creates tar.gz archive, and POSTs to the API.
88
+ * Builds happen server-side - only v2 schema is supported.
60
89
  */
61
90
  export declare function deploy(configPath?: string, force?: boolean): Promise<DeployResult>;
62
91
  /**
63
92
  * List available connection services.
64
93
  */
65
94
  export declare function listConnectionServices(): Promise<ConnectionService[]>;
95
+ /**
96
+ * Get the deployment config for an existing app.
97
+ * Returns null if not found or error.
98
+ */
99
+ export declare function getAppConfig(appId: string): Promise<VTPConfig | null>;
100
+ /**
101
+ * Get container logs for a deployed app.
102
+ */
103
+ export declare function getAppLogs(appId: string, lines?: number): Promise<string>;
104
+ /**
105
+ * Framework detection result from the API.
106
+ */
107
+ export interface DetectionResult {
108
+ framework: string;
109
+ confidence: 'high' | 'medium' | 'low';
110
+ mode?: string;
111
+ packageManager: 'npm' | 'yarn' | 'pnpm' | 'bun';
112
+ nodeVersion?: number;
113
+ buildCommand?: string;
114
+ outputDir?: string;
115
+ startCommand?: string;
116
+ defaultPort?: number;
117
+ warnings?: string[];
118
+ }
119
+ export interface ValidationResult {
120
+ valid: boolean;
121
+ errors: Array<{
122
+ code: string;
123
+ message: string;
124
+ file?: string;
125
+ suggestion?: string;
126
+ }>;
127
+ warnings: Array<{
128
+ code: string;
129
+ message: string;
130
+ suggestion?: string;
131
+ }>;
132
+ }
133
+ export interface FrameworkDetectionResponse {
134
+ detection: DetectionResult;
135
+ validation: ValidationResult;
136
+ vtpConfig: Record<string, unknown> | null;
137
+ buildConfig: Record<string, unknown>;
138
+ }
139
+ /**
140
+ * Detect framework from a local directory.
141
+ * Uploads the source files to the API for server-side detection.
142
+ */
143
+ export declare function detectFramework(sourcePath?: string, ignorePatterns?: string[]): Promise<FrameworkDetectionResponse>;
144
+ export {};
66
145
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAwCA,MAAM,WAAW,GAAG;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAgUD;;GAEG;AACH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAI/C;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAG3D;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAE/E;AAuDD;;;GAGG;AACH,wBAAsB,MAAM,CAC1B,UAAU,GAAE,MAAqB,EACjC,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,YAAY,CAAC,CA6CvB;AAmFD;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAG3E"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -8,6 +8,7 @@ import FormData from 'form-data';
8
8
  import { parse as parseYaml } from 'yaml';
9
9
  import * as tar from 'tar';
10
10
  import { getFilesToInclude } from './utils/ignoreFilter.js';
11
+ // Used for opening browser during auth flow
11
12
  const execAsync = promisify(exec);
12
13
  const API_BASE = process.env.VTP_API_URL || 'https://api.myvtp.app';
13
14
  const CREDENTIALS_PATH = join(homedir(), '.vtp', 'credentials.json');
@@ -279,6 +280,13 @@ export async function listAppTypes() {
279
280
  export async function getDeploymentGuide(type) {
280
281
  return apiRequest('GET', `/guides/${encodeURIComponent(type)}`);
281
282
  }
283
+ /**
284
+ * Get the deployment workflow guide.
285
+ */
286
+ export async function getWorkflow() {
287
+ const response = await apiRequest('GET', '/guides/workflow');
288
+ return response.content;
289
+ }
282
290
  /**
283
291
  * Create a tar.gz archive of a directory.
284
292
  * Copies the config file (vtp.yaml) into the archive.
@@ -321,9 +329,14 @@ async function createTarGz(sourcePath, configPath, ignorePatterns) {
321
329
  }
322
330
  return tarPath;
323
331
  }
332
+ /**
333
+ * Legacy v1 config fields that are no longer supported.
334
+ */
335
+ const LEGACY_V1_FIELDS = ['type', 'path', 'predeploy'];
324
336
  /**
325
337
  * Deploy an app from a local directory.
326
- * Reads vtp.yaml for all config including deploy path, creates tar.gz archive, and POSTs to the API.
338
+ * Reads vtp.yaml for all config, creates tar.gz archive, and POSTs to the API.
339
+ * Builds happen server-side - only v2 schema is supported.
327
340
  */
328
341
  export async function deploy(configPath = './vtp.yaml', force = false) {
329
342
  // Read and parse vtp.yaml
@@ -333,31 +346,26 @@ export async function deploy(configPath = './vtp.yaml', force = false) {
333
346
  if (!config.name) {
334
347
  throw new Error('vtp.yaml: "name" is required');
335
348
  }
336
- if (!config.type) {
337
- throw new Error('vtp.yaml: "type" is required (static or node)');
338
- }
339
- if (!config.path) {
340
- throw new Error('vtp.yaml: "path" is required (folder to deploy)');
349
+ // Reject legacy v1 config fields with helpful migration message
350
+ const legacyFields = LEGACY_V1_FIELDS.filter(field => field in config);
351
+ if (legacyFields.length > 0) {
352
+ throw new Error(`vtp.yaml uses deprecated fields: ${legacyFields.join(', ')}. ` +
353
+ `Migrate to v2 schema: remove 'type' and 'path' (auto-detected), ` +
354
+ `remove 'predeploy' (builds happen server-side). ` +
355
+ `See get_deployment_guide for examples.`);
341
356
  }
342
357
  // Resolve path relative to vtp.yaml location
343
358
  const configDir = dirname(resolve(configPath));
344
- // Run predeploy commands if specified
345
- if (config.predeploy) {
346
- const commands = Array.isArray(config.predeploy)
347
- ? config.predeploy
348
- : [config.predeploy];
349
- for (const cmd of commands) {
350
- await execAsync(cmd, { cwd: configDir });
351
- }
352
- }
353
- const sourcePath = resolve(configDir, config.path);
359
+ // v2 schema - source root is the config directory
360
+ // No predeploy - builds happen server-side
361
+ const sourcePath = configDir;
354
362
  if (!existsSync(sourcePath)) {
355
363
  throw new Error(`Deploy path does not exist: ${sourcePath}`);
356
364
  }
357
365
  // Create tar.gz of the directory, including vtp.yaml
358
366
  const tarPath = await createTarGz(sourcePath, configPath, config.ignore);
359
367
  try {
360
- return await postDeploy(tarPath, config.name, config.type, force);
368
+ return await postDeploy(tarPath, config.name, force);
361
369
  }
362
370
  finally {
363
371
  // Clean up temp tar file
@@ -367,8 +375,9 @@ export async function deploy(configPath = './vtp.yaml', force = false) {
367
375
  /**
368
376
  * POST to the /deploy endpoint with tar.gz archive.
369
377
  * Uses form-data's submit() method for proper streaming support.
378
+ * Type is auto-detected server-side from the uploaded files.
370
379
  */
371
- async function postDeploy(tarPath, name, type, force, retried = false) {
380
+ async function postDeploy(tarPath, name, force, retried = false) {
372
381
  // Ensure we have valid authentication
373
382
  const accessToken = await ensureAuthenticated();
374
383
  return new Promise((resolve, reject) => {
@@ -378,7 +387,6 @@ async function postDeploy(tarPath, name, type, force, retried = false) {
378
387
  contentType: 'application/gzip',
379
388
  });
380
389
  form.append('name', name);
381
- form.append('type', type);
382
390
  form.append('force', String(force));
383
391
  // Parse API_BASE URL
384
392
  const url = new URL(`${API_BASE}/deploy`);
@@ -404,7 +412,7 @@ async function postDeploy(tarPath, name, type, force, retried = false) {
404
412
  // Handle 401 - try re-auth once
405
413
  if (res.statusCode === 401 && !retried) {
406
414
  deleteCredentials()
407
- .then(() => postDeploy(tarPath, name, type, force, true))
415
+ .then(() => postDeploy(tarPath, name, force, true))
408
416
  .then(resolve)
409
417
  .catch(reject);
410
418
  return;
@@ -436,4 +444,115 @@ export async function listConnectionServices() {
436
444
  const response = await apiRequest('GET', '/connections/services');
437
445
  return response.services;
438
446
  }
447
+ /**
448
+ * Get the deployment config for an existing app.
449
+ * Returns null if not found or error.
450
+ */
451
+ export async function getAppConfig(appId) {
452
+ try {
453
+ const response = await apiRequest('GET', `/apps/${encodeURIComponent(appId)}/config`);
454
+ return response.config;
455
+ }
456
+ catch {
457
+ return null;
458
+ }
459
+ }
460
+ /**
461
+ * Get container logs for a deployed app.
462
+ */
463
+ export async function getAppLogs(appId, lines) {
464
+ const params = lines ? `?lines=${lines}` : '';
465
+ const response = await apiRequest('GET', `/apps/${encodeURIComponent(appId)}/logs${params}`);
466
+ return response.logs;
467
+ }
468
+ /**
469
+ * Detect framework from a local directory.
470
+ * Uploads the source files to the API for server-side detection.
471
+ */
472
+ export async function detectFramework(sourcePath = '.', ignorePatterns) {
473
+ const resolvedPath = resolve(sourcePath);
474
+ if (!existsSync(resolvedPath)) {
475
+ throw new Error(`Path does not exist: ${resolvedPath}`);
476
+ }
477
+ // Create tar.gz of the directory with source files
478
+ const tarPath = join(tmpdir(), `vtp-detect-${Date.now()}.tar.gz`);
479
+ try {
480
+ // Get filtered list of files (excluding build outputs, node_modules, etc.)
481
+ const filesToInclude = await getFilesToInclude(resolvedPath, ignorePatterns);
482
+ // Create tar.gz archive with only the filtered files
483
+ await tar.create({
484
+ gzip: true,
485
+ file: tarPath,
486
+ cwd: resolvedPath,
487
+ }, filesToInclude);
488
+ // POST to /detect endpoint
489
+ return await postDetect(tarPath);
490
+ }
491
+ finally {
492
+ // Clean up temp tar file
493
+ await unlink(tarPath).catch(() => { });
494
+ }
495
+ }
496
+ /**
497
+ * POST to the /detect endpoint with tar.gz archive.
498
+ */
499
+ async function postDetect(tarPath, retried = false) {
500
+ const accessToken = await ensureAuthenticated();
501
+ return new Promise((resolve, reject) => {
502
+ const form = new FormData();
503
+ form.append('archive', createReadStream(tarPath), {
504
+ filename: 'source.tar.gz',
505
+ contentType: 'application/gzip',
506
+ });
507
+ const url = new URL(`${API_BASE}/detect`);
508
+ form.submit({
509
+ host: url.hostname,
510
+ port: url.port || (url.protocol === 'https:' ? 443 : 80),
511
+ path: url.pathname,
512
+ protocol: url.protocol,
513
+ headers: {
514
+ 'Authorization': `Bearer ${accessToken}`,
515
+ },
516
+ }, (err, res) => {
517
+ if (err) {
518
+ if (err.message.includes('ECONNREFUSED')) {
519
+ reject(new Error(`Cannot connect to VTP API at ${API_BASE}. ` +
520
+ `Make sure the API server is running (pnpm dev:api).`));
521
+ return;
522
+ }
523
+ reject(err);
524
+ return;
525
+ }
526
+ if (res.statusCode === 401 && !retried) {
527
+ deleteCredentials()
528
+ .then(() => postDetect(tarPath, true))
529
+ .then(resolve)
530
+ .catch(reject);
531
+ return;
532
+ }
533
+ if (res.statusCode === 401) {
534
+ reject(new Error('Authentication failed. Please check your credentials.'));
535
+ return;
536
+ }
537
+ let body = '';
538
+ res.on('data', (chunk) => {
539
+ body += chunk;
540
+ });
541
+ res.on('end', () => {
542
+ try {
543
+ const data = JSON.parse(body);
544
+ if (res.statusCode !== 200) {
545
+ reject(new Error(data.message || data.error || `HTTP ${res.statusCode}`));
546
+ return;
547
+ }
548
+ resolve(data);
549
+ }
550
+ catch {
551
+ reject(new Error(`Invalid JSON response: ${body}`));
552
+ }
553
+ });
554
+ res.on('error', reject);
555
+ });
556
+ });
557
+ }
439
558
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -6,7 +6,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
6
6
  import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
7
7
  import { existsSync } from 'fs';
8
8
  import * as client from './client.js';
9
- import { DeploySchema, GuideTypeSchema, toolDefinitions } from './tools.js';
9
+ import { DeploySchema, GetLogsSchema, GetAppConfigSchema, GuideTypeSchema, DetectFrameworkSchema, toolDefinitions } from './tools.js';
10
10
  const server = new Server({
11
11
  name: 'vtp',
12
12
  version: '0.7.0',
@@ -14,6 +14,12 @@ const server = new Server({
14
14
  capabilities: {
15
15
  tools: {},
16
16
  },
17
+ instructions: `VTP (Vibe Transfer Protocol) is a personal app hosting platform designed for AI agents to deploy web apps on behalf of users.
18
+
19
+ YOUR RESPONSIBILITY AS THE AGENT:
20
+ You orchestrate the deployment process. The end user should not need to understand DevOps, infrastructure, or deployment details - that complexity is your job to handle.
21
+
22
+ IMPORTANT: Call the \`how_to_deploy\` tool to get the deployment workflow before deploying any app. Never guess or assume configuration - use the tools to get accurate, current information.`,
17
23
  });
18
24
  // List available tools
19
25
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
@@ -24,6 +30,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
24
30
  const { name, arguments: args } = request.params;
25
31
  try {
26
32
  switch (name) {
33
+ case 'how_to_deploy': {
34
+ const workflow = await client.getWorkflow();
35
+ return {
36
+ content: [{
37
+ type: 'text',
38
+ text: workflow,
39
+ }],
40
+ };
41
+ }
27
42
  case 'list_app_types': {
28
43
  const types = await client.listAppTypes();
29
44
  const typeList = types
@@ -73,10 +88,9 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
73
88
  type: 'text',
74
89
  text: `Error: Config file not found: ${configPath}\n\n` +
75
90
  `Create a vtp.yaml file with:\n` +
76
- ` name: My App Name # Display name\n` +
77
- ` id: my-app # Optional: URL slug\n` +
78
- ` type: static # or "node"\n` +
79
- ` path: ./dist # folder to deploy\n\n` +
91
+ ` name: My App Name # Display name (required)\n` +
92
+ ` description: Brief description of the app\n\n` +
93
+ `VTP auto-detects your framework and builds server-side.\n` +
80
94
  `Use list_app_types and get_deployment_guide for help.`,
81
95
  }],
82
96
  isError: true,
@@ -110,13 +124,18 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
110
124
  // Success
111
125
  const app = result.app;
112
126
  const prefix = result.replaced ? 'Replaced' : 'Deployed';
127
+ let responseText = `${prefix} ${app.name} (@${app.id})\n` +
128
+ ` URL: ${app.url}\n` +
129
+ ` Type: ${app.type}\n` +
130
+ ` Status: ${app.status}`;
131
+ // Include warning if app wasn't started due to missing connections
132
+ if (result.warning) {
133
+ responseText += `\n\n⚠️ WARNING: ${result.warning}`;
134
+ }
113
135
  return {
114
136
  content: [{
115
137
  type: 'text',
116
- text: `${prefix} ${app.name} (@${app.id})\n` +
117
- ` URL: ${app.url}\n` +
118
- ` Type: ${app.type}\n` +
119
- ` Status: ${app.status}`,
138
+ text: responseText,
120
139
  }],
121
140
  };
122
141
  }
@@ -143,6 +162,41 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
143
162
  }],
144
163
  };
145
164
  }
165
+ case 'get_app_config': {
166
+ const { app_id } = GetAppConfigSchema.parse(args);
167
+ const config = await client.getAppConfig(app_id);
168
+ if (!config) {
169
+ return {
170
+ content: [{
171
+ type: 'text',
172
+ text: `No config found for app '${app_id}'. The app may not exist or its container has been removed.`,
173
+ }],
174
+ isError: true,
175
+ };
176
+ }
177
+ // Format config as YAML-like output for readability
178
+ const formatValue = (v) => {
179
+ if (Array.isArray(v)) {
180
+ return v.map(item => `\n - ${item}`).join('');
181
+ }
182
+ if (typeof v === 'object' && v !== null) {
183
+ return '\n' + Object.entries(v)
184
+ .map(([k, val]) => ` ${k}: ${val}`)
185
+ .join('\n');
186
+ }
187
+ return String(v);
188
+ };
189
+ const configLines = Object.entries(config)
190
+ .filter(([_, v]) => v !== undefined && v !== null)
191
+ .map(([k, v]) => `${k}: ${formatValue(v)}`)
192
+ .join('\n');
193
+ return {
194
+ content: [{
195
+ type: 'text',
196
+ text: `Config for ${app_id}:\n\n\`\`\`yaml\n${configLines}\n\`\`\`\n\nUse this to recreate vtp.yaml for redeployment.`,
197
+ }],
198
+ };
199
+ }
146
200
  case 'list_supported_connections': {
147
201
  const services = await client.listConnectionServices();
148
202
  const serviceList = services
@@ -179,6 +233,104 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
179
233
  }],
180
234
  };
181
235
  }
236
+ case 'get_logs': {
237
+ const { app_id, lines } = GetLogsSchema.parse(args);
238
+ const logs = await client.getAppLogs(app_id, lines);
239
+ if (!logs || logs.trim() === '') {
240
+ return {
241
+ content: [{
242
+ type: 'text',
243
+ text: `No logs available for app '${app_id}'. The app may not have produced any output yet.`,
244
+ }],
245
+ };
246
+ }
247
+ return {
248
+ content: [{
249
+ type: 'text',
250
+ text: `Logs for ${app_id}:\n\n${logs}`,
251
+ }],
252
+ };
253
+ }
254
+ case 'detect_framework': {
255
+ const { path: projectPath } = DetectFrameworkSchema.parse(args);
256
+ const sourcePath = projectPath || '.';
257
+ // Validate path exists
258
+ if (!existsSync(sourcePath)) {
259
+ return {
260
+ content: [{
261
+ type: 'text',
262
+ text: `Error: Path does not exist: ${sourcePath}`,
263
+ }],
264
+ isError: true,
265
+ };
266
+ }
267
+ // Detect framework via API
268
+ const result = await client.detectFramework(sourcePath);
269
+ // Format the response
270
+ let responseText = `## Framework Detection Results\n\n`;
271
+ responseText += `**Framework:** ${result.detection.framework}`;
272
+ if (result.detection.mode) {
273
+ responseText += ` (${result.detection.mode})`;
274
+ }
275
+ responseText += `\n**Confidence:** ${result.detection.confidence}\n`;
276
+ responseText += `**Package Manager:** ${result.detection.packageManager}\n`;
277
+ if (result.detection.nodeVersion) {
278
+ responseText += `**Node Version:** ${result.detection.nodeVersion}\n`;
279
+ }
280
+ if (result.detection.buildCommand) {
281
+ responseText += `**Build Command:** ${result.detection.buildCommand}\n`;
282
+ }
283
+ if (result.detection.outputDir) {
284
+ responseText += `**Output Directory:** ${result.detection.outputDir}\n`;
285
+ }
286
+ if (result.detection.startCommand) {
287
+ responseText += `**Start Command:** ${result.detection.startCommand}\n`;
288
+ }
289
+ if (result.detection.defaultPort) {
290
+ responseText += `**Default Port:** ${result.detection.defaultPort}\n`;
291
+ }
292
+ // Validation results
293
+ responseText += `\n## Validation\n\n`;
294
+ responseText += `**Valid:** ${result.validation.valid ? 'Yes' : 'No'}\n`;
295
+ if (result.validation.errors.length > 0) {
296
+ responseText += `\n### Errors\n`;
297
+ for (const err of result.validation.errors) {
298
+ responseText += `- **${err.code}:** ${err.message}`;
299
+ if (err.suggestion) {
300
+ responseText += `\n 💡 ${err.suggestion}`;
301
+ }
302
+ responseText += `\n`;
303
+ }
304
+ }
305
+ if (result.validation.warnings.length > 0) {
306
+ responseText += `\n### Warnings\n`;
307
+ for (const warn of result.validation.warnings) {
308
+ responseText += `- **${warn.code}:** ${warn.message}`;
309
+ if (warn.suggestion) {
310
+ responseText += `\n 💡 ${warn.suggestion}`;
311
+ }
312
+ responseText += `\n`;
313
+ }
314
+ }
315
+ // Detection warnings
316
+ if (result.detection.warnings && result.detection.warnings.length > 0) {
317
+ responseText += `\n### Detection Notes\n`;
318
+ for (const warn of result.detection.warnings) {
319
+ responseText += `- ${warn}\n`;
320
+ }
321
+ }
322
+ // Existing vtp.yaml config
323
+ if (result.vtpConfig) {
324
+ responseText += `\n## Existing vtp.yaml\n\n`;
325
+ responseText += `\`\`\`yaml\n${JSON.stringify(result.vtpConfig, null, 2)}\n\`\`\`\n`;
326
+ }
327
+ return {
328
+ content: [{
329
+ type: 'text',
330
+ text: responseText,
331
+ }],
332
+ };
333
+ }
182
334
  default:
183
335
  return {
184
336
  content: [{
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -16,6 +16,30 @@ export declare const GuideTypeSchema: z.ZodObject<{
16
16
  }, {
17
17
  type: string;
18
18
  }>;
19
+ export declare const GetLogsSchema: z.ZodObject<{
20
+ app_id: z.ZodString;
21
+ lines: z.ZodOptional<z.ZodNumber>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ app_id: string;
24
+ lines?: number | undefined;
25
+ }, {
26
+ app_id: string;
27
+ lines?: number | undefined;
28
+ }>;
29
+ export declare const GetAppConfigSchema: z.ZodObject<{
30
+ app_id: z.ZodString;
31
+ }, "strip", z.ZodTypeAny, {
32
+ app_id: string;
33
+ }, {
34
+ app_id: string;
35
+ }>;
36
+ export declare const DetectFrameworkSchema: z.ZodObject<{
37
+ path: z.ZodOptional<z.ZodString>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ path?: string | undefined;
40
+ }, {
41
+ path?: string | undefined;
42
+ }>;
19
43
  export declare const toolDefinitions: ({
20
44
  name: string;
21
45
  description: string;
@@ -25,6 +49,9 @@ export declare const toolDefinitions: ({
25
49
  type?: undefined;
26
50
  config?: undefined;
27
51
  force?: undefined;
52
+ app_id?: undefined;
53
+ lines?: undefined;
54
+ path?: undefined;
28
55
  };
29
56
  required?: undefined;
30
57
  };
@@ -40,6 +67,9 @@ export declare const toolDefinitions: ({
40
67
  };
41
68
  config?: undefined;
42
69
  force?: undefined;
70
+ app_id?: undefined;
71
+ lines?: undefined;
72
+ path?: undefined;
43
73
  };
44
74
  required: string[];
45
75
  };
@@ -58,6 +88,66 @@ export declare const toolDefinitions: ({
58
88
  description: string;
59
89
  };
60
90
  type?: undefined;
91
+ app_id?: undefined;
92
+ lines?: undefined;
93
+ path?: undefined;
94
+ };
95
+ required: never[];
96
+ };
97
+ } | {
98
+ name: string;
99
+ description: string;
100
+ inputSchema: {
101
+ type: string;
102
+ properties: {
103
+ app_id: {
104
+ type: string;
105
+ description: string;
106
+ };
107
+ type?: undefined;
108
+ config?: undefined;
109
+ force?: undefined;
110
+ lines?: undefined;
111
+ path?: undefined;
112
+ };
113
+ required: string[];
114
+ };
115
+ } | {
116
+ name: string;
117
+ description: string;
118
+ inputSchema: {
119
+ type: string;
120
+ properties: {
121
+ app_id: {
122
+ type: string;
123
+ description: string;
124
+ };
125
+ lines: {
126
+ type: string;
127
+ description: string;
128
+ };
129
+ type?: undefined;
130
+ config?: undefined;
131
+ force?: undefined;
132
+ path?: undefined;
133
+ };
134
+ required: string[];
135
+ };
136
+ } | {
137
+ name: string;
138
+ description: string;
139
+ inputSchema: {
140
+ type: string;
141
+ properties: {
142
+ path: {
143
+ type: string;
144
+ description: string;
145
+ };
146
+ type?: undefined;
147
+ config?: undefined;
148
+ force?: undefined;
149
+ app_id?: undefined;
150
+ lines?: undefined;
61
151
  };
62
152
  required: never[];
63
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,YAAY;;;;;;;;;EAGvB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwJ3B,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,YAAY;;;;;;;;;EAGvB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;EAGxB,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;EAE7B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmH3B,CAAC"}
package/dist/tools.js CHANGED
@@ -7,25 +7,33 @@ export const DeploySchema = z.object({
7
7
  export const GuideTypeSchema = z.object({
8
8
  type: z.string().describe('App type from list_app_types (e.g., "nextjs", "spa", "node")'),
9
9
  });
10
+ export const GetLogsSchema = z.object({
11
+ app_id: z.string().describe('The app ID (use "list" to see deployed apps)'),
12
+ lines: z.number().optional().describe('Number of log lines to retrieve (default: 100)'),
13
+ });
14
+ export const GetAppConfigSchema = z.object({
15
+ app_id: z.string().describe('The app ID (use "list" to see deployed apps)'),
16
+ });
17
+ export const DetectFrameworkSchema = z.object({
18
+ path: z.string().optional().describe('Path to the project directory (default: current directory)'),
19
+ });
10
20
  // Tool definitions for MCP
11
21
  export const toolDefinitions = [
22
+ {
23
+ name: 'how_to_deploy',
24
+ description: `Get the deployment workflow for VTP.
25
+
26
+ Call this FIRST when deploying an app. VTP is designed for AI agents to handle deployments - the user should not need to understand DevOps. This tool explains the required steps to ensure successful deployment.`,
27
+ inputSchema: {
28
+ type: 'object',
29
+ properties: {},
30
+ },
31
+ },
12
32
  {
13
33
  name: 'list_app_types',
14
34
  description: `List supported app types for deployment.
15
35
 
16
- DEPLOYMENT WORKFLOW (all steps required):
17
- 1. list_app_types → identify your app type
18
- 2. get_deployment_guide → ALWAYS call this before deploy, even if vtp.yaml exists
19
- 3. list_supported_connections → if app uses API keys (OpenAI, Anthropic, TMDB, etc.)
20
- 4. list → check if app already exists (redeploy vs new)
21
- 5. Review files in deploy path, add 'ignore' to vtp.yaml for files not needed at runtime
22
- 6. deploy → deploy the app
23
-
24
- After identifying the type, call get_deployment_guide to get the vtp.yaml template.
25
-
26
- API KEYS: If the app uses third-party APIs (OpenAI, Anthropic, etc.), call list_supported_connections to see available services. Use 'connections' in vtp.yaml instead of hardcoding keys in 'env'.
27
-
28
- MULTI-TENANCY: If the app needs per-user data or personalisation, also call get_deployment_guide with type="multi-tenancy" to learn about VTP's automatic user identity headers.`,
36
+ Use this to see what frameworks VTP supports (Next.js, SvelteKit, Remix, Astro, Nuxt, Vite, Node.js, static).`,
29
37
  inputSchema: {
30
38
  type: 'object',
31
39
  properties: {},
@@ -33,21 +41,9 @@ MULTI-TENANCY: If the app needs per-user data or personalisation, also call get_
33
41
  },
34
42
  {
35
43
  name: 'get_deployment_guide',
36
- description: `Get deployment instructions and vtp.yaml template for an app type.
44
+ description: `Get the vtp.yaml template and deployment instructions for an app type.
37
45
 
38
- MANDATORY: Call this before EVERY deployment - even if vtp.yaml already exists.
39
- This ensures your configuration matches the latest requirements.
40
-
41
- Returns a vtp.yaml template with 'predeploy' commands that automatically handle:
42
- - Building the app (npm run build, etc.)
43
- - Copying assets (for Next.js standalone, etc.)
44
-
45
- CRITICAL FOR NODE APPS: Before creating vtp.yaml, check if the app uses SQLite or writes files:
46
- - Look for: better-sqlite3, sql.js, sqlite3, prisma with SQLite, fs.writeFile to data files
47
- - If found: You MUST add 'volumes' config AND update the app to use the volume path
48
- - Without volumes, all data is lost on every redeployment
49
-
50
- Copy the vtp.yaml template, adjust the app name, then call deploy.`,
46
+ Call this before deploying to get framework-specific configuration guidance.`,
51
47
  inputSchema: {
52
48
  type: 'object',
53
49
  properties: {
@@ -61,66 +57,13 @@ Copy the vtp.yaml template, adjust the app name, then call deploy.`,
61
57
  },
62
58
  {
63
59
  name: 'deploy',
64
- description: `PREREQUISITES (complete ALL before deploying):
65
- 1. Call get_deployment_guide to verify vtp.yaml config (even if it already exists)
66
- 2. Call list to check if this app already exists (redeploy vs new deployment)
67
- 3. Review files in deploy path - add 'ignore' to vtp.yaml for files not needed at runtime
68
-
69
- Deploy a web app to VTP.
70
-
71
- The vtp.yaml 'predeploy' commands run automatically before packaging.
72
- You do NOT need to manually run build commands - predeploy handles it.
73
-
74
- REQUIRED: vtp.yaml with:
75
- name: My App Name # Display name (shown in dashboard)
76
- id: my-app # Optional: URL slug (auto-generated from name if omitted)
77
- description: Brief description of the app
78
- type: static|node
79
- path: ./dist
80
- predeploy: npm run build # Runs automatically!
81
- ignore: # Exclude unnecessary files
82
- - node_modules # ALWAYS exclude - reinstalled in container
83
- - src # Source files if deploying compiled output
84
-
85
- NAME vs ID:
86
- - name: Human-friendly display name (e.g., "My Budget Tracker")
87
- - id: URL-safe identifier used for: https://{id}.{user}.myvtp.dev, container name, volumes
88
- If omitted, auto-generated from name: "My Budget Tracker" → "my-budget-tracker"
89
- Rules: lowercase, letters/numbers/hyphens only, max 63 chars
60
+ description: `Deploy a web app to VTP.
90
61
 
91
- CRITICAL - FOR APPS WITH DATABASES OR FILE STORAGE:
92
- You MUST add volumes or data will be lost on redeploy:
93
- volumes:
94
- data: /app/data
95
- AND update the app code to write to the volume path (e.g., /app/data/app.db)
62
+ Prerequisites:
63
+ 1. Call get_deployment_guide first
64
+ 2. Call list to check if app already exists (redeploy needs force: true)
96
65
 
97
- FILE EXCLUSION:
98
- - .env files and .git are excluded automatically (security)
99
- - .gitignore patterns are respected if the file exists
100
- - Add 'ignore' in vtp.yaml for anything else not needed at runtime
101
-
102
- API KEYS & SECRETS (OpenAI, Anthropic, TMDB, etc.):
103
- Use 'connections' instead of hardcoding API keys in 'env':
104
- connections:
105
- - openai # Injects OPENAI_API_KEY automatically
106
- - anthropic # Injects ANTHROPIC_API_KEY automatically
107
- - tmdb # Injects TMDB_API_KEY automatically
108
-
109
- User must configure keys at https://home.myvtp.app/profile/connections before the app can start.
110
- Call list_supported_connections to see all available services.
111
-
112
- MULTI-TENANCY (automatic user identity):
113
- VTP injects the authenticated user's identity into every request via headers:
114
- - X-VTP-User: Unique user ID (use as database foreign key)
115
- - X-VTP-Email: User's email address
116
- - X-VTP-Slug: URL-safe username
117
- - X-VTP-User-Name: Display name for UI
118
- - X-VTP-Role: 'user' or 'admin'
119
-
120
- To build multi-tenant apps, read these headers and use X-VTP-User as the owner key for all data.
121
- No authentication code needed - VTP handles login automatically.
122
-
123
- For detailed examples (Express, Next.js, Hono, database patterns), call get_deployment_guide with type="multi-tenancy".`,
66
+ VTP auto-detects frameworks and builds server-side. Often just \`name: My App\` in vtp.yaml is enough.`,
124
67
  inputSchema: {
125
68
  type: 'object',
126
69
  properties: {
@@ -134,30 +77,60 @@ For detailed examples (Express, Next.js, Hono, database patterns), call get_depl
134
77
  name: 'list',
135
78
  description: `List all deployed apps with their status and URLs.
136
79
 
137
- Call this before deploying to check if the app already exists (redeploy requires force flag).`,
80
+ Call before deploying to check if an app already exists.`,
138
81
  inputSchema: {
139
82
  type: 'object',
140
83
  properties: {},
141
84
  },
142
85
  },
143
86
  {
144
- name: 'list_supported_connections',
145
- description: `List available third-party service connections that VTP apps can use.
87
+ name: 'get_app_config',
88
+ description: `Get the deployment configuration for an existing app.
146
89
 
147
- This shows services like OpenAI, Anthropic, and Gemini that users can connect to their VTP account.
148
- Apps declare required connections in vtp.yaml and receive credentials as environment variables at runtime.
90
+ Use this when redeploying an app that exists but has no local vtp.yaml - retrieves the config used in the previous deployment (connections, volumes, etc.).`,
91
+ inputSchema: {
92
+ type: 'object',
93
+ properties: {
94
+ app_id: { type: 'string', description: 'The app ID (use "list" to see deployed apps)' },
95
+ },
96
+ required: ['app_id'],
97
+ },
98
+ },
99
+ {
100
+ name: 'list_supported_connections',
101
+ description: `List available third-party API connections (OpenAI, Anthropic, etc.).
149
102
 
150
- Example vtp.yaml usage:
151
- connections:
152
- - openai
153
- - anthropic
103
+ Use this if your app needs API keys - connections inject credentials automatically at runtime.`,
104
+ inputSchema: {
105
+ type: 'object',
106
+ properties: {},
107
+ },
108
+ },
109
+ {
110
+ name: 'get_logs',
111
+ description: `Get container logs for a deployed app.
154
112
 
155
- The user must configure their API keys at https://home.myvtp.app/profile/connections before the app can start.
113
+ Use this to debug startup failures, runtime errors, or connection issues.`,
114
+ inputSchema: {
115
+ type: 'object',
116
+ properties: {
117
+ app_id: { type: 'string', description: 'The app ID (use "list" to see deployed apps)' },
118
+ lines: { type: 'number', description: 'Number of log lines to retrieve (default: 100, max: 1000)' },
119
+ },
120
+ required: ['app_id'],
121
+ },
122
+ },
123
+ {
124
+ name: 'detect_framework',
125
+ description: `Detect the framework and optimal deployment configuration for a project.
156
126
 
157
- Returns: Service IDs, names, descriptions, required fields, and documentation URLs.`,
127
+ Use this to see what VTP will auto-detect before deploying.`,
158
128
  inputSchema: {
159
129
  type: 'object',
160
- properties: {},
130
+ properties: {
131
+ path: { type: 'string', description: 'Path to the project directory (default: current directory)' },
132
+ },
133
+ required: [],
161
134
  },
162
135
  },
163
136
  ];
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,yBAAyB;AACzB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAChF,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CAC9E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;CAC1F,CAAC,CAAC;AAEH,2BAA2B;AAC3B,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE;;;;;;;;;;;;;;iLAcgK;QAC7K,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE;;;;;;;;;;;;;;mEAckD;QAC/D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wHA2DuG;QACpH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;gBACjF,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mCAAmC,EAAE;aAC7E;YACD,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;;8FAE6E;QAC1F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE;;;;;;;;;;;;oFAYmE;QAChF,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,yBAAyB;AACzB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAChF,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;CAC9E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;CAC1F,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;CACxF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;CAC5E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;CACnG,CAAC,CAAC;AAEH,2BAA2B;AAC3B,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE;;mNAEkM;QAC/M,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE;;8GAE6F;QAC1G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE;;6EAE4D;QACzE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE;;;;;;uGAMsF;QACnG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;gBACjF,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mCAAmC,EAAE;aAC7E;YACD,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;;yDAEwC;QACrD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE;;4JAE2I;QACxJ,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;aACxF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE;;+FAE8E;QAC3F,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE;;0EAEyD;QACtE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;gBACvF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;aACpG;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE;;4DAE2C;QACxD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4DAA4D,EAAE;aACpG;YACD,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ignoreFilter.d.ts","sourceRoot":"","sources":["../../src/utils/ignoreFilter.ts"],"names":[],"mappings":"AAAA,OAAe,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAqBxC;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,EAAE,CAAC,EAAE,MAAM,EACX,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB"}
1
+ {"version":3,"file":"ignoreFilter.d.ts","sourceRoot":"","sources":["../../src/utils/ignoreFilter.ts"],"names":[],"mappings":"AAAA,OAAe,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAmCxC;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,MAAM,CAAC,CAkBjB;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,EAAE,EACvB,EAAE,CAAC,EAAE,MAAM,EACX,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB"}
@@ -2,10 +2,8 @@ import ignore from 'ignore';
2
2
  import { readFile, readdir, stat } from 'fs/promises';
3
3
  import { join } from 'path';
4
4
  /**
5
- * Patterns that are ALWAYS excluded for security.
5
+ * Patterns that are ALWAYS excluded for security and efficiency.
6
6
  * These apply even if no .gitignore exists.
7
- *
8
- * Keep this list minimal - users control other exclusions via .gitignore.
9
7
  */
10
8
  const ALWAYS_IGNORED = [
11
9
  // Environment files (secrets) - ALWAYS excluded
@@ -15,6 +13,20 @@ const ALWAYS_IGNORED = [
15
13
  '.env.*.local',
16
14
  // Version control - never needed in deployment
17
15
  '.git',
16
+ // Build outputs - builds happen server-side now
17
+ // Excluding these prevents uploading large build artifacts
18
+ '.next', // Next.js build output
19
+ '.output', // Nuxt 3 / Nitro output
20
+ '.svelte-kit', // SvelteKit build output
21
+ '.nuxt', // Nuxt build cache
22
+ '.astro', // Astro build cache
23
+ 'dist', // Common build output
24
+ 'build', // Common build output (CRA, etc.)
25
+ 'out', // Next.js static export
26
+ '.vercel', // Vercel build output
27
+ '.netlify', // Netlify build output
28
+ // Dependencies - will be installed server-side
29
+ 'node_modules',
18
30
  ];
19
31
  /**
20
32
  * Create an ignore filter for a directory.
@@ -1 +1 @@
1
- {"version":3,"file":"ignoreFilter.js","sourceRoot":"","sources":["../../src/utils/ignoreFilter.ts"],"names":[],"mappings":"AAAA,OAAO,MAAkB,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B;;;;;GAKG;AACH,MAAM,cAAc,GAAG;IACrB,gDAAgD;IAChD,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,cAAc;IAEd,+CAA+C;IAC/C,MAAM;CACP,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,YAAuB;IAEvB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAExC,0CAA0C;IAC1C,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAED,6BAA6B;IAC7B,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACvD,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,kCAAkC;IACpC,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,YAAuB,EACvB,EAAW,EACX,WAAmB,EAAE;IAErB,yCAAyC;IACzC,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,EAAE,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;IAExD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAE9C,uCAAuC;QACvC,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;YAC5B,6DAA6D;YAC7D,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC;gBACnC,SAAS;YACX,CAAC;YAED,yBAAyB;YACzB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC;YACnF,KAAK,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"ignoreFilter.js","sourceRoot":"","sources":["../../src/utils/ignoreFilter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@myvtp/mcp",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "MCP server for VTP - deploy apps via Claude Code",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",