@j0hanz/filesystem-context-mcp 1.0.9 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +20 -5
  2. package/dist/__tests__/schemas/validators.test.js +32 -5
  3. package/dist/__tests__/schemas/validators.test.js.map +1 -1
  4. package/dist/config/types.d.ts +28 -0
  5. package/dist/config/types.d.ts.map +1 -1
  6. package/dist/config/types.js.map +1 -1
  7. package/dist/index.js +0 -2
  8. package/dist/index.js.map +1 -1
  9. package/dist/lib/constants.d.ts +7 -7
  10. package/dist/lib/constants.d.ts.map +1 -1
  11. package/dist/lib/constants.js +24 -37
  12. package/dist/lib/constants.js.map +1 -1
  13. package/dist/lib/directory-helpers.d.ts +1 -2
  14. package/dist/lib/directory-helpers.d.ts.map +1 -1
  15. package/dist/lib/directory-helpers.js +2 -5
  16. package/dist/lib/directory-helpers.js.map +1 -1
  17. package/dist/lib/errors.d.ts +2 -0
  18. package/dist/lib/errors.d.ts.map +1 -1
  19. package/dist/lib/errors.js +22 -33
  20. package/dist/lib/errors.js.map +1 -1
  21. package/dist/lib/file-operations.d.ts +2 -1
  22. package/dist/lib/file-operations.d.ts.map +1 -1
  23. package/dist/lib/file-operations.js +249 -146
  24. package/dist/lib/file-operations.js.map +1 -1
  25. package/dist/lib/formatters.d.ts +1 -12
  26. package/dist/lib/formatters.d.ts.map +1 -1
  27. package/dist/lib/formatters.js +11 -14
  28. package/dist/lib/formatters.js.map +1 -1
  29. package/dist/lib/fs-helpers.d.ts.map +1 -1
  30. package/dist/lib/fs-helpers.js +41 -66
  31. package/dist/lib/fs-helpers.js.map +1 -1
  32. package/dist/lib/image-parsing.d.ts.map +1 -1
  33. package/dist/lib/image-parsing.js +27 -19
  34. package/dist/lib/image-parsing.js.map +1 -1
  35. package/dist/lib/mcp-logger.d.ts.map +1 -1
  36. package/dist/lib/mcp-logger.js +16 -12
  37. package/dist/lib/mcp-logger.js.map +1 -1
  38. package/dist/lib/path-utils.d.ts.map +1 -1
  39. package/dist/lib/path-utils.js +0 -2
  40. package/dist/lib/path-utils.js.map +1 -1
  41. package/dist/lib/path-validation.d.ts.map +1 -1
  42. package/dist/lib/path-validation.js +45 -24
  43. package/dist/lib/path-validation.js.map +1 -1
  44. package/dist/lib/search-helpers.d.ts +3 -0
  45. package/dist/lib/search-helpers.d.ts.map +1 -1
  46. package/dist/lib/search-helpers.js +44 -56
  47. package/dist/lib/search-helpers.js.map +1 -1
  48. package/dist/schemas/inputs.d.ts +3 -2
  49. package/dist/schemas/inputs.d.ts.map +1 -1
  50. package/dist/schemas/inputs.js +22 -4
  51. package/dist/schemas/inputs.js.map +1 -1
  52. package/dist/schemas/outputs.d.ts +31 -12
  53. package/dist/schemas/outputs.d.ts.map +1 -1
  54. package/dist/schemas/outputs.js +16 -0
  55. package/dist/schemas/outputs.js.map +1 -1
  56. package/dist/server.d.ts.map +1 -1
  57. package/dist/server.js +39 -17
  58. package/dist/server.js.map +1 -1
  59. package/dist/tools/analyze-directory.d.ts.map +1 -1
  60. package/dist/tools/analyze-directory.js +6 -6
  61. package/dist/tools/analyze-directory.js.map +1 -1
  62. package/dist/tools/list-allowed-dirs.d.ts.map +1 -1
  63. package/dist/tools/list-allowed-dirs.js +20 -1
  64. package/dist/tools/list-allowed-dirs.js.map +1 -1
  65. package/dist/tools/list-directory.d.ts.map +1 -1
  66. package/dist/tools/list-directory.js +11 -3
  67. package/dist/tools/list-directory.js.map +1 -1
  68. package/dist/tools/read-file.d.ts.map +1 -1
  69. package/dist/tools/read-file.js +7 -4
  70. package/dist/tools/read-file.js.map +1 -1
  71. package/dist/tools/read-multiple-files.d.ts.map +1 -1
  72. package/dist/tools/read-multiple-files.js +4 -4
  73. package/dist/tools/read-multiple-files.js.map +1 -1
  74. package/dist/tools/search-content.d.ts.map +1 -1
  75. package/dist/tools/search-content.js +5 -10
  76. package/dist/tools/search-content.js.map +1 -1
  77. package/dist/tools/search-files.d.ts.map +1 -1
  78. package/dist/tools/search-files.js +6 -5
  79. package/dist/tools/search-files.js.map +1 -1
  80. package/package.json +8 -8
@@ -1,4 +1,4 @@
1
- import type { ContentMatch, DirectoryAnalysis, DirectoryEntry, FileInfo, SearchResult, TreeEntry } from '../config/types.js';
1
+ import type { ContentMatch, DirectoryAnalysis, DirectoryEntry, FileInfo, OperationSummary, SearchResult, TreeEntry } from '../config/types.js';
2
2
  export declare function formatDirectoryListing(entries: DirectoryEntry[], basePath: string): string;
3
3
  export declare function formatSearchResults(results: SearchResult[]): string;
4
4
  export declare function formatContentMatches(matches: ContentMatch[]): string;
@@ -6,16 +6,5 @@ export declare function formatFileInfo(info: FileInfo): string;
6
6
  export declare function formatDirectoryAnalysis(analysis: DirectoryAnalysis): string;
7
7
  export declare function formatTreeEntry(entry: TreeEntry, indent?: string): string;
8
8
  export declare function formatAllowedDirectories(dirs: string[]): string;
9
- interface OperationSummary {
10
- truncated?: boolean;
11
- truncatedReason?: string;
12
- tip?: string;
13
- skippedInaccessible?: number;
14
- symlinksNotFollowed?: number;
15
- skippedTooLarge?: number;
16
- skippedBinary?: number;
17
- linesSkippedDueToRegexTimeout?: number;
18
- }
19
9
  export declare function formatOperationSummary(summary: OperationSummary): string;
20
- export {};
21
10
  //# sourceMappingURL=formatters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,SAAS,EACV,MAAM,oBAAoB,CAAC;AAmB5B,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,MAAM,GACf,MAAM,CAsCR;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAenE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAsDpE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAsBrD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAyC3E;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,SAAK,GAAG,MAAM,CAYrE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAW/D;AAGD,UAAU,gBAAgB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6BAA6B,CAAC,EAAE,MAAM,CAAC;CACxC;AAGD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CA0CxE"}
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACV,MAAM,oBAAoB,CAAC;AAqB5B,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EAAE,EACzB,QAAQ,EAAE,MAAM,GACf,MAAM,CAsCR;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAenE;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAoDpE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAsBrD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAyC3E;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,SAAK,GAAG,MAAM,CAYrE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAW/D;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CA0CxE"}
@@ -1,11 +1,13 @@
1
- const BYTES_PER_KB = 1024;
2
- const BYTE_UNITS = ['B', 'KB', 'MB', 'GB', 'TB'];
1
+ const BYTES_PER_KILOBYTE = 1024;
2
+ const BYTE_UNIT_LABELS = ['B', 'KB', 'MB', 'GB', 'TB'];
3
+ const ANALYSIS_SEPARATOR_WIDTH = 50;
4
+ const LINE_NUMBER_PAD_WIDTH = 4;
3
5
  function formatBytes(bytes) {
4
6
  if (bytes === 0)
5
7
  return '0 B';
6
- const unitIndex = Math.floor(Math.log(bytes) / Math.log(BYTES_PER_KB));
7
- const unit = BYTE_UNITS[unitIndex] ?? 'B';
8
- const value = bytes / Math.pow(BYTES_PER_KB, unitIndex);
8
+ const unitIndex = Math.floor(Math.log(bytes) / Math.log(BYTES_PER_KILOBYTE));
9
+ const unit = BYTE_UNIT_LABELS[unitIndex] ?? 'B';
10
+ const value = bytes / Math.pow(BYTES_PER_KILOBYTE, unitIndex);
9
11
  return `${parseFloat(value.toFixed(2))} ${unit}`;
10
12
  }
11
13
  function formatDate(date) {
@@ -72,25 +74,21 @@ export function formatContentMatches(matches) {
72
74
  for (const [file, fileMatches] of byFile) {
73
75
  lines.push(`${file}:`);
74
76
  for (const match of fileMatches) {
75
- // Show context before if available
76
77
  if (match.contextBefore && match.contextBefore.length > 0) {
77
78
  for (let i = 0; i < match.contextBefore.length; i++) {
78
79
  const contextLine = match.contextBefore[i];
79
80
  const lineNum = match.line - match.contextBefore.length + i;
80
- lines.push(` ${String(lineNum).padStart(4)}: ${contextLine ?? ''}`);
81
+ lines.push(` ${String(lineNum).padStart(LINE_NUMBER_PAD_WIDTH)}: ${contextLine ?? ''}`);
81
82
  }
82
83
  }
83
- // Show the match line (highlighted)
84
- lines.push(` > ${String(match.line).padStart(4)}: ${match.content}`);
85
- // Show context after if available
84
+ lines.push(` > ${String(match.line).padStart(LINE_NUMBER_PAD_WIDTH)}: ${match.content}`);
86
85
  if (match.contextAfter && match.contextAfter.length > 0) {
87
86
  for (let i = 0; i < match.contextAfter.length; i++) {
88
87
  const contextLine = match.contextAfter[i];
89
88
  const lineNum = match.line + 1 + i;
90
- lines.push(` ${String(lineNum).padStart(4)}: ${contextLine ?? ''}`);
89
+ lines.push(` ${String(lineNum).padStart(LINE_NUMBER_PAD_WIDTH)}: ${contextLine ?? ''}`);
91
90
  }
92
91
  }
93
- // Add separator if there was context
94
92
  if ((match.contextBefore && match.contextBefore.length > 0) ||
95
93
  (match.contextAfter && match.contextAfter.length > 0)) {
96
94
  lines.push(' ---');
@@ -123,7 +121,7 @@ export function formatFileInfo(info) {
123
121
  export function formatDirectoryAnalysis(analysis) {
124
122
  const lines = [
125
123
  `Directory Analysis: ${analysis.path}`,
126
- '='.repeat(50),
124
+ '='.repeat(ANALYSIS_SEPARATOR_WIDTH),
127
125
  '',
128
126
  'Summary:',
129
127
  ` Total Files: ${analysis.totalFiles}`,
@@ -175,7 +173,6 @@ export function formatAllowedDirectories(dirs) {
175
173
  }
176
174
  return lines.join('\n');
177
175
  }
178
- // Format operation summary messages (truncation, skipped items, symlinks)
179
176
  export function formatOperationSummary(summary) {
180
177
  const lines = [];
181
178
  if (summary.truncated) {
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/lib/formatters.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fs-helpers.d.ts","sourceRoot":"","sources":["../../src/lib/fs-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAYnE,wBAAsB,YAAY,CAAC,CAAC,EAClC,YAAY,EAAE,CAAC,EAAE,EACjB,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,EAC9D,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CAiEf;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAKlD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,EAAE,CAAC,UAAU,GAC7B,OAAO,CAAC,OAAO,CAAC,CA0DlB;AAyCD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA0DjB;AAED,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA6CjB;AAkDD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACV,GACL,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CA2FD;AAGD,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAC1C,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAClC,WAAW,GAAE,MAA6B,GACzC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAwB5B"}
1
+ {"version":3,"file":"fs-helpers.d.ts","sourceRoot":"","sources":["../../src/lib/fs-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAWnE,wBAAsB,YAAY,CAAC,CAAC,EAClC,YAAY,EAAE,CAAC,EAAE,EACjB,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,EAC9D,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC,CA6Df;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,CAKlD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE9C;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,EAAE,CAAC,UAAU,GAC7B,OAAO,CAAC,OAAO,CAAC,CA0DlB;AAiCD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAyDjB;AAED,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CA6CjB;AAgDD,wBAAsB,QAAQ,CAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACV,GACL,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC,CAyFD;AAED,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAC1C,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAClC,WAAW,GAAE,MAA6B,GACzC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAwB5B"}
@@ -6,10 +6,8 @@ import { StringDecoder } from 'node:string_decoder';
6
6
  import { BINARY_CHECK_BUFFER_SIZE, KNOWN_BINARY_EXTENSIONS, KNOWN_TEXT_EXTENSIONS, MAX_TEXT_FILE_SIZE, PARALLEL_CONCURRENCY, } from './constants.js';
7
7
  import { ErrorCode, McpError } from './errors.js';
8
8
  import { validateExistingPath } from './path-validation.js';
9
- // Concurrent work queue processor with abort support
10
9
  export async function runWorkQueue(initialItems, worker, concurrency, signal) {
11
10
  const queue = [...initialItems];
12
- let head = 0;
13
11
  let inFlight = 0;
14
12
  let aborted = false;
15
13
  let doneResolve;
@@ -18,37 +16,32 @@ export async function runWorkQueue(initialItems, worker, concurrency, signal) {
18
16
  });
19
17
  const onAbort = () => {
20
18
  aborted = true;
21
- // Clear remaining work (keep the already-consumed prefix intact)
22
- queue.length = head;
19
+ // Don't modify queue - just stop new work from being enqueued
23
20
  if (inFlight === 0) {
24
21
  doneResolve?.();
25
22
  }
26
23
  };
27
24
  signal?.addEventListener('abort', onAbort, { once: true });
28
- const maybeCompactQueue = () => {
29
- if (head > 1024 && head * 2 > queue.length) {
30
- queue.splice(0, head);
31
- head = 0;
32
- }
33
- };
34
25
  const maybeStartNext = () => {
35
26
  if (aborted)
36
27
  return;
37
- while (inFlight < concurrency && head < queue.length) {
38
- const next = queue[head];
28
+ while (inFlight < concurrency && queue.length > 0) {
29
+ const next = queue.shift();
39
30
  if (next === undefined)
40
31
  break;
41
- head++;
42
32
  inFlight++;
43
33
  void worker(next, (item) => {
44
34
  if (!aborted) {
45
35
  queue.push(item);
46
36
  maybeStartNext();
47
37
  }
48
- }).finally(() => {
38
+ })
39
+ .catch((error) => {
40
+ console.error('[runWorkQueue] Worker error:', error instanceof Error ? error.message : String(error));
41
+ })
42
+ .finally(() => {
49
43
  inFlight--;
50
- maybeCompactQueue();
51
- if (inFlight === 0 && (head >= queue.length || aborted)) {
44
+ if (inFlight === 0 && (queue.length === 0 || aborted)) {
52
45
  doneResolve?.();
53
46
  }
54
47
  else if (!aborted) {
@@ -58,7 +51,7 @@ export async function runWorkQueue(initialItems, worker, concurrency, signal) {
58
51
  }
59
52
  };
60
53
  maybeStartNext();
61
- if (inFlight === 0 && head >= queue.length) {
54
+ if (inFlight === 0 && queue.length === 0) {
62
55
  doneResolve?.();
63
56
  }
64
57
  try {
@@ -97,7 +90,7 @@ export async function isProbablyBinary(filePath, existingHandle) {
97
90
  shouldClose = true;
98
91
  }
99
92
  try {
100
- const buffer = Buffer.alloc(BINARY_CHECK_BUFFER_SIZE);
93
+ const buffer = Buffer.allocUnsafe(BINARY_CHECK_BUFFER_SIZE);
101
94
  const { bytesRead } = await handle.read(buffer, 0, BINARY_CHECK_BUFFER_SIZE, 0);
102
95
  if (bytesRead === 0) {
103
96
  return false; // Empty file is considered text
@@ -122,37 +115,30 @@ export async function isProbablyBinary(filePath, existingHandle) {
122
115
  }
123
116
  }
124
117
  }
125
- // Find UTF-8 character boundary by backtracking
126
118
  async function findUTF8Boundary(handle, position) {
127
119
  if (position <= 0)
128
120
  return 0;
129
- const buf = Buffer.alloc(1);
130
- let currentPos = position;
131
- // Backtrack up to 4 bytes to find leading byte
132
- for (let i = 0; i < 4; i++) {
133
- // If we reached the beginning of the file, that's a boundary
134
- if (currentPos <= 0)
135
- return 0;
136
- try {
137
- await handle.read(buf, 0, 1, currentPos);
138
- }
139
- catch (error) {
140
- // On read error, return original position to avoid data corruption
141
- console.error('[findUTF8Boundary] Read error at position', currentPos, error);
142
- return position;
143
- }
144
- // Check if byte is a leading byte
145
- const byte = buf[0];
146
- if (byte !== undefined && (byte & 0xc0) !== 0x80) {
147
- return currentPos;
121
+ const backtrackSize = Math.min(4, position);
122
+ const startPos = position - backtrackSize;
123
+ const buf = Buffer.allocUnsafe(backtrackSize);
124
+ try {
125
+ const { bytesRead } = await handle.read(buf, 0, backtrackSize, startPos);
126
+ for (let i = bytesRead - 1; i >= 0; i--) {
127
+ const byte = buf[i];
128
+ if (byte !== undefined && (byte & 0xc0) !== 0x80) {
129
+ return startPos + i;
130
+ }
148
131
  }
149
- currentPos--;
150
132
  }
151
- // If we backtracked 4 bytes and still found only continuation bytes,
133
+ catch (error) {
134
+ console.error(`[findUTF8Boundary] Read error at position ${position}:`, error instanceof Error ? error.message : String(error));
135
+ return position;
136
+ }
137
+ // Fallback if all bytes are continuation bytes
152
138
  return position;
153
139
  }
154
140
  export async function tailFile(filePath, numLines) {
155
- const CHUNK_SIZE = 64 * 1024;
141
+ const CHUNK_SIZE = 256 * 1024;
156
142
  const validPath = await validateExistingPath(filePath);
157
143
  const stats = await fs.stat(validPath);
158
144
  const fileSize = stats.size;
@@ -170,7 +156,6 @@ export async function tailFile(filePath, numLines) {
170
156
  let startPos = position - size;
171
157
  if (startPos > 0) {
172
158
  const alignedPos = await findUTF8Boundary(handle, startPos);
173
- // If we moved back, we need to read more
174
159
  size = position - alignedPos;
175
160
  startPos = alignedPos;
176
161
  }
@@ -243,7 +228,6 @@ export async function headFile(filePath, numLines) {
243
228
  await handle.close().catch(() => { });
244
229
  }
245
230
  }
246
- // Read specific line range from file using streaming
247
231
  async function readLineRange(filePath, startLine, endLine) {
248
232
  const fileStream = createReadStream(filePath, { encoding: 'utf-8' });
249
233
  const rl = readline.createInterface({
@@ -259,7 +243,6 @@ async function readLineRange(filePath, startLine, endLine) {
259
243
  if (lineNumber >= startLine && lineNumber <= endLine) {
260
244
  lines.push(line);
261
245
  }
262
- // Check if there are more lines after the requested range
263
246
  if (lineNumber > endLine) {
264
247
  hasMoreLines = true;
265
248
  break;
@@ -284,12 +267,10 @@ export async function readFile(filePath, options = {}) {
284
267
  if (!stats.isFile()) {
285
268
  throw new McpError(ErrorCode.E_NOT_FILE, `Not a file: ${filePath}`, filePath);
286
269
  }
287
- // Check for mutually exclusive options
288
270
  const optionsCount = [lineRange, head, tail].filter(Boolean).length;
289
271
  if (optionsCount > 1) {
290
272
  throw new McpError(ErrorCode.E_INVALID_INPUT, 'Cannot specify multiple of lineRange, head, or tail simultaneously', filePath);
291
273
  }
292
- // Validate lineRange if provided
293
274
  if (lineRange) {
294
275
  if (lineRange.start < 1) {
295
276
  throw new McpError(ErrorCode.E_INVALID_INPUT, `Invalid lineRange: start must be at least 1 (got ${lineRange.start})`, filePath);
@@ -306,11 +287,9 @@ export async function readFile(filePath, options = {}) {
306
287
  const content = await headFile(validPath, head);
307
288
  return { path: validPath, content, truncated: true, totalLines: undefined };
308
289
  }
309
- // For line range, use streaming to avoid loading entire file into memory
310
290
  if (lineRange) {
311
291
  const result = await readLineRange(validPath, lineRange.start, lineRange.end);
312
292
  const expectedLines = lineRange.end - lineRange.start + 1;
313
- // truncated if: not starting at line 1, OR didn't get all requested lines, OR file has more lines
314
293
  const isTruncated = lineRange.start > 1 ||
315
294
  result.linesRead < expectedLines ||
316
295
  result.hasMoreLines;
@@ -325,29 +304,25 @@ export async function readFile(filePath, options = {}) {
325
304
  throw new McpError(ErrorCode.E_TOO_LARGE, `File too large: ${stats.size} bytes (max: ${maxSize} bytes). Use head, tail, or lineRange for partial reads.`, filePath, { size: stats.size, maxSize });
326
305
  }
327
306
  const content = await fs.readFile(validPath, { encoding });
328
- return { path: validPath, content, truncated: false };
307
+ const totalLines = content.split('\n').length;
308
+ return { path: validPath, content, truncated: false, totalLines };
329
309
  }
330
- // Process items in parallel with controlled concurrency
331
310
  export async function processInParallel(items, processor, concurrency = PARALLEL_CONCURRENCY) {
332
311
  const results = [];
333
312
  const errors = [];
334
- for (let i = 0; i < items.length; i += concurrency) {
335
- const batch = items.slice(i, i + concurrency);
336
- const batchResults = await Promise.allSettled(batch.map(processor));
337
- for (let j = 0; j < batchResults.length; j++) {
338
- const result = batchResults[j];
339
- if (result?.status === 'fulfilled') {
340
- results.push(result.value);
341
- }
342
- else if (result?.status === 'rejected') {
343
- const globalIndex = i + j;
344
- const error = result.reason instanceof Error
345
- ? result.reason
346
- : new Error(String(result.reason));
347
- errors.push({ index: globalIndex, error });
348
- }
349
- }
313
+ if (items.length === 0) {
314
+ return { results, errors };
350
315
  }
316
+ await runWorkQueue(items.map((item, index) => ({ item, index })), async ({ item, index }) => {
317
+ try {
318
+ const result = await processor(item);
319
+ results.push(result);
320
+ }
321
+ catch (reason) {
322
+ const error = reason instanceof Error ? reason : new Error(String(reason));
323
+ errors.push({ index, error });
324
+ }
325
+ }, concurrency);
351
326
  return { results, errors };
352
327
  }
353
328
  //# sourceMappingURL=fs-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fs-helpers.js","sourceRoot":"","sources":["../../src/lib/fs-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs-helpers.js","sourceRoot":"","sources":["../../src/lib/fs-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,YAAiB,EACjB,MAA8D,EAC9D,WAAmB,EACnB,MAAoB;IAEpB,MAAM,KAAK,GAAQ,CAAC,GAAG,YAAY,CAAC,CAAC;IACrC,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,WAAqC,CAAC;IAC1C,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAChD,WAAW,GAAG,OAAO,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,OAAO,GAAG,IAAI,CAAC;QACf,8DAA8D;QAC9D,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,WAAW,EAAE,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3D,MAAM,cAAc,GAAG,GAAS,EAAE;QAChC,IAAI,OAAO;YAAE,OAAO;QAEpB,OAAO,QAAQ,GAAG,WAAW,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM;YAE9B,QAAQ,EAAE,CAAC;YACX,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,IAAO,EAAE,EAAE;gBAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjB,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC;iBACC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,OAAO,CAAC,KAAK,CACX,8BAA8B,EAC9B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;YACJ,CAAC,CAAC;iBACD,OAAO,CAAC,GAAG,EAAE;gBACZ,QAAQ,EAAE,CAAC;gBACX,IAAI,QAAQ,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,EAAE,CAAC;oBACtD,WAAW,EAAE,EAAE,CAAC;gBAClB,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC,CAAC;QACP,CAAC;IACH,CAAC,CAAC;IAEF,cAAc,EAAE,CAAC;IAEjB,IAAI,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,WAAW,EAAE,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,CAAC;IACpB,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,IAAI,KAAK,CAAC,MAAM,EAAE;QAAE,OAAO,MAAM,CAAC;IAClC,IAAI,KAAK,CAAC,WAAW,EAAE;QAAE,OAAO,WAAW,CAAC;IAC5C,IAAI,KAAK,CAAC,cAAc,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,cAA8B;IAE9B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAEjD,IAAI,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,MAAM,GAAG,cAAc,CAAC;IAC5B,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,aAAa,GAAG,QAAQ,CAAC;IAE7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,aAAa,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC3C,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;QAC5D,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CACrC,MAAM,EACN,CAAC,EACD,wBAAwB,EACxB,CAAC,CACF,CAAC;QAEF,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC,CAAC,gCAAgC;QAChD,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAE5C,IACE,SAAS,IAAI,CAAC;YACd,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YACjB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI;YACjB,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,EACjB,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IACE,SAAS,IAAI,CAAC;YACd,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;gBACvC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAC3C,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;YAAS,CAAC;QACT,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,MAAqB,EACrB,QAAgB;IAEhB,IAAI,QAAQ,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAE5B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAE9C,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;QAEzE,KAAK,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBACjD,OAAO,QAAQ,GAAG,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,6CAA6C,QAAQ,GAAG,EACxD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,+CAA+C;IAC/C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,QAAgB;IAEhB,MAAM,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC;IAC9B,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;IAE5B,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAE9B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,QAAQ,GAAG,QAAQ,CAAC;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,aAAa,GAAG,EAAE,CAAC;QAEvB,OAAO,QAAQ,GAAG,CAAC,IAAI,UAAU,GAAG,QAAQ,EAAE,CAAC;YAC7C,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC1C,IAAI,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC;YAE/B,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC5D,IAAI,GAAG,QAAQ,GAAG,UAAU,CAAC;gBAC7B,QAAQ,GAAG,UAAU,CAAC;YACxB,CAAC;YAED,QAAQ,GAAG,QAAQ,CAAC;YAEpB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClE,IAAI,SAAS,KAAK,CAAC;gBAAE,MAAM;YAE3B,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAChE,MAAM,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAC;YAC3C,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEhE,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpC,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YAED,KACE,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAC7B,CAAC,IAAI,CAAC,IAAI,UAAU,GAAG,QAAQ,EAC/B,CAAC,EAAE,EACH,CAAC;gBACD,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACpB,UAAU,EAAE,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,QAAgB;IAEhB,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,OAAO,KAAK,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACpE,IAAI,MAAM,CAAC,SAAS,KAAK,CAAC;gBAAE,MAAM;YAClC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;YAE9B,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7D,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAExD,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,MAAM,aAAa,GAAG,gBAAgB;qBACnC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC;qBAC1B,KAAK,CAAC,IAAI,CAAC,CAAC;gBACf,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;gBAEtD,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACjB,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;wBAAE,MAAM;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACxB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YACjD,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjE,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;gBAClC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;oBAAE,MAAM;YACtC,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,QAAgB,EAChB,SAAiB,EACjB,OAAe;IAOf,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACrE,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;QAClC,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;YAC5B,UAAU,EAAE,CAAC;YAEb,IAAI,UAAU,IAAI,SAAS,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YAED,IAAI,UAAU,GAAG,OAAO,EAAE,CAAC;gBACzB,YAAY,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YACzB,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,iBAAiB,EAAE,UAAU;YAC7B,YAAY;SACb,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,QAAgB,EAChB,UAMI,EAAE;IAON,MAAM,EACJ,QAAQ,GAAG,OAAO,EAClB,OAAO,GAAG,kBAAkB,EAC5B,SAAS,EACT,IAAI,EACJ,IAAI,GACL,GAAG,OAAO,CAAC;IACZ,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAEvD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEvC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,UAAU,EACpB,eAAe,QAAQ,EAAE,EACzB,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACpE,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,eAAe,EACzB,oEAAoE,EACpE,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,eAAe,EACzB,oDAAoD,SAAS,CAAC,KAAK,GAAG,EACtE,QAAQ,CACT,CAAC;QACJ,CAAC;QACD,IAAI,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;YACpC,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,eAAe,EACzB,2BAA2B,SAAS,CAAC,GAAG,uBAAuB,SAAS,CAAC,KAAK,GAAG,EACjF,QAAQ,CACT,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAC9E,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAC9E,CAAC;IAED,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC,SAAS,EACT,SAAS,CAAC,KAAK,EACf,SAAS,CAAC,GAAG,CACd,CAAC;QACF,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,GAAG,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC;QAC1D,MAAM,WAAW,GACf,SAAS,CAAC,KAAK,GAAG,CAAC;YACnB,MAAM,CAAC,SAAS,GAAG,aAAa;YAChC,MAAM,CAAC,YAAY,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,WAAW;YACtB,UAAU,EAAE,SAAS;SACtB,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,GAAG,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,WAAW,EACrB,mBAAmB,KAAK,CAAC,IAAI,gBAAgB,OAAO,0DAA0D,EAC9G,QAAQ,EACR,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,CAC9B,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE3D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;IAE9C,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAU,EACV,SAAkC,EAClC,cAAsB,oBAAoB;IAE1C,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,MAAM,GAAsC,EAAE,CAAC;IAErD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,YAAY,CAChB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAC7C,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,MAAM,KAAK,GACT,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,EACD,WAAW,CACZ,CAAC;IAEF,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"image-parsing.d.ts","sourceRoot":"","sources":["../../src/lib/image-parsing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAiIvE,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,eAAe,GAAG,IAAI,CAOxB"}
1
+ {"version":3,"file":"image-parsing.d.ts","sourceRoot":"","sources":["../../src/lib/image-parsing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAyIvE,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,eAAe,GAAG,IAAI,CAOxB"}
@@ -1,4 +1,3 @@
1
- // Image format signatures
2
1
  const PNG_SIGNATURE = [0x89, 0x50, 0x4e, 0x47];
3
2
  const JPEG_SIGNATURE = [0xff, 0xd8];
4
3
  const GIF_SIGNATURE = [0x47, 0x49, 0x46];
@@ -33,10 +32,12 @@ function parseJpeg(buffer) {
33
32
  (marker >= 0xc9 && marker <= 0xcb) ||
34
33
  (marker >= 0xcd && marker <= 0xcf));
35
34
  if (isSOF) {
36
- return {
37
- width: buffer.readUInt16BE(offset + 7),
38
- height: buffer.readUInt16BE(offset + 5),
39
- };
35
+ const width = buffer.readUInt16BE(offset + 7);
36
+ const height = buffer.readUInt16BE(offset + 5);
37
+ if (width <= 0 || height <= 0 || width > 65535 || height > 65535) {
38
+ return null;
39
+ }
40
+ return { width, height };
40
41
  }
41
42
  if (offset + 3 >= buffer.length)
42
43
  break;
@@ -67,34 +68,41 @@ function parseWebp(buffer) {
67
68
  return null;
68
69
  }
69
70
  const chunkType = [buffer[12], buffer[13], buffer[14], buffer[15]];
70
- // VP8 (lossy): 0x56 0x50 0x38 0x20
71
+ let width;
72
+ let height;
71
73
  if (chunkType[0] === 0x56 &&
72
74
  chunkType[1] === 0x50 &&
73
75
  chunkType[2] === 0x38 &&
74
76
  chunkType[3] === 0x20) {
75
- return {
76
- width: buffer.readUInt16LE(26) & 0x3fff,
77
- height: buffer.readUInt16LE(28) & 0x3fff,
78
- };
77
+ width = buffer.readUInt16LE(26) & 0x3fff;
78
+ height = buffer.readUInt16LE(28) & 0x3fff;
79
79
  }
80
- // VP8L (lossless): 0x56 0x50 0x38 0x4c
81
- if (chunkType[0] === 0x56 &&
80
+ else if (chunkType[0] === 0x56 &&
82
81
  chunkType[1] === 0x50 &&
83
82
  chunkType[2] === 0x38 &&
84
83
  chunkType[3] === 0x4c) {
85
84
  const bits = buffer.readUInt32LE(21);
86
- return { width: (bits & 0x3fff) + 1, height: ((bits >> 14) & 0x3fff) + 1 };
85
+ width = (bits & 0x3fff) + 1;
86
+ height = ((bits >> 14) & 0x3fff) + 1;
87
87
  }
88
- // VP8X (extended): 0x56 0x50 0x38 0x58
89
- if (chunkType[0] === 0x56 &&
88
+ else if (chunkType[0] === 0x56 &&
90
89
  chunkType[1] === 0x50 &&
91
90
  chunkType[2] === 0x38 &&
92
91
  chunkType[3] === 0x58) {
93
- const width = (buffer[24] ?? 0) | ((buffer[25] ?? 0) << 8) | ((buffer[26] ?? 0) << 16);
94
- const height = (buffer[27] ?? 0) | ((buffer[28] ?? 0) << 8) | ((buffer[29] ?? 0) << 16);
95
- return { width: width + 1, height: height + 1 };
92
+ width =
93
+ (buffer[24] ?? 0) | ((buffer[25] ?? 0) << 8) | ((buffer[26] ?? 0) << 16);
94
+ height =
95
+ (buffer[27] ?? 0) | ((buffer[28] ?? 0) << 8) | ((buffer[29] ?? 0) << 16);
96
+ width = width + 1;
97
+ height = height + 1;
96
98
  }
97
- return null;
99
+ else {
100
+ return null;
101
+ }
102
+ if (width <= 0 || height <= 0 || width > 16384 || height > 16384) {
103
+ return null;
104
+ }
105
+ return { width, height };
98
106
  }
99
107
  const IMAGE_PARSERS = {
100
108
  '.png': parsePng,
@@ -1 +1 @@
1
- {"version":3,"file":"image-parsing.js","sourceRoot":"","sources":["../../src/lib/image-parsing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image-parsing.js","sourceRoot":"","sources":["../../src/lib/image-parsing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-logger.d.ts","sourceRoot":"","sources":["../../src/lib/mcp-logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAOzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE5D;AAsBD,eAAO,MAAM,MAAM;iBACJ,MAAM,eAAe,MAAM,KAAG,IAAI;gBAGnC,MAAM,eAAe,MAAM,KAAG,IAAI;kBAGhC,MAAM,eAAe,MAAM,KAAG,IAAI;mBAGjC,MAAM,eAAe,MAAM,KAAG,IAAI;iBAGpC,MAAM,eAAe,MAAM,KAAG,IAAI;oBAG/B,MAAM,eAAe,MAAM,KAAG,IAAI;CAGnD,CAAC"}
1
+ {"version":3,"file":"mcp-logger.d.ts","sourceRoot":"","sources":["../../src/lib/mcp-logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AASzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAG5D;AA2BD,eAAO,MAAM,MAAM;iBACJ,MAAM,eAAe,MAAM,KAAG,IAAI;gBAGnC,MAAM,eAAe,MAAM,KAAG,IAAI;kBAGhC,MAAM,eAAe,MAAM,KAAG,IAAI;mBAGjC,MAAM,eAAe,MAAM,KAAG,IAAI;iBAGpC,MAAM,eAAe,MAAM,KAAG,IAAI;oBAG/B,MAAM,eAAe,MAAM,KAAG,IAAI;CAGnD,CAAC"}
@@ -1,26 +1,30 @@
1
1
  // Store the low-level server instance for logging
2
2
  let mcpServerInstance = null;
3
+ let loggingFailureCount = 0;
4
+ const MAX_FAILURE_WARNINGS = 10;
3
5
  export function setMcpServerInstance(server) {
4
6
  mcpServerInstance = server;
7
+ loggingFailureCount = 0; // Reset counter on new server
5
8
  }
6
9
  // Internal logging function - use `logger` object for external access
7
10
  function mcpLog(level, data, loggerName) {
8
11
  if (!mcpServerInstance) {
9
- // Fallback to stderr if server not connected
10
12
  console.error(`[${level}] ${loggerName ? `${loggerName}: ` : ''}${data}`);
11
13
  return;
12
14
  }
13
- try {
14
- void mcpServerInstance.server.sendLoggingMessage({
15
- level,
16
- data,
17
- logger: loggerName,
18
- });
19
- }
20
- catch {
21
- // Ignore logging errors - don't break operations
22
- console.error(`[${level}] ${data}`);
23
- }
15
+ mcpServerInstance.server
16
+ .sendLoggingMessage({
17
+ level,
18
+ data,
19
+ logger: loggerName,
20
+ })
21
+ .catch(() => {
22
+ loggingFailureCount++;
23
+ console.error(`[${level}] ${loggerName ? `${loggerName}: ` : ''}${data}`);
24
+ if (loggingFailureCount === MAX_FAILURE_WARNINGS) {
25
+ console.error('[CRITICAL] MCP logging failed 10 times. Further failures will not be reported.');
26
+ }
27
+ });
24
28
  }
25
29
  export const logger = {
26
30
  debug: (msg, loggerName) => {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-logger.js","sourceRoot":"","sources":["../../src/lib/mcp-logger.ts"],"names":[],"mappings":"AAIA,kDAAkD;AAClD,IAAI,iBAAiB,GAAqB,IAAI,CAAC;AAE/C,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,iBAAiB,GAAG,MAAM,CAAC;AAC7B,CAAC;AAED,sEAAsE;AACtE,SAAS,MAAM,CAAC,KAAe,EAAE,IAAY,EAAE,UAAmB;IAChE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,6CAA6C;QAC7C,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,KAAK,iBAAiB,CAAC,MAAM,CAAC,kBAAkB,CAAC;YAC/C,KAAK;YACL,IAAI;YACJ,MAAM,EAAE,UAAU;SACnB,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,iDAAiD;QACjD,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAChD,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAC/C,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QACjD,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAClD,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,KAAK,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAChD,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IACD,QAAQ,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QACnD,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"mcp-logger.js","sourceRoot":"","sources":["../../src/lib/mcp-logger.ts"],"names":[],"mappings":"AAIA,kDAAkD;AAClD,IAAI,iBAAiB,GAAqB,IAAI,CAAC;AAC/C,IAAI,mBAAmB,GAAG,CAAC,CAAC;AAC5B,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,iBAAiB,GAAG,MAAM,CAAC;IAC3B,mBAAmB,GAAG,CAAC,CAAC,CAAC,8BAA8B;AACzD,CAAC;AAED,sEAAsE;AACtE,SAAS,MAAM,CAAC,KAAe,EAAE,IAAY,EAAE,UAAmB;IAChE,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,iBAAiB,CAAC,MAAM;SACrB,kBAAkB,CAAC;QAClB,KAAK;QACL,IAAI;QACJ,MAAM,EAAE,UAAU;KACnB,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,mBAAmB,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAE1E,IAAI,mBAAmB,KAAK,oBAAoB,EAAE,CAAC;YACjD,OAAO,CAAC,KAAK,CACX,gFAAgF,CACjF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAChD,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAC/C,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QACjD,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAClD,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,KAAK,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QAChD,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IACD,QAAQ,EAAE,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QACnD,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"path-utils.d.ts","sourceRoot":"","sources":["../../src/lib/path-utils.ts"],"names":[],"mappings":"AAWA,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAU/C"}
1
+ {"version":3,"file":"path-utils.d.ts","sourceRoot":"","sources":["../../src/lib/path-utils.ts"],"names":[],"mappings":"AAUA,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAS/C"}
@@ -6,11 +6,9 @@ function expandHome(filepath) {
6
6
  }
7
7
  return filepath;
8
8
  }
9
- // Normalize path to canonical absolute form
10
9
  export function normalizePath(p) {
11
10
  const expanded = expandHome(p);
12
11
  const resolved = path.resolve(expanded);
13
- // On Windows, normalize drive letter to lowercase (C: -> c:)
14
12
  if (process.platform === 'win32' && /^[A-Z]:/.test(resolved)) {
15
13
  return resolved.charAt(0).toLowerCase() + resolved.slice(1);
16
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../../src/lib/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,SAAS,UAAU,CAAC,QAAgB;IAClC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAExC,6DAA6D;IAC7D,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../../src/lib/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,SAAS,UAAU,CAAC,QAAgB;IAClC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAExC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7D,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}