@kya-os/create-mcpi-app 1.5.0 → 1.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-cloudflare-mcpi-template.d.ts","sourceRoot":"","sources":["../../src/helpers/fetch-cloudflare-mcpi-template.ts"],"names":[],"mappings":"AAKA,UAAU,6BAA6B;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,IAAI,CAAC,CAs8Cf"}
1
+ {"version":3,"file":"fetch-cloudflare-mcpi-template.d.ts","sourceRoot":"","sources":["../../src/helpers/fetch-cloudflare-mcpi-template.ts"],"names":[],"mappings":"AAKA,UAAU,6BAA6B;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,IAAI,CAAC,CA+8Df"}
@@ -21,6 +21,8 @@ export async function fetchCloudflareMcpiTemplate(projectPath, options = {}) {
21
21
  version: "0.1.0",
22
22
  private: true,
23
23
  scripts: {
24
+ setup: "node scripts/setup.js",
25
+ postinstall: "npm run setup",
24
26
  deploy: "wrangler deploy",
25
27
  dev: "wrangler dev",
26
28
  start: "wrangler dev",
@@ -46,6 +48,9 @@ export async function fetchCloudflareMcpiTemplate(projectPath, options = {}) {
46
48
  "kv:setup": "echo 'KV Commands: kv:create (create all), kv:list (list all), kv:keys-* (view keys), kv:delete (delete all), kv:reset (delete+recreate)'",
47
49
  "cf-typegen": "wrangler types",
48
50
  "type-check": "tsc --noEmit",
51
+ test: "vitest",
52
+ "test:watch": "vitest --watch",
53
+ "test:coverage": "vitest run --coverage",
49
54
  },
50
55
  dependencies: {
51
56
  "@kya-os/mcp-i-cloudflare": "^1.3.2",
@@ -56,7 +61,10 @@ export async function fetchCloudflareMcpiTemplate(projectPath, options = {}) {
56
61
  },
57
62
  devDependencies: {
58
63
  "@cloudflare/workers-types": "^4.20240925.0",
64
+ "@vitest/coverage-v8": "^3.2.4",
65
+ "miniflare": "^3.0.0",
59
66
  "typescript": "^5.6.2",
67
+ "vitest": "^3.2.4",
60
68
  "wrangler": "^4.42.2",
61
69
  },
62
70
  };
@@ -66,6 +74,500 @@ export async function fetchCloudflareMcpiTemplate(projectPath, options = {}) {
66
74
  const srcDir = path.join(projectPath, "src");
67
75
  const toolsDir = path.join(srcDir, "tools");
68
76
  fs.ensureDirSync(toolsDir);
77
+ // Create scripts directory
78
+ const scriptsDir = path.join(projectPath, "scripts");
79
+ fs.ensureDirSync(scriptsDir);
80
+ // Create setup.js automation script
81
+ const setupScriptContent = `#!/usr/bin/env node
82
+
83
+ /**
84
+ * Automated Setup Script for ${projectName}
85
+ *
86
+ * This script automates the tedious process of:
87
+ * 1. Checking/installing wrangler
88
+ * 2. Creating KV namespaces
89
+ * 3. Extracting namespace IDs
90
+ * 4. Updating wrangler.toml automatically
91
+ * 5. Setting up local development environment
92
+ */
93
+
94
+ const { execSync } = require('child_process');
95
+ const fs = require('fs');
96
+ const path = require('path');
97
+ const readline = require('readline');
98
+
99
+ const rl = readline.createInterface({
100
+ input: process.stdin,
101
+ output: process.stdout
102
+ });
103
+
104
+ // Colors for terminal output
105
+ const colors = {
106
+ reset: '\\x1b[0m',
107
+ bright: '\\x1b[1m',
108
+ green: '\\x1b[32m',
109
+ yellow: '\\x1b[33m',
110
+ blue: '\\x1b[36m',
111
+ red: '\\x1b[31m'
112
+ };
113
+
114
+ function log(message, color = colors.reset) {
115
+ console.log(color + message + colors.reset);
116
+ }
117
+
118
+ async function setup() {
119
+ log('\\nšŸš€ Starting automated setup for ${projectName}...\\n', colors.bright + colors.blue);
120
+
121
+ // 1. Check wrangler installation
122
+ try {
123
+ const wranglerVersion = execSync('wrangler --version', { encoding: 'utf-8' });
124
+ log('āœ… Wrangler CLI detected: ' + wranglerVersion.trim(), colors.green);
125
+ } catch {
126
+ log('šŸ“¦ Wrangler CLI not found. Installing...', colors.yellow);
127
+ try {
128
+ execSync('npm install -g wrangler', { stdio: 'inherit' });
129
+ log('āœ… Wrangler CLI installed successfully', colors.green);
130
+ } catch (error) {
131
+ log('āŒ Failed to install Wrangler. Please install manually: npm install -g wrangler', colors.red);
132
+ process.exit(1);
133
+ }
134
+ }
135
+
136
+ // 2. Check if user is logged in to Cloudflare
137
+ try {
138
+ execSync('wrangler whoami', { encoding: 'utf-8' });
139
+ log('āœ… Logged in to Cloudflare', colors.green);
140
+ } catch {
141
+ log('šŸ”‘ Please log in to Cloudflare:', colors.yellow);
142
+ try {
143
+ execSync('wrangler login', { stdio: 'inherit' });
144
+ } catch (error) {
145
+ log('āŒ Login failed. Please run: wrangler login', colors.red);
146
+ process.exit(1);
147
+ }
148
+ }
149
+
150
+ // 3. Create KV namespaces
151
+ log('\\nšŸ“š Creating KV namespaces...\\n', colors.bright);
152
+
153
+ const namespaces = [
154
+ { binding: '${className.toUpperCase()}_NONCE_CACHE', name: 'Nonce Cache', purpose: 'Replay attack prevention' },
155
+ { binding: '${className.toUpperCase()}_PROOF_ARCHIVE', name: 'Proof Archive', purpose: 'Cryptographic proof storage' },
156
+ { binding: '${className.toUpperCase()}_IDENTITY_STORAGE', name: 'Identity Storage', purpose: 'Agent identity persistence' },
157
+ { binding: '${className.toUpperCase()}_DELEGATION_STORAGE', name: 'Delegation Storage', purpose: 'OAuth token storage' },
158
+ { binding: '${className.toUpperCase()}_TOOL_PROTECTION_KV', name: 'Tool Protection', purpose: 'Permission caching' }
159
+ ];
160
+
161
+ const kvIds = {};
162
+ const wranglerTomlPath = path.join(__dirname, '..', 'wrangler.toml');
163
+
164
+ for (const ns of namespaces) {
165
+ log(\`Creating \${ns.name} (\${ns.purpose})...\`, colors.blue);
166
+
167
+ try {
168
+ // Create the namespace
169
+ const output = execSync(\`wrangler kv namespace create "\${ns.binding}"\`, { encoding: 'utf-8' });
170
+
171
+ // Extract the ID from output
172
+ const idMatch = output.match(/id = "([^"]+)"/);
173
+
174
+ if (idMatch && idMatch[1]) {
175
+ kvIds[ns.binding] = idMatch[1];
176
+ log(\` āœ… Created with ID: \${idMatch[1]}\`, colors.green);
177
+ } else {
178
+ // Try to get existing namespace
179
+ const listOutput = execSync('wrangler kv namespace list', { encoding: 'utf-8' });
180
+ const existingMatch = listOutput.match(new RegExp(\`\${ns.binding}.*?id":\\s*"([^"]+)"\`));
181
+
182
+ if (existingMatch && existingMatch[1]) {
183
+ kvIds[ns.binding] = existingMatch[1];
184
+ log(\` āš ļø Namespace already exists with ID: \${existingMatch[1]}\`, colors.yellow);
185
+ } else {
186
+ log(\` āš ļø Could not extract ID for \${ns.binding}. You may need to add it manually.\`, colors.yellow);
187
+ }
188
+ }
189
+ } catch (error) {
190
+ // Check if namespace already exists
191
+ try {
192
+ const listOutput = execSync('wrangler kv namespace list', { encoding: 'utf-8' });
193
+ const existingMatch = listOutput.match(new RegExp(\`\${ns.binding}.*?id":\\s*"([^"]+)"\`));
194
+
195
+ if (existingMatch && existingMatch[1]) {
196
+ kvIds[ns.binding] = existingMatch[1];
197
+ log(\` āš ļø Namespace already exists with ID: \${existingMatch[1]}\`, colors.yellow);
198
+ } else {
199
+ log(\` āŒ Failed to create \${ns.binding}: \${error.message}\`, colors.red);
200
+ }
201
+ } catch (listError) {
202
+ log(\` āŒ Failed to create or find \${ns.binding}\`, colors.red);
203
+ }
204
+ }
205
+ }
206
+
207
+ // 4. Update wrangler.toml with KV IDs
208
+ if (Object.keys(kvIds).length > 0) {
209
+ log('\\nšŸ“ Updating wrangler.toml with KV namespace IDs...\\n', colors.bright);
210
+
211
+ try {
212
+ let wranglerContent = fs.readFileSync(wranglerTomlPath, 'utf-8');
213
+ let updatedCount = 0;
214
+
215
+ for (const [binding, id] of Object.entries(kvIds)) {
216
+ // Match pattern: binding = "BINDING_NAME"\\nid = ""
217
+ const pattern = new RegExp(\`(binding = "\${binding}")\\\\s*\\\\nid = ""\`, 'g');
218
+ const replacement = \`$1\\nid = "\${id}"\`;
219
+
220
+ const newContent = wranglerContent.replace(pattern, replacement);
221
+ if (newContent !== wranglerContent) {
222
+ updatedCount++;
223
+ log(\` āœ… Updated \${binding} with ID: \${id}\`, colors.green);
224
+ }
225
+ wranglerContent = newContent;
226
+ }
227
+
228
+ fs.writeFileSync(wranglerTomlPath, wranglerContent);
229
+ log(\`\\nāœ… Updated \${updatedCount} namespace ID(s) in wrangler.toml\`, colors.green);
230
+
231
+ // Show remaining empty IDs if any
232
+ const emptyMatches = wranglerContent.match(/binding = "[^"]+"\s*\nid = ""/g);
233
+ if (emptyMatches) {
234
+ log('\\nāš ļø Some namespace IDs still need to be added manually:', colors.yellow);
235
+ emptyMatches.forEach(match => {
236
+ const bindingMatch = match.match(/binding = "([^"]+)"/);
237
+ if (bindingMatch) {
238
+ log(\` - \${bindingMatch[1]}\`, colors.yellow);
239
+ }
240
+ });
241
+ }
242
+ } catch (error) {
243
+ log(\`āŒ Failed to update wrangler.toml: \${error.message}\`, colors.red);
244
+ }
245
+ }
246
+
247
+ // 5. Create .dev.vars from example if it doesn't exist
248
+ const devVarsPath = path.join(__dirname, '..', '.dev.vars');
249
+ const devVarsExamplePath = path.join(__dirname, '..', '.dev.vars.example');
250
+
251
+ if (!fs.existsSync(devVarsPath) && fs.existsSync(devVarsExamplePath)) {
252
+ log('\\nšŸ“‹ Creating .dev.vars from example...', colors.blue);
253
+ fs.copyFileSync(devVarsExamplePath, devVarsPath);
254
+ log('āœ… Created .dev.vars - Please update with your values', colors.green);
255
+ }
256
+
257
+ // 6. Check if identity needs to be generated
258
+ if (fs.existsSync(devVarsPath)) {
259
+ const devVarsContent = fs.readFileSync(devVarsPath, 'utf-8');
260
+ if (devVarsContent.includes('your-private-key-here')) {
261
+ log('\\nšŸ”‘ Generating agent identity...', colors.blue);
262
+ try {
263
+ execSync('npx @kya-os/create-mcpi-app regenerate-identity', { stdio: 'inherit' });
264
+ log('āœ… Identity generated successfully', colors.green);
265
+ } catch {
266
+ log('āš ļø Could not generate identity automatically. Run: npx @kya-os/create-mcpi-app regenerate-identity', colors.yellow);
267
+ }
268
+ }
269
+ }
270
+
271
+ // 7. Show next steps
272
+ log('\\n✨ Setup complete! Next steps:\\n', colors.bright + colors.green);
273
+ log('1. Review .dev.vars and add any missing values (AgentShield API key, etc.)', colors.blue);
274
+ log('2. Start development server: npm run dev', colors.blue);
275
+ log('3. Deploy to production: npm run deploy', colors.blue);
276
+ log('\\nUseful commands:', colors.bright);
277
+ log(' npm run dev - Start local development server');
278
+ log(' npm run deploy - Deploy to Cloudflare Workers');
279
+ log(' npm run kv:list - List all KV namespaces');
280
+ log(' wrangler secret put <KEY> - Set production secrets');
281
+ log('\\nFor more information, see the README.md file.\\n');
282
+
283
+ rl.close();
284
+ }
285
+
286
+ // Handle errors gracefully
287
+ process.on('unhandledRejection', (error) => {
288
+ log(\`\\nāŒ Setup failed: \${error.message}\`, colors.red);
289
+ process.exit(1);
290
+ });
291
+
292
+ // Run the setup
293
+ setup().catch((error) => {
294
+ log(\`\\nāŒ Setup failed: \${error.message}\`, colors.red);
295
+ process.exit(1);
296
+ });
297
+ `;
298
+ fs.writeFileSync(path.join(scriptsDir, "setup.js"), setupScriptContent);
299
+ // Make setup script executable
300
+ if (process.platform !== 'win32') {
301
+ fs.chmodSync(path.join(scriptsDir, "setup.js"), '755');
302
+ }
303
+ // Create tests directory
304
+ const testsDir = path.join(projectPath, "tests");
305
+ fs.ensureDirSync(testsDir);
306
+ // Create delegation test file
307
+ const delegationTestContent = `import { describe, test, expect, vi, beforeEach } from 'vitest';
308
+
309
+ /**
310
+ * Delegation Management Tests
311
+ * Tests delegation verification, caching, and invalidation
312
+ */
313
+ describe('Delegation Management', () => {
314
+ const mockDelegationStorage = {
315
+ get: vi.fn(),
316
+ put: vi.fn(),
317
+ delete: vi.fn()
318
+ };
319
+
320
+ const mockVerificationCache = {
321
+ get: vi.fn(),
322
+ put: vi.fn(),
323
+ delete: vi.fn()
324
+ };
325
+
326
+ const mockEnv = {
327
+ ${className.toUpperCase()}_DELEGATION_STORAGE: mockDelegationStorage,
328
+ TOOL_PROTECTION_KV: mockVerificationCache,
329
+ AGENTSHIELD_API_KEY: 'test-key',
330
+ AGENTSHIELD_API_URL: 'https://test.agentshield.ai'
331
+ };
332
+
333
+ beforeEach(() => {
334
+ vi.clearAllMocks();
335
+ global.fetch = vi.fn();
336
+ });
337
+
338
+ test('should verify delegation token with AgentShield API', async () => {
339
+ const token = 'test-delegation-token';
340
+
341
+ // Mock verification cache miss
342
+ mockVerificationCache.get.mockResolvedValueOnce(null);
343
+
344
+ // Mock API success
345
+ global.fetch = vi.fn().mockResolvedValueOnce({
346
+ ok: true
347
+ });
348
+
349
+ // Test verification would happen here
350
+ expect(global.fetch).toHaveBeenCalledWith(
351
+ expect.stringContaining('/api/v1/bouncer/delegations/verify'),
352
+ expect.objectContaining({
353
+ method: 'POST',
354
+ body: JSON.stringify({ token })
355
+ })
356
+ );
357
+ });
358
+
359
+ test('should use 5-minute cache TTL for delegations', async () => {
360
+ const token = 'test-token';
361
+ const sessionId = 'test-session';
362
+
363
+ await mockDelegationStorage.put(
364
+ \`session:\${sessionId}\`,
365
+ token,
366
+ { expirationTtl: 300 } // 5 minutes
367
+ );
368
+
369
+ expect(mockDelegationStorage.put).toHaveBeenCalledWith(
370
+ expect.any(String),
371
+ token,
372
+ { expirationTtl: 300 }
373
+ );
374
+ });
375
+
376
+ test('should invalidate cache on revocation', async () => {
377
+ const sessionId = 'revoked-session';
378
+ const token = 'revoked-token';
379
+
380
+ // Test invalidation
381
+ await Promise.all([
382
+ mockDelegationStorage.delete(\`session:\${sessionId}\`),
383
+ mockVerificationCache.delete(\`verified:\${token.substring(0, 16)}\`)
384
+ ]);
385
+
386
+ expect(mockDelegationStorage.delete).toHaveBeenCalled();
387
+ expect(mockVerificationCache.delete).toHaveBeenCalled();
388
+ });
389
+ });
390
+ `;
391
+ fs.writeFileSync(path.join(testsDir, "delegation.test.ts"), delegationTestContent);
392
+ // Create DO routing test file
393
+ const doRoutingTestContent = `import { describe, test, expect } from 'vitest';
394
+
395
+ /**
396
+ * Durable Object Routing Tests
397
+ * Tests multi-instance DO routing for horizontal scaling
398
+ */
399
+ describe('DO Multi-Instance Routing', () => {
400
+
401
+ function getDoInstanceId(request: Request, env: any): string {
402
+ const strategy = env.DO_ROUTING_STRATEGY || 'session';
403
+ const headers = request.headers;
404
+
405
+ switch (strategy) {
406
+ case 'session': {
407
+ const sessionId = headers.get('mcp-session-id') ||
408
+ headers.get('Mcp-Session-Id') ||
409
+ crypto.randomUUID();
410
+ return \`session:\${sessionId}\`;
411
+ }
412
+
413
+ case 'shard': {
414
+ const identifier = headers.get('mcp-session-id') || Math.random().toString();
415
+ let hash = 0;
416
+ for (let i = 0; i < identifier.length; i++) {
417
+ hash = ((hash << 5) - hash) + identifier.charCodeAt(i);
418
+ hash = hash & hash;
419
+ }
420
+ const shardCount = parseInt(env.DO_SHARD_COUNT || '10');
421
+ const shard = Math.abs(hash) % shardCount;
422
+ return \`shard:\${shard}\`;
423
+ }
424
+
425
+ default:
426
+ return 'default';
427
+ }
428
+ }
429
+
430
+ test('should route to different instances for different sessions', () => {
431
+ const env = { DO_ROUTING_STRATEGY: 'session' };
432
+
433
+ const req1 = new Request('http://test/mcp', {
434
+ headers: { 'mcp-session-id': 'session-123' }
435
+ });
436
+ const req2 = new Request('http://test/mcp', {
437
+ headers: { 'mcp-session-id': 'session-456' }
438
+ });
439
+
440
+ const id1 = getDoInstanceId(req1, env);
441
+ const id2 = getDoInstanceId(req2, env);
442
+
443
+ expect(id1).toBe('session:session-123');
444
+ expect(id2).toBe('session:session-456');
445
+ expect(id1).not.toBe(id2);
446
+ });
447
+
448
+ test('should distribute load across shards', () => {
449
+ const env = {
450
+ DO_ROUTING_STRATEGY: 'shard',
451
+ DO_SHARD_COUNT: '10'
452
+ };
453
+
454
+ const distribution = new Map<string, number>();
455
+
456
+ // Generate 100 requests
457
+ for (let i = 0; i < 100; i++) {
458
+ const req = new Request('http://test/mcp', {
459
+ headers: { 'mcp-session-id': \`session-\${i}\` }
460
+ });
461
+
462
+ const instanceId = getDoInstanceId(req, env);
463
+ const shard = instanceId.split(':')[1];
464
+
465
+ distribution.set(shard, (distribution.get(shard) || 0) + 1);
466
+ }
467
+
468
+ // Should use multiple shards
469
+ expect(distribution.size).toBeGreaterThan(5);
470
+ });
471
+ });
472
+ `;
473
+ fs.writeFileSync(path.join(testsDir, "do-routing.test.ts"), doRoutingTestContent);
474
+ // Create security test file
475
+ const securityTestContent = `import { describe, test, expect } from 'vitest';
476
+
477
+ /**
478
+ * Security Tests
479
+ * Tests CORS configuration and API key handling
480
+ */
481
+ describe('Security Configuration', () => {
482
+
483
+ function getCorsOrigin(requestOrigin: string | null, env: any): string | null {
484
+ const allowedOrigins = env.ALLOWED_ORIGINS?.split(',').map((o: string) => o.trim()) || [
485
+ 'https://claude.ai',
486
+ 'https://app.anthropic.com'
487
+ ];
488
+
489
+ if (env.MCPI_ENV !== 'production' && !allowedOrigins.includes('http://localhost:3000')) {
490
+ allowedOrigins.push('http://localhost:3000');
491
+ }
492
+
493
+ const origin = requestOrigin || '';
494
+ const isAllowed = allowedOrigins.includes(origin);
495
+
496
+ return isAllowed ? origin : allowedOrigins[0];
497
+ }
498
+
499
+ test('should allow Claude.ai by default', () => {
500
+ const env = {};
501
+ const origin = 'https://claude.ai';
502
+ const result = getCorsOrigin(origin, env);
503
+
504
+ expect(result).toBe(origin);
505
+ });
506
+
507
+ test('should reject unauthorized origins', () => {
508
+ const env = { MCPI_ENV: 'production' };
509
+ const origin = 'https://evil.com';
510
+ const result = getCorsOrigin(origin, env);
511
+
512
+ expect(result).toBe('https://claude.ai');
513
+ expect(result).not.toBe(origin);
514
+ });
515
+
516
+ test('should not expose API keys in wrangler.toml', () => {
517
+ // This test validates that API keys are only in .dev.vars
518
+ const wranglerContent = \`
519
+ [vars]
520
+ AGENTSHIELD_API_URL = "https://kya.vouched.id"
521
+ # AGENTSHIELD_API_KEY - Set securely
522
+ \`;
523
+
524
+ expect(wranglerContent).not.toContain('sk_');
525
+ expect(wranglerContent).toContain('Set securely');
526
+ });
527
+
528
+ test('should use short TTLs for security', () => {
529
+ const DELEGATION_TTL = 300; // 5 minutes
530
+ const VERIFICATION_TTL = 60; // 1 minute
531
+
532
+ expect(DELEGATION_TTL).toBeLessThanOrEqual(300);
533
+ expect(VERIFICATION_TTL).toBeLessThanOrEqual(60);
534
+ });
535
+ });
536
+ `;
537
+ fs.writeFileSync(path.join(testsDir, "security.test.ts"), securityTestContent);
538
+ // Create vitest config file
539
+ const vitestConfigContent = `import { defineConfig } from 'vitest/config';
540
+
541
+ export default defineConfig({
542
+ test: {
543
+ environment: 'miniflare',
544
+ environmentOptions: {
545
+ kvNamespaces: [
546
+ '${className.toUpperCase()}_NONCE_CACHE',
547
+ '${className.toUpperCase()}_PROOF_ARCHIVE',
548
+ '${className.toUpperCase()}_IDENTITY_STORAGE',
549
+ '${className.toUpperCase()}_DELEGATION_STORAGE',
550
+ '${className.toUpperCase()}_TOOL_PROTECTION_KV'
551
+ ],
552
+ durableObjects: {
553
+ ${className.toUpperCase()}_OBJECT: '${pascalClassName}MCP'
554
+ }
555
+ },
556
+ coverage: {
557
+ provider: 'v8',
558
+ reporter: ['text', 'html'],
559
+ exclude: ['node_modules/', 'tests/', '*.config.ts'],
560
+ thresholds: {
561
+ statements: 80,
562
+ branches: 70,
563
+ functions: 80,
564
+ lines: 80
565
+ }
566
+ }
567
+ }
568
+ });
569
+ `;
570
+ fs.writeFileSync(path.join(projectPath, "vitest.config.ts"), vitestConfigContent);
69
571
  // Create greet tool
70
572
  const greetToolContent = `import { z } from "zod";
71
573
 
@@ -658,25 +1160,35 @@ export class ${pascalClassName}MCP extends McpAgent {
658
1160
  jwsValid: proof.jws.split('.').length === 3
659
1161
  });
660
1162
 
661
- // Store in KV archive
1163
+ // Parallelize proof operations for better performance
1164
+ const proofOperations: Promise<void>[] = [];
1165
+
1166
+ // Add proof archive operation
662
1167
  if (this.proofArchive) {
663
- try {
664
- await this.proofArchive.store(proof, {
1168
+ proofOperations.push(
1169
+ this.proofArchive.store(proof, {
665
1170
  toolName: greetTool.name
666
- });
667
- console.log('[MCP-I] Proof stored in archive');
668
- } catch (archiveError) {
669
- console.error('[MCP-I] Archive error:', archiveError);
670
- }
1171
+ }).then(() => {
1172
+ console.log('[MCP-I] Proof stored in archive');
1173
+ }).catch((archiveError: any) => {
1174
+ console.error('[MCP-I] Archive error:', archiveError);
1175
+ })
1176
+ );
671
1177
  }
672
1178
 
673
- // Submit to AgentShield with context
1179
+ // Add AgentShield submission operation
674
1180
  if (this.agentShieldConfig) {
675
- try {
676
- await this.submitProofToAgentShield(proof, session, greetTool.name, args, result);
677
- } catch (err: any) {
678
- console.error('[MCP-I] AgentShield failed:', err.message);
679
- }
1181
+ proofOperations.push(
1182
+ this.submitProofToAgentShield(proof, session, greetTool.name, args, result)
1183
+ .catch((err: any) => {
1184
+ console.error('[MCP-I] AgentShield failed:', err.message);
1185
+ })
1186
+ );
1187
+ }
1188
+
1189
+ // Execute all proof operations in parallel for better performance
1190
+ if (proofOperations.length > 0) {
1191
+ await Promise.allSettled(proofOperations);
680
1192
  }
681
1193
 
682
1194
  // Attach proof to result for MCP Inspector
@@ -1026,9 +1538,10 @@ XMCP_I_TS_SKEW_SEC = "120"
1026
1538
  XMCP_I_SESSION_TTL = "1800"
1027
1539
 
1028
1540
  # AgentShield Integration (https://kya.vouched.id)
1029
- # ${apikey ? 'Configure' : 'Uncomment and configure'} these variables to enable proof submission to AgentShield
1030
1541
  AGENTSHIELD_API_URL = "https://kya.vouched.id"
1031
- ${apikey ? `AGENTSHIELD_API_KEY = "${apikey}" # Provided via --apikey flag` : '# AGENTSHIELD_API_KEY = "sk_your_api_key_here" # Get from https://kya.vouched.id/dashboard'}
1542
+ # AGENTSHIELD_API_KEY - Set securely using one of these methods:
1543
+ # Development: Add to .dev.vars file (already configured if --apikey was provided)
1544
+ # Production: wrangler secret put AGENTSHIELD_API_KEY
1032
1545
  MCPI_ENV = "development"
1033
1546
 
1034
1547
  # Optional: MCP Server URL for tool discovery
@@ -1077,7 +1590,7 @@ MCP_IDENTITY_PRIVATE_KEY="${identity.privateKey}"
1077
1590
  MCP_IDENTITY_PUBLIC_KEY="${identity.publicKey}"
1078
1591
 
1079
1592
  # AgentShield API key (get from https://agentshield.ai)
1080
- AGENTSHIELD_API_KEY=""
1593
+ AGENTSHIELD_API_KEY="${apikey || ''}"${apikey ? ' # Provided via --apikey flag' : ''}
1081
1594
 
1082
1595
  # Admin API key for protected endpoints
1083
1596
  ADMIN_API_KEY=""
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-cloudflare-mcpi-template.js","sourceRoot":"","sources":["../../src/helpers/fetch-cloudflare-mcpi-template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch-cloudflare-mcpi-template.js","sourceRoot":"","sources":["../../src/helpers/fetch-cloudflare-mcpi-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAS1D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,WAAmB,EACnB,UAAyC,EAAE;IAE3C,MAAM,EAAE,cAAc,GAAG,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAEnH,wCAAwC;IACxC,MAAM,SAAS,GAAG,WAAW;SAC1B,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC;SAC5B,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5B,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/E,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;QAEzE,sBAAsB;QACtB,MAAM,WAAW,GAAG;YAClB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,OAAO,EAAE;gBACP,KAAK,EAAE,uBAAuB;gBAC9B,WAAW,EAAE,eAAe;gBAC5B,MAAM,EAAE,iBAAiB;gBACzB,GAAG,EAAE,cAAc;gBACnB,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,uJAAuJ;gBACpK,iBAAiB,EAAE,gCAAgC,SAAS,CAAC,WAAW,EAAE,cAAc;gBACxF,iBAAiB,EAAE,gCAAgC,SAAS,CAAC,WAAW,EAAE,gBAAgB;gBAC1F,oBAAoB,EAAE,gCAAgC,SAAS,CAAC,WAAW,EAAE,mBAAmB;gBAChG,sBAAsB,EAAE,gCAAgC,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBACpG,2BAA2B,EAAE,gCAAgC,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBACzG,SAAS,EAAE,6HAA6H;gBACxI,eAAe,EAAE,kCAAkC,SAAS,CAAC,WAAW,EAAE,cAAc;gBACxF,eAAe,EAAE,kCAAkC,SAAS,CAAC,WAAW,EAAE,gBAAgB;gBAC1F,kBAAkB,EAAE,kCAAkC,SAAS,CAAC,WAAW,EAAE,mBAAmB;gBAChG,oBAAoB,EAAE,kCAAkC,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBACpG,yBAAyB,EAAE,kCAAkC,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBACzG,iBAAiB,EAAE,0CAA0C,SAAS,CAAC,WAAW,EAAE,cAAc;gBAClG,iBAAiB,EAAE,0CAA0C,SAAS,CAAC,WAAW,EAAE,gBAAgB;gBACpG,oBAAoB,EAAE,0CAA0C,SAAS,CAAC,WAAW,EAAE,mBAAmB;gBAC1G,sBAAsB,EAAE,0CAA0C,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBAC9G,2BAA2B,EAAE,0CAA0C,SAAS,CAAC,WAAW,EAAE,qBAAqB;gBACnH,WAAW,EAAE,uJAAuJ;gBACpK,UAAU,EAAE,wCAAwC;gBACpD,UAAU,EAAE,2IAA2I;gBACvJ,YAAY,EAAE,gBAAgB;gBAC9B,YAAY,EAAE,cAAc;gBAC5B,IAAI,EAAE,QAAQ;gBACd,YAAY,EAAE,gBAAgB;gBAC9B,eAAe,EAAE,uBAAuB;aACzC;YACD,YAAY,EAAE;gBACZ,0BAA0B,EAAE,QAAQ;gBACpC,2BAA2B,EAAE,SAAS;gBACtC,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,SAAS;gBACjB,KAAK,EAAE,UAAU;aAClB;YACD,eAAe,EAAE;gBACf,2BAA2B,EAAE,eAAe;gBAC5C,qBAAqB,EAAE,QAAQ;gBAC/B,WAAW,EAAE,QAAQ;gBACrB,YAAY,EAAE,QAAQ;gBACtB,QAAQ,EAAE,QAAQ;gBAClB,UAAU,EAAE,SAAS;aACtB;SACF,CAAC;QAEF,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAC9B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAErF,iCAAiC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5C,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE3B,2BAA2B;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACrD,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE7B,oCAAoC;QACpC,MAAM,kBAAkB,GAAG;;;gCAGC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAmCC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmCrC,SAAS,CAAC,WAAW,EAAE;kBACvB,SAAS,CAAC,WAAW,EAAE;kBACvB,SAAS,CAAC,WAAW,EAAE;kBACvB,SAAS,CAAC,WAAW,EAAE;kBACvB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2IxC,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAExE,+BAA+B;QAC/B,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;QAED,yBAAyB;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACjD,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE3B,8BAA8B;QAC9B,MAAM,qBAAqB,GAAG;;;;;;;;;;;;;;;;;;;;MAoB5B,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+D5B,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,qBAAqB,CAAC,CAAC;QAEnF,8BAA8B;QAC9B,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+EhC,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,CAAC;QAElF,4BAA4B;QAC5B,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6D/B,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAE/E,4BAA4B;QAC5B,MAAM,mBAAmB,GAAG;;;;;;;WAOrB,SAAS,CAAC,WAAW,EAAE;WACvB,SAAS,CAAC,WAAW,EAAE;WACvB,SAAS,CAAC,WAAW,EAAE;WACvB,SAAS,CAAC,WAAW,EAAE;WACvB,SAAS,CAAC,WAAW,EAAE;;;UAGxB,SAAS,CAAC,WAAW,EAAE,aAAa,eAAe;;;;;;;;;;;;;;;;CAgB5D,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAElF,oBAAoB;QACpB,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4C5B,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAEpE,4DAA4D;QAC5D,MAAM,oBAAoB,GAAG;EAC/B,MAAM,CAAC,CAAC,CAAC,yGAAyG,CAAC,CAAC,CAAC,kHAAkH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqGnO,MAAM,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;mBAmBI,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;sBAkBA;;;;;;;;CAQrB,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,wBAAwB,CAAC,EAAE,oBAAoB,CAAC,CAAC;QAEpF,yDAAyD;QACzD,MAAM,YAAY,GAAG;;;;;;;;eAQV,eAAe;;aAEjB,WAAW;;;;;;;;;;;;;;;;;kCAiBU,SAAS,CAAC,WAAW,EAAE;oCACrB,SAAS,CAAC,WAAW,EAAE;uCACpB,SAAS,CAAC,WAAW,EAAE;yCACrB,SAAS,CAAC,WAAW,EAAE;yCACvB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kDAyDd,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kDAwIvB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAqV7C,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BA4CtB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAiD7B,eAAe;;;;;;;;;;;;;;;;;;;;;;CAsBrC,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;QAE9D,6CAA6C;QAC7C,MAAM,eAAe,GAAG;UAClB,WAAW;;;;;;;gBAOL,eAAe;;;;yBAIN,eAAe;;;;;;;;;;;;aAY3B,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;;aAavB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;aAYvB,SAAS,CAAC,WAAW,EAAE;;;;;;;;;;;;aAYvB,SAAS,CAAC,WAAW,EAAE;;;6CAGS,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;;;;;;;;;;;;;;;;EAgB1E,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;EAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,cAAc,SAAS,CAAC,WAAW,EAAE;EACvD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;;;;;;;;;;;;;;;;CAgBnB,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,eAAe,CAAC,CAAC;QAE3E,qDAAqD;QACrD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;YAEhE,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBAE1C,8BAA8B;gBAC9B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;gBAC7D,IAAI,mBAAmB,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAEhE,6DAA6D;gBAC7D,kEAAkE;gBAClE,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACxD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,cAAc,GAAG,SAAS,CAAC,KAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC9D,MAAM,YAAY,GAAG;;4BAEH,QAAQ,CAAC,GAAG;;;;;;;;;CASvC,CAAC;oBAEQ,mBAAmB;wBACjB,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC;4BAC5C,YAAY;4BACZ,mBAAmB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;oBAE5C,gDAAgD;oBAChD,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;oBAEpD,4DAA4D;oBAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;oBACxD,MAAM,cAAc,GAAG;;;;4BAIL,QAAQ,CAAC,UAAU;2BACpB,QAAQ,CAAC,SAAS;;;uBAGtB,MAAM,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,EAAE;;;;CAIpF,CAAC;oBACQ,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;oBAE9C,yCAAyC;oBACzC,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;oBACvE,MAAM,qBAAqB,GAAG;;;;;;;;;;;;CAYvC,CAAC;oBACQ,EAAE,CAAC,aAAa,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;oBAE5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;oBAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC,CAAC;oBAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;oBAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;oBACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC,CAAC;oBACrE,OAAO,CAAC,GAAG,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC;oBACrD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC,CAAC;oBAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC,CAAC;oBAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC,CAAC;oBAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;oBACxE,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kCAAkC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,CAAC;gBAChF,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG;YACtB,eAAe,EAAE;gBACf,MAAM,EAAE,QAAQ;gBAChB,MAAM,EAAE,QAAQ;gBAChB,GAAG,EAAE,CAAC,QAAQ,CAAC;gBACf,KAAK,EAAE,CAAC,2BAA2B,CAAC;gBACpC,gBAAgB,EAAE,SAAS;gBAC3B,iBAAiB,EAAE,IAAI;gBACvB,4BAA4B,EAAE,IAAI;gBAClC,eAAe,EAAE,IAAI;gBACrB,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,IAAI;gBAClB,gCAAgC,EAAE,IAAI;aACvC;YACD,OAAO,EAAE,CAAC,UAAU,CAAC;SACtB,CAAC;QACF,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAE1F,oBAAoB;QACpB,MAAM,gBAAgB,GAAG;;;;;;;CAO5B,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAEzE,mBAAmB;QACnB,MAAM,aAAa,GAAG,KAAK,WAAW;;;;;;;;;;;;;;;;;;EAkBxC,cAAc;;;;;;;;EAQd,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAmCjD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;MACrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;MACrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;MACrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;MACrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;EAKzD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;EAMrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;OAUhD,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuDhB,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4DlD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+BrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;;;;;;;KAgBrD,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCzD,CAAC;QACE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;QAErE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC,CAAC;YAChG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,EAAE,KAAK,CAAC,CAAC;QAClF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kya-os/create-mcpi-app",
3
- "version": "1.5.0",
3
+ "version": "1.6.0",
4
4
  "description": "Bootstrap MCP applications with identity features",
5
5
  "type": "module",
6
6
  "bin": {