@elliotding/ai-agent-mcp 0.1.15 → 0.1.18

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.
@@ -54,6 +54,7 @@ exports.syncResourcesTool = void 0;
54
54
  exports.syncResources = syncResources;
55
55
  const fs = __importStar(require("fs/promises"));
56
56
  const path = __importStar(require("path"));
57
+ const crypto_1 = require("crypto");
57
58
  const logger_1 = require("../utils/logger");
58
59
  const client_1 = require("../api/client");
59
60
  const multi_source_manager_1 = require("../git/multi-source-manager");
@@ -61,6 +62,14 @@ const cursor_paths_1 = require("../utils/cursor-paths");
61
62
  const errors_1 = require("../types/errors");
62
63
  const index_js_1 = require("../telemetry/index.js");
63
64
  const index_js_2 = require("../prompts/index.js");
65
+ const downloadCache = new Map();
66
+ function syncCacheKey(userToken, resourceId) {
67
+ return `${userToken}::${resourceId}`;
68
+ }
69
+ /** Compute SHA-256 hex digest of a UTF-8 string. */
70
+ function sha256(content) {
71
+ return (0, crypto_1.createHash)('sha256').update(content, 'utf8').digest('hex');
72
+ }
64
73
  /**
65
74
  * Extract the `description` field from YAML frontmatter in a Markdown file.
66
75
  * Frontmatter is delimited by leading `---` and closing `---` lines.
@@ -156,22 +165,43 @@ async function syncResources(params) {
156
165
  // Resolve the destination path inside the Cursor directory.
157
166
  // getCursorResourcePath throws for unrecognised types, caught below.
158
167
  const destPath = (0, cursor_paths_1.getCursorResourcePath)(sub.type, sub.name);
159
- // In check mode: just report whether the resource already exists locally.
168
+ // In check mode: report whether the resource is already available.
169
+ // Command/Skill: check the in-memory Prompt registry (no local files).
170
+ // Rule/MCP: check whether the local file / mcp.json entry exists.
160
171
  if (mode === 'check') {
161
- try {
162
- await fs.access(destPath);
163
- tally.cached++;
164
- details.push({ id: sub.id, name: sub.name, action: 'cached', version: resourceVersion });
165
- (0, logger_1.logToolStep)('sync_resources', 'Resource already present (check mode)', {
166
- resourceId: sub.id, destPath,
167
- });
172
+ if (sub.type === 'command' || sub.type === 'skill') {
173
+ const meta = {
174
+ resource_id: sub.id,
175
+ resource_type: sub.type,
176
+ resource_name: sub.name,
177
+ team: sub.team ?? 'general',
178
+ };
179
+ const isRegistered = index_js_2.promptManager.has(index_js_2.promptManager.buildPromptName(meta), userToken ?? '');
180
+ if (isRegistered) {
181
+ tally.cached++;
182
+ details.push({ id: sub.id, name: sub.name, action: 'cached', version: resourceVersion });
183
+ }
184
+ else {
185
+ tally.failed++;
186
+ details.push({ id: sub.id, name: sub.name, action: 'failed', version: resourceVersion });
187
+ }
168
188
  }
169
- catch {
170
- tally.failed++;
171
- details.push({ id: sub.id, name: sub.name, action: 'failed', version: resourceVersion });
172
- (0, logger_1.logToolStep)('sync_resources', 'Resource missing (check mode)', {
173
- resourceId: sub.id, destPath,
174
- });
189
+ else {
190
+ try {
191
+ await fs.access(destPath);
192
+ tally.cached++;
193
+ details.push({ id: sub.id, name: sub.name, action: 'cached', version: resourceVersion });
194
+ (0, logger_1.logToolStep)('sync_resources', 'Resource already present (check mode)', {
195
+ resourceId: sub.id, destPath,
196
+ });
197
+ }
198
+ catch {
199
+ tally.failed++;
200
+ details.push({ id: sub.id, name: sub.name, action: 'failed', version: resourceVersion });
201
+ (0, logger_1.logToolStep)('sync_resources', 'Resource missing (check mode)', {
202
+ resourceId: sub.id, destPath,
203
+ });
204
+ }
175
205
  }
176
206
  continue;
177
207
  }
@@ -264,18 +294,40 @@ async function syncResources(params) {
264
294
  }
265
295
  continue;
266
296
  }
267
- // Download all files for this resource from the CSP server.
268
- (0, logger_1.logToolStep)('sync_resources', 'Downloading resource', {
269
- resourceId: sub.id,
270
- resourceType: sub.type,
271
- });
272
- const tDl = Date.now();
273
- const downloadResult = await client_1.apiClient.downloadResource(sub.id, userToken);
274
- (0, logger_1.logToolStep)('sync_resources', 'Download complete', {
275
- resourceId: sub.id,
276
- fileCount: downloadResult.files.length,
277
- duration: Date.now() - tDl,
278
- });
297
+ // ── Download (with server-session cache) ─────────────────────────────
298
+ // The download cache avoids redundant API calls when the same resource
299
+ // is synced multiple times within one server session without any content
300
+ // change. It ONLY caches the network response; LocalAction generation
301
+ // always proceeds so that users can recover deleted local files by
302
+ // re-running sync — even when the resource content is unchanged.
303
+ const cacheKey = syncCacheKey(userToken ?? '', sub.id);
304
+ let downloadResult;
305
+ const cached = downloadCache.get(cacheKey);
306
+ if (mode === 'incremental' && cached) {
307
+ // Reuse the previously downloaded content without hitting the API.
308
+ // full mode always bypasses this branch to guarantee a fresh download.
309
+ downloadResult = cached;
310
+ (0, logger_1.logToolStep)('sync_resources', 'Using cached download (no API call)', {
311
+ resourceId: sub.id,
312
+ cachedHash: cached.hash,
313
+ });
314
+ }
315
+ else {
316
+ (0, logger_1.logToolStep)('sync_resources', 'Downloading resource', {
317
+ resourceId: sub.id,
318
+ resourceType: sub.type,
319
+ });
320
+ const tDl = Date.now();
321
+ const apiResult = await client_1.apiClient.downloadResource(sub.id, userToken);
322
+ (0, logger_1.logToolStep)('sync_resources', 'Download complete', {
323
+ resourceId: sub.id,
324
+ fileCount: apiResult.files.length,
325
+ duration: Date.now() - tDl,
326
+ });
327
+ downloadResult = { hash: apiResult.hash, files: apiResult.files };
328
+ // Refresh cache with the latest download.
329
+ downloadCache.set(cacheKey, downloadResult);
330
+ }
279
331
  // When the API returns no files (expected when the MCP server is deployed
280
332
  // remotely and content lives in the server-side git repo), fall back to
281
333
  // reading the files directly from the local git checkout.
@@ -340,7 +392,14 @@ async function syncResources(params) {
340
392
  if (normalised.startsWith('..'))
341
393
  continue;
342
394
  const fileDest = `${installDir}/${normalised}`;
343
- localActions.push({ action: 'write_file', path: fileDest, content: file.content });
395
+ // Carry content_hash so the AI can skip the write when the
396
+ // local file already has identical content.
397
+ localActions.push({
398
+ action: 'write_file',
399
+ path: fileDest,
400
+ content: file.content,
401
+ content_hash: sha256(file.content),
402
+ });
344
403
  writeActions.push(fileDest);
345
404
  }
346
405
  const env = (cfg['env'] ?? {});
@@ -353,6 +412,9 @@ async function syncResources(params) {
353
412
  mcp_json_path: mcpJsonPath,
354
413
  server_name: serverName,
355
414
  entry: { ...cfg, args },
415
+ // skip_if_exists: preserve user-edited env values; the entry
416
+ // is already configured if the key exists in mcp.json.
417
+ skip_if_exists: true,
356
418
  ...(missingEnv.length > 0 ? {
357
419
  missing_env: missingEnv,
358
420
  setup_hint: `Fill in env vars in ${mcpJsonPath} under mcpServers["${sub.name}"]: ${missingEnv.join(', ')}.`,
@@ -382,6 +444,9 @@ async function syncResources(params) {
382
444
  mcp_json_path: mcpJsonPath,
383
445
  server_name: serverName,
384
446
  entry: e,
447
+ // skip_if_exists: user may have customised env values; do
448
+ // not overwrite an existing entry on every incremental sync.
449
+ skip_if_exists: true,
385
450
  ...(missingEnv.length > 0 ? {
386
451
  missing_env: missingEnv,
387
452
  setup_hint: `Fill in env vars in ${mcpJsonPath} under mcpServers["${serverName}"]: ${missingEnv.join(', ')}.`,
@@ -410,7 +475,12 @@ async function syncResources(params) {
410
475
  if (normalised.startsWith('..'))
411
476
  continue;
412
477
  const fileDest = `${installDir}/${normalised}`;
413
- localActions.push({ action: 'write_file', path: fileDest, content: file.content });
478
+ localActions.push({
479
+ action: 'write_file',
480
+ path: fileDest,
481
+ content: file.content,
482
+ content_hash: sha256(file.content),
483
+ });
414
484
  writeActions.push(fileDest);
415
485
  }
416
486
  const jsEntry = resourceFiles.find((f) => f.path.endsWith('.js'));
@@ -423,6 +493,7 @@ async function syncResources(params) {
423
493
  mcp_json_path: mcpJsonPath,
424
494
  server_name: sub.name,
425
495
  entry: { command: cmd, args: [entryPath] },
496
+ skip_if_exists: true,
426
497
  });
427
498
  logger_1.logger.info({
428
499
  resourceId: sub.id,
@@ -442,7 +513,8 @@ async function syncResources(params) {
442
513
  }
443
514
  // ── Rule resource ─────────────────────────────────────────────────────
444
515
  // Return write_file actions; the AI writes the files locally.
445
- // Use client-side path so the path resolves on the user's machine.
516
+ // Each action carries content_hash so the AI can skip the write when
517
+ // the local file already has identical content.
446
518
  if (sub.type === 'rule') {
447
519
  const typeDir = (0, cursor_paths_1.getCursorTypeDirForClient)(sub.type);
448
520
  const writeActions = [];
@@ -457,6 +529,7 @@ async function syncResources(params) {
457
529
  action: 'write_file',
458
530
  path: destPath,
459
531
  content: file.content,
532
+ content_hash: sha256(file.content),
460
533
  });
461
534
  writeActions.push(destPath);
462
535
  }
@@ -574,10 +647,17 @@ exports.syncResourcesTool = {
574
647
  'Rule and MCP resources are returned as `local_actions_required` — an ordered list of ' +
575
648
  'write_file, merge_mcp_json, or other actions that the AI Agent MUST execute on the ' +
576
649
  'USER\'S LOCAL MACHINE after receiving the response. ' +
577
- 'Execute every action in the list before reporting success to the user. ' +
578
- 'For merge_mcp_json actions: read the existing ~/.cursor/mcp.json, smart-merge the ' +
579
- 'provided entry (preserve existing user env values), then write the file back. ' +
580
- 'For write_file actions: create any missing parent directories then write the file.',
650
+ 'Execute every action in the list in order before reporting success to the user. ' +
651
+ 'For write_file actions: ' +
652
+ ' (1) If the action has a `content_hash` field, read the existing file (if any), compute its SHA-256, ' +
653
+ ' and SKIP the write if the digests match the file is already up-to-date. ' +
654
+ ' (2) Otherwise create any missing parent directories then write the file. ' +
655
+ 'For merge_mcp_json actions: ' +
656
+ ' (1) If the action has `skip_if_exists: true` AND `mcpServers[server_name]` already exists ' +
657
+ ' in ~/.cursor/mcp.json, SKIP this action entirely — the server is already configured ' +
658
+ ' and any user-edited env values must not be overwritten. ' +
659
+ ' (2) Otherwise read the existing ~/.cursor/mcp.json, smart-merge the provided entry ' +
660
+ ' (preserve existing user env values), then write the file back.',
581
661
  inputSchema: {
582
662
  type: 'object',
583
663
  properties: {
@@ -1 +1 @@
1
- {"version":3,"file":"sync-resources.js","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-resources.js","sourceRoot":"","sources":["../../src/tools/sync-resources.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall-resource.d.ts","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAA2B,uBAAuB,EAAe,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIhH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAkJrG;AAGD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CA2BjC,CAAC"}
1
+ {"version":3,"file":"uninstall-resource.d.ts","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAA2B,uBAAuB,EAAe,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIhH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC,CAwJrG;AAGD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CA2BjC,CAAC"}
@@ -75,29 +75,34 @@ async function uninstallResource(params) {
75
75
  // The MCP server may be running remotely; we must NOT touch the server's
76
76
  // own filesystem. Instead we return delete/remove instructions so the AI
77
77
  // Agent performs them on the user's LOCAL machine.
78
- logger_1.logger.debug({ pattern }, 'Building local uninstall actions for Rule/MCP resource...');
78
+ logger_1.logger.debug({ pattern, resourceType: typedParams.resource_type }, 'Building local uninstall actions for Rule/MCP resource...');
79
79
  const localActions = [];
80
80
  // Use client-side tilde-based paths; the MCP server may be running remotely
81
81
  // and its os.homedir() would resolve to the server's home, not the user's.
82
82
  const mcpJsonPath = `${(0, cursor_paths_js_1.getCursorRootDirForClient)()}/mcp.json`;
83
- // Rule: queue delete for ~/.cursor/rules/<pattern>.mdc and .md variants.
84
- // We cannot scan the server's filesystem for the user's rules, so we emit
85
- // delete actions for the two common extensions and let the AI skip missing files.
86
- const rulesDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('rule');
87
- for (const ext of ['.mdc', '.md']) {
88
- const filePath = `${rulesDir}/${pattern}${ext}`;
89
- localActions.push({ action: 'delete_file', path: filePath });
90
- removedResources.push({ id: pattern, name: pattern, path: filePath });
83
+ // When resource_type is provided, only emit the relevant actions.
84
+ // When unknown, emit both (AI skips missing files gracefully).
85
+ const knownType = typedParams.resource_type;
86
+ const isRule = !knownType || knownType === 'rule';
87
+ const isMcp = !knownType || knownType === 'mcp';
88
+ if (isRule) {
89
+ // Rule: delete ~/.cursor/rules/<pattern>.mdc and .md variants.
90
+ const rulesDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('rule');
91
+ for (const ext of ['.mdc', '.md']) {
92
+ const filePath = `${rulesDir}/${pattern}${ext}`;
93
+ localActions.push({ action: 'delete_file', path: filePath });
94
+ removedResources.push({ id: pattern, name: pattern, path: filePath });
95
+ }
96
+ }
97
+ if (isMcp) {
98
+ // MCP: delete install directory (Format A — may not exist for remote-URL MCPs)
99
+ // and remove the mcpServers entry from mcp.json.
100
+ const mcpDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('mcp');
101
+ const mcpInstallDir = `${mcpDir}/${pattern}`;
102
+ localActions.push({ action: 'delete_file', path: mcpInstallDir, recursive: true });
103
+ localActions.push({ action: 'remove_mcp_json_entry', mcp_json_path: mcpJsonPath, server_name: pattern });
104
+ removedResources.push({ id: pattern, name: pattern, path: mcpInstallDir });
91
105
  }
92
- // MCP: queue delete of install directory (Format A) + remove mcp.json entry.
93
- // For Format B (remote URL only) there is no local directory, but we still
94
- // need to remove the mcp.json entry — the AI will skip the delete if the
95
- // directory does not exist.
96
- const mcpDir = (0, cursor_paths_js_1.getCursorTypeDirForClient)('mcp');
97
- const mcpInstallDir = `${mcpDir}/${pattern}`;
98
- localActions.push({ action: 'delete_file', path: mcpInstallDir, recursive: true });
99
- localActions.push({ action: 'remove_mcp_json_entry', mcp_json_path: mcpJsonPath, server_name: pattern });
100
- removedResources.push({ id: pattern, name: pattern, path: mcpInstallDir });
101
106
  if (removedResources.length === 0 && localActions.length === 0) {
102
107
  throw (0, errors_1.createValidationError)(pattern, 'resource_id_or_name', 'No installed Rule or MCP resources found matching pattern. Use search_resources to find available resources');
103
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uninstall-resource.js","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uninstall-resource.js","sourceRoot":"","sources":["../../src/tools/uninstall-resource.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,13 @@ export interface WriteFileAction {
8
8
  path: string;
9
9
  /** UTF-8 file content to write. */
10
10
  content: string;
11
+ /**
12
+ * SHA-256 hex digest of `content` (without leading "sha256:").
13
+ * When present, the AI MUST read the existing file at `path` (if any),
14
+ * compute its SHA-256, and SKIP the write if the digests match.
15
+ * This prevents redundant writes on incremental syncs.
16
+ */
17
+ content_hash?: string;
11
18
  }
12
19
  export interface DeleteFileAction {
13
20
  action: 'delete_file';
@@ -30,6 +37,13 @@ export interface MergeMcpJsonAction {
30
37
  setup_hint?: string;
31
38
  /** Path to a local setup/readme doc if one exists in the install dir. */
32
39
  setup_doc?: string;
40
+ /**
41
+ * When true, the AI MUST skip this action if `mcpServers[server_name]`
42
+ * already exists in mcp.json (regardless of content).
43
+ * Use this for idempotent installs where re-writing would clobber
44
+ * user-customised values (e.g. env vars the user has already filled in).
45
+ */
46
+ skip_if_exists?: boolean;
33
47
  }
34
48
  export interface RemoveMcpJsonEntryAction {
35
49
  action: 'remove_mcp_json_entry';
@@ -193,6 +207,8 @@ export interface UploadResourceResult {
193
207
  export interface UninstallResourceParams {
194
208
  resource_id_or_name: string;
195
209
  remove_from_account?: boolean;
210
+ /** When known, the resource type — narrows which local_actions are emitted. */
211
+ resource_type?: 'command' | 'skill' | 'rule' | 'mcp';
196
212
  /** CSP API token from the user's mcp.json env configuration. */
197
213
  user_token?: string;
198
214
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/types/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAc3C,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,YAAY,CAAC;IACrB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,gBAAgB,CAAC;IACzB,iDAAiD;IACjD,aAAa,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,uBAAuB,CAAC;IAChC,iDAAiD;IACjD,aAAa,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,WAAW,GACnB,eAAe,GACf,gBAAgB,GAChB,kBAAkB,GAClB,wBAAwB,CAAC;AAG7B,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAGnE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,aAAa,CAAC;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB;AAGD,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAOD,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,OAAO,GAAG,aAAa,GAAG,MAAM,CAAC;IACxC,KAAK,CAAC,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAC;IACvC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,6EAA6E;IAC7E,0BAA0B,EAAE,OAAO,CAAC;IACpC,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH;;;;OAIG;IACH,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B;;;;;;;OAOG;IACH,sBAAsB,CAAC,EAAE,WAAW,EAAE,CAAC;CACxC;AAGD,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,WAAW,GAAG,aAAa,GAAG,MAAM,GAAG,iBAAiB,GAAG,mBAAmB,CAAC;IACvF,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACnE,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC;CAC3B;AAGD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,OAAO,CAAC;QACvB,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC,CAAC;CACJ;AAGD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,+GAA+G;IAC/G,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,sHAAsH;IACtH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IAId,mHAAmH;IACnH,KAAK,EAAE,SAAS,EAAE,CAAC;IAGnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,uBAAuB;IACtC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,KAAK,CAAC;QACvB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,WAAW,EAAE,CAAC;CACxC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/types/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliotding/ai-agent-mcp",
3
- "version": "0.1.15",
3
+ "version": "0.1.18",
4
4
  "description": "CSP AI Agent MCP Server - Centralized AI tools distribution and management",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -544,6 +544,11 @@ export class PromptManager {
544
544
  return this.promptsFor(userToken).has(promptName);
545
545
  }
546
546
 
547
+ /** Return the registered prompt metadata for a given prompt name and user, or undefined. */
548
+ getByPromptName(promptName: string, userToken: string): RegisteredPrompt | undefined {
549
+ return this.promptsFor(userToken).get(promptName);
550
+ }
551
+
547
552
  /** Return a snapshot of all registered prompt names for a given user. */
548
553
  promptNames(userToken: string): string[] {
549
554
  return Array.from(this.promptsFor(userToken).keys());
@@ -30,6 +30,7 @@ import type {
30
30
  */
31
31
  export class ResourceLoader {
32
32
  private config: AIResourcesConfig | null = null;
33
+ private configFilePath: string | null = null;
33
34
  private resourceIndex: Map<string, ResourceMetadata> = new Map();
34
35
  private conflicts: ResourceConflict[] = [];
35
36
  private stats: LoaderStats | null = null;
@@ -47,8 +48,21 @@ export class ResourceLoader {
47
48
  const startTime = Date.now();
48
49
 
49
50
  try {
50
- // Default config path
51
- const defaultPath = path.resolve(process.cwd(), 'AI-Resources/ai-resources-config.json');
51
+ // Resolve the AI-Resources base directory using the same probing strategy
52
+ // as multi-source-manager so both modules agree on the path regardless of
53
+ // whether the server runs locally (cwd = SourceCode/) or in Docker (cwd = /app).
54
+ let defaultPath = path.resolve(process.cwd(), 'AI-Resources/ai-resources-config.json');
55
+ if (!configPath) {
56
+ const candidates = [
57
+ path.resolve(process.env['AI_RESOURCES_PATH'] ?? '', 'ai-resources-config.json'),
58
+ path.resolve(process.cwd(), 'AI-Resources/ai-resources-config.json'),
59
+ path.resolve(process.cwd(), '../AI-Resources/ai-resources-config.json'),
60
+ path.resolve(__dirname, '../../AI-Resources/ai-resources-config.json'),
61
+ ].filter(Boolean);
62
+ for (const c of candidates) {
63
+ try { await fs.access(c); defaultPath = c; break; } catch { /* try next */ }
64
+ }
65
+ }
52
66
  const finalPath = configPath || defaultPath;
53
67
 
54
68
  logger.debug({ configPath: finalPath }, 'Loading AI Resources configuration...');
@@ -70,6 +84,7 @@ export class ResourceLoader {
70
84
  this.validateConfig(parsedConfig);
71
85
 
72
86
  this.config = parsedConfig;
87
+ this.configFilePath = finalPath;
73
88
  this.cacheEnabled = parsedConfig.cache?.enabled ?? true;
74
89
  this.cacheTTL = (parsedConfig.cache?.ttl ?? 300) * 1000; // Convert to ms
75
90
 
@@ -285,7 +300,13 @@ export class ResourceLoader {
285
300
  ): Promise<void> {
286
301
  logger.debug({ source: source.name, path: source.path }, 'Scanning source...');
287
302
 
288
- const baseDir = path.resolve(process.cwd(), 'AI-Resources', source.path);
303
+ // Derive the AI-Resources base from the config file path stored on the instance,
304
+ // so the source subdirectory resolves correctly in Docker (cwd = /app) and local
305
+ // dev (cwd = SourceCode/) without needing a separate env var.
306
+ const aiResourcesBase = this.configFilePath
307
+ ? path.dirname(this.configFilePath)
308
+ : path.resolve(process.cwd(), 'AI-Resources');
309
+ const baseDir = path.resolve(aiResourcesBase, source.path);
289
310
 
290
311
  // Check if source directory exists
291
312
  try {
@@ -336,14 +357,26 @@ export class ResourceLoader {
336
357
  const resourceName = path.basename(entry.name, path.extname(entry.name));
337
358
  await this.indexResource(source, type, resourceName, fullPath, stats);
338
359
  } else if (entry.isDirectory()) {
339
- // Handle directory resources (skills, mcp)
340
- const skillFile = path.join(fullPath, 'SKILL.md');
341
- try {
342
- await fs.access(skillFile);
343
- await this.indexResource(source, type, entry.name, skillFile, stats);
344
- } catch {
345
- // Not a skill directory, skip
346
- logger.debug({ dir: fullPath }, 'Directory does not contain SKILL.md, skipping');
360
+ // Handle directory resources:
361
+ // skill must contain SKILL.md
362
+ // mcp → must contain mcp-config.json
363
+ // others → directory layout is not expected; skip
364
+ if (type === 'skills') {
365
+ const skillFile = path.join(fullPath, 'SKILL.md');
366
+ try {
367
+ await fs.access(skillFile);
368
+ await this.indexResource(source, type, entry.name, skillFile, stats);
369
+ } catch {
370
+ logger.debug({ dir: fullPath }, 'Directory does not contain SKILL.md, skipping');
371
+ }
372
+ } else if (type === 'mcp') {
373
+ const mcpConfigFile = path.join(fullPath, 'mcp-config.json');
374
+ try {
375
+ await fs.access(mcpConfigFile);
376
+ await this.indexResource(source, type, entry.name, mcpConfigFile, stats);
377
+ } catch {
378
+ logger.debug({ dir: fullPath }, 'Directory does not contain mcp-config.json, skipping');
379
+ }
347
380
  }
348
381
  }
349
382
  }