@milo4jo/contextkit 0.5.7 → 0.5.8

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":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAwCnE;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAuOxC;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAsjBnE;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,CA8WxC;AAED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD"}
@@ -37,6 +37,437 @@ function getIndexStats(db) {
37
37
  totalSources: sourceCount.count,
38
38
  };
39
39
  }
40
+ function extractSymbols(content, filePath) {
41
+ const symbols = [];
42
+ const lines = content.split('\n');
43
+ const ext = filePath.split('.').pop()?.toLowerCase();
44
+ for (let i = 0; i < lines.length; i++) {
45
+ const line = lines[i];
46
+ const trimmed = line.trim();
47
+ const lineNum = i + 1;
48
+ // TypeScript/JavaScript patterns
49
+ if (ext === 'ts' || ext === 'tsx' || ext === 'js' || ext === 'jsx') {
50
+ const funcMatch = trimmed.match(/^(export\s+)?(async\s+)?function\s+(\w+)/);
51
+ if (funcMatch) {
52
+ symbols.push({
53
+ filePath,
54
+ symbolName: funcMatch[3],
55
+ symbolType: 'function',
56
+ startLine: lineNum,
57
+ endLine: findBlockEnd(lines, i),
58
+ signature: extractSignatureLine(trimmed),
59
+ });
60
+ continue;
61
+ }
62
+ const classMatch = trimmed.match(/^(export\s+)?(abstract\s+)?class\s+(\w+)/);
63
+ if (classMatch) {
64
+ symbols.push({
65
+ filePath,
66
+ symbolName: classMatch[3],
67
+ symbolType: 'class',
68
+ startLine: lineNum,
69
+ endLine: findBlockEnd(lines, i),
70
+ signature: extractSignatureLine(trimmed),
71
+ });
72
+ continue;
73
+ }
74
+ const interfaceMatch = trimmed.match(/^(export\s+)?interface\s+(\w+)/);
75
+ if (interfaceMatch) {
76
+ symbols.push({
77
+ filePath,
78
+ symbolName: interfaceMatch[2],
79
+ symbolType: 'interface',
80
+ startLine: lineNum,
81
+ endLine: findBlockEnd(lines, i),
82
+ signature: extractSignatureLine(trimmed),
83
+ });
84
+ continue;
85
+ }
86
+ const typeMatch = trimmed.match(/^(export\s+)?type\s+(\w+)/);
87
+ if (typeMatch) {
88
+ symbols.push({
89
+ filePath,
90
+ symbolName: typeMatch[2],
91
+ symbolType: 'type',
92
+ startLine: lineNum,
93
+ endLine: findTypeEnd(lines, i),
94
+ signature: trimmed,
95
+ });
96
+ continue;
97
+ }
98
+ const constMatch = trimmed.match(/^(export\s+)?(const|let|var)\s+(\w+)/);
99
+ if (constMatch) {
100
+ const isFunction = trimmed.includes('=>') || trimmed.includes('function');
101
+ symbols.push({
102
+ filePath,
103
+ symbolName: constMatch[3],
104
+ symbolType: isFunction ? 'function' : 'constant',
105
+ startLine: lineNum,
106
+ endLine: findStatementEnd(lines, i),
107
+ signature: extractSignatureLine(trimmed),
108
+ });
109
+ continue;
110
+ }
111
+ }
112
+ // Python patterns
113
+ if (ext === 'py') {
114
+ const pyFuncMatch = trimmed.match(/^(async\s+)?def\s+(\w+)/);
115
+ if (pyFuncMatch) {
116
+ symbols.push({
117
+ filePath,
118
+ symbolName: pyFuncMatch[2],
119
+ symbolType: 'function',
120
+ startLine: lineNum,
121
+ endLine: findPythonBlockEnd(lines, i),
122
+ signature: trimmed.replace(/:$/, ''),
123
+ });
124
+ continue;
125
+ }
126
+ const pyClassMatch = trimmed.match(/^class\s+(\w+)/);
127
+ if (pyClassMatch) {
128
+ symbols.push({
129
+ filePath,
130
+ symbolName: pyClassMatch[1],
131
+ symbolType: 'class',
132
+ startLine: lineNum,
133
+ endLine: findPythonBlockEnd(lines, i),
134
+ signature: trimmed.replace(/:$/, ''),
135
+ });
136
+ continue;
137
+ }
138
+ }
139
+ // Go patterns
140
+ if (ext === 'go') {
141
+ const goFuncMatch = trimmed.match(/^func\s+(\w+)/);
142
+ if (goFuncMatch) {
143
+ symbols.push({
144
+ filePath,
145
+ symbolName: goFuncMatch[1],
146
+ symbolType: 'function',
147
+ startLine: lineNum,
148
+ endLine: findBlockEnd(lines, i),
149
+ signature: trimmed.replace(/\s*\{$/, ''),
150
+ });
151
+ continue;
152
+ }
153
+ const goMethodMatch = trimmed.match(/^func\s+\([^)]+\)\s+(\w+)/);
154
+ if (goMethodMatch) {
155
+ symbols.push({
156
+ filePath,
157
+ symbolName: goMethodMatch[1],
158
+ symbolType: 'method',
159
+ startLine: lineNum,
160
+ endLine: findBlockEnd(lines, i),
161
+ signature: trimmed.replace(/\s*\{$/, ''),
162
+ });
163
+ continue;
164
+ }
165
+ }
166
+ // Rust patterns
167
+ if (ext === 'rs') {
168
+ const rustFuncMatch = trimmed.match(/^(pub\s+)?(async\s+)?fn\s+(\w+)/);
169
+ if (rustFuncMatch) {
170
+ symbols.push({
171
+ filePath,
172
+ symbolName: rustFuncMatch[3],
173
+ symbolType: 'function',
174
+ startLine: lineNum,
175
+ endLine: findBlockEnd(lines, i),
176
+ signature: trimmed.replace(/\s*\{$/, ''),
177
+ });
178
+ continue;
179
+ }
180
+ }
181
+ }
182
+ return symbols;
183
+ }
184
+ function findBlockEnd(lines, startIdx) {
185
+ let braceCount = 0;
186
+ let started = false;
187
+ for (let i = startIdx; i < lines.length; i++) {
188
+ const line = lines[i];
189
+ for (const char of line) {
190
+ if (char === '{') {
191
+ braceCount++;
192
+ started = true;
193
+ }
194
+ else if (char === '}') {
195
+ braceCount--;
196
+ if (started && braceCount === 0) {
197
+ return i + 1;
198
+ }
199
+ }
200
+ }
201
+ }
202
+ return lines.length;
203
+ }
204
+ function findPythonBlockEnd(lines, startIdx) {
205
+ const startLine = lines[startIdx];
206
+ const startIndent = startLine.length - startLine.trimStart().length;
207
+ for (let i = startIdx + 1; i < lines.length; i++) {
208
+ const line = lines[i];
209
+ const trimmed = line.trim();
210
+ if (!trimmed)
211
+ continue;
212
+ const indent = line.length - line.trimStart().length;
213
+ if (indent <= startIndent) {
214
+ return i;
215
+ }
216
+ }
217
+ return lines.length;
218
+ }
219
+ function findTypeEnd(lines, startIdx) {
220
+ for (let i = startIdx; i < lines.length; i++) {
221
+ if (lines[i].includes(';')) {
222
+ return i + 1;
223
+ }
224
+ }
225
+ return startIdx + 1;
226
+ }
227
+ function findStatementEnd(lines, startIdx) {
228
+ const startLine = lines[startIdx];
229
+ if (startLine.trim().endsWith(';')) {
230
+ return startIdx + 1;
231
+ }
232
+ if (startLine.includes('=>') || startLine.includes('{')) {
233
+ return findBlockEnd(lines, startIdx);
234
+ }
235
+ for (let i = startIdx; i < Math.min(startIdx + 20, lines.length); i++) {
236
+ if (lines[i].trim().endsWith(';')) {
237
+ return i + 1;
238
+ }
239
+ }
240
+ return startIdx + 1;
241
+ }
242
+ function extractSignatureLine(line) {
243
+ const braceIdx = line.indexOf('{');
244
+ if (braceIdx > 0) {
245
+ return line.substring(0, braceIdx).trim();
246
+ }
247
+ return line.trim();
248
+ }
249
+ function searchSymbols(db, query, options) {
250
+ const { exact = false, limit = 20, sources } = options;
251
+ let sql = 'SELECT DISTINCT file_path, content FROM chunks';
252
+ const params = [];
253
+ if (sources && sources.length > 0) {
254
+ sql += ' WHERE source_id IN (' + sources.map(() => '?').join(',') + ')';
255
+ params.push(...sources);
256
+ }
257
+ const rows = db.prepare(sql).all(...params);
258
+ const allSymbols = [];
259
+ const queryLower = query.toLowerCase();
260
+ for (const row of rows) {
261
+ const symbols = extractSymbols(row.content, row.file_path);
262
+ for (const sym of symbols) {
263
+ const nameLower = sym.symbolName.toLowerCase();
264
+ if (exact) {
265
+ if (nameLower === queryLower) {
266
+ allSymbols.push(sym);
267
+ }
268
+ }
269
+ else {
270
+ const isExactMatch = nameLower === queryLower;
271
+ const containsQuery = nameLower.includes(queryLower);
272
+ const isSignificantName = sym.symbolName.length >= 3;
273
+ if (isExactMatch || (containsQuery && isSignificantName)) {
274
+ allSymbols.push(sym);
275
+ }
276
+ }
277
+ }
278
+ }
279
+ allSymbols.sort((a, b) => {
280
+ const aExact = a.symbolName.toLowerCase() === queryLower;
281
+ const bExact = b.symbolName.toLowerCase() === queryLower;
282
+ if (aExact && !bExact)
283
+ return -1;
284
+ if (!aExact && bExact)
285
+ return 1;
286
+ return a.symbolName.length - b.symbolName.length;
287
+ });
288
+ return allSymbols.slice(0, limit);
289
+ }
290
+ function getTypeIcon(type) {
291
+ switch (type) {
292
+ case 'function': return '𝑓';
293
+ case 'class': return '◆';
294
+ case 'method': return '◇';
295
+ case 'interface': return '◈';
296
+ case 'type': return '⊤';
297
+ case 'constant': return '●';
298
+ case 'variable': return '○';
299
+ default: return '•';
300
+ }
301
+ }
302
+ function formatSymbolsForMcp(symbols) {
303
+ if (symbols.length === 0) {
304
+ return 'No symbols found.';
305
+ }
306
+ const lines = [];
307
+ const byFile = new Map();
308
+ for (const sym of symbols) {
309
+ const existing = byFile.get(sym.filePath) || [];
310
+ existing.push(sym);
311
+ byFile.set(sym.filePath, existing);
312
+ }
313
+ for (const [filePath, fileSymbols] of byFile) {
314
+ lines.push(`📄 ${filePath}`);
315
+ for (const sym of fileSymbols) {
316
+ const typeIcon = getTypeIcon(sym.symbolType);
317
+ lines.push(` ${typeIcon} ${sym.symbolName} (line ${sym.startLine})`);
318
+ lines.push(` ${sym.signature}`);
319
+ }
320
+ lines.push('');
321
+ }
322
+ lines.push(`Found ${symbols.length} symbol(s)`);
323
+ return lines.join('\n');
324
+ }
325
+ function extractFunctionDefs(content, filePath) {
326
+ const functions = new Map();
327
+ const lines = content.split('\n');
328
+ const ext = filePath.split('.').pop()?.toLowerCase();
329
+ for (let i = 0; i < lines.length; i++) {
330
+ const line = lines[i];
331
+ const trimmed = line.trim();
332
+ if (ext === 'ts' || ext === 'tsx' || ext === 'js' || ext === 'jsx') {
333
+ const funcMatch = trimmed.match(/^(export\s+)?(async\s+)?function\s+(\w+)/);
334
+ if (funcMatch) {
335
+ functions.set(funcMatch[3], { startLine: i + 1, endLine: findBlockEnd(lines, i) });
336
+ continue;
337
+ }
338
+ const arrowMatch = trimmed.match(/^(export\s+)?(const|let|var)\s+(\w+)\s*=\s*(async\s+)?\(/);
339
+ if (arrowMatch) {
340
+ functions.set(arrowMatch[3], { startLine: i + 1, endLine: findBlockEnd(lines, i) });
341
+ continue;
342
+ }
343
+ }
344
+ if (ext === 'py') {
345
+ const defMatch = trimmed.match(/^(async\s+)?def\s+(\w+)/);
346
+ if (defMatch) {
347
+ functions.set(defMatch[2], { startLine: i + 1, endLine: findPythonBlockEnd(lines, i) });
348
+ continue;
349
+ }
350
+ }
351
+ if (ext === 'go') {
352
+ const funcMatch = trimmed.match(/^func\s+(?:\([^)]+\)\s+)?(\w+)/);
353
+ if (funcMatch) {
354
+ functions.set(funcMatch[1], { startLine: i + 1, endLine: findBlockEnd(lines, i) });
355
+ continue;
356
+ }
357
+ }
358
+ if (ext === 'rs') {
359
+ const fnMatch = trimmed.match(/^(pub\s+)?(async\s+)?fn\s+(\w+)/);
360
+ if (fnMatch) {
361
+ functions.set(fnMatch[3], { startLine: i + 1, endLine: findBlockEnd(lines, i) });
362
+ continue;
363
+ }
364
+ }
365
+ }
366
+ return functions;
367
+ }
368
+ function findFunctionCalls(content, startLine, endLine, knownFunctions) {
369
+ const calls = [];
370
+ const lines = content.split('\n');
371
+ const callPattern = /\b(\w+)\s*\(/g;
372
+ const keywords = new Set(['if', 'else', 'while', 'for', 'switch', 'catch', 'return', 'throw', 'new', 'typeof', 'import', 'export', 'const', 'let', 'var', 'function', 'class', 'interface', 'type', 'async', 'await', 'try', 'finally']);
373
+ for (let i = startLine - 1; i < Math.min(endLine, lines.length); i++) {
374
+ const line = lines[i];
375
+ const trimmed = line.trim();
376
+ if (trimmed.startsWith('//') || trimmed.startsWith('#') || trimmed.startsWith('*')) {
377
+ continue;
378
+ }
379
+ let match;
380
+ while ((match = callPattern.exec(line)) !== null) {
381
+ const name = match[1];
382
+ if (!keywords.has(name) && (knownFunctions.has(name) || name[0] === name[0].toLowerCase())) {
383
+ calls.push({ name, line: i + 1 });
384
+ }
385
+ }
386
+ }
387
+ return calls;
388
+ }
389
+ function buildCallGraph(db, targetName, sources) {
390
+ let sql = 'SELECT file_path, content FROM chunks';
391
+ const params = [];
392
+ if (sources && sources.length > 0) {
393
+ sql += ' WHERE source_id IN (' + sources.map(() => '?').join(',') + ')';
394
+ params.push(...sources);
395
+ }
396
+ const rows = db.prepare(sql).all(...params);
397
+ const functionsByFile = new Map();
398
+ const allFunctions = new Set();
399
+ for (const row of rows) {
400
+ const funcs = extractFunctionDefs(row.content, row.file_path);
401
+ if (funcs.size > 0) {
402
+ functionsByFile.set(row.file_path, funcs);
403
+ for (const name of funcs.keys()) {
404
+ allFunctions.add(name);
405
+ }
406
+ }
407
+ }
408
+ const callers = [];
409
+ const callees = [];
410
+ for (const row of rows) {
411
+ const fileFuncs = functionsByFile.get(row.file_path);
412
+ if (!fileFuncs)
413
+ continue;
414
+ for (const [funcName, { startLine, endLine }] of fileFuncs) {
415
+ const calls = findFunctionCalls(row.content, startLine, endLine, allFunctions);
416
+ for (const call of calls) {
417
+ if (call.name === targetName && funcName !== targetName) {
418
+ callers.push({ file: row.file_path, function: funcName, line: call.line });
419
+ }
420
+ }
421
+ }
422
+ const targetFunc = fileFuncs.get(targetName);
423
+ if (targetFunc) {
424
+ const calls = findFunctionCalls(row.content, targetFunc.startLine, targetFunc.endLine, allFunctions);
425
+ for (const call of calls) {
426
+ if (call.name !== targetName) {
427
+ let definedIn = '(external)';
428
+ for (const [file, funcs] of functionsByFile) {
429
+ if (funcs.has(call.name)) {
430
+ definedIn = file;
431
+ break;
432
+ }
433
+ }
434
+ callees.push({ file: definedIn, function: call.name });
435
+ }
436
+ }
437
+ }
438
+ }
439
+ const uniqueCallers = Array.from(new Map(callers.map(c => [`${c.file}:${c.function}`, c])).values());
440
+ const uniqueCallees = Array.from(new Map(callees.map(c => [`${c.file}:${c.function}`, c])).values());
441
+ return { target: targetName, callers: uniqueCallers, callees: uniqueCallees };
442
+ }
443
+ function formatCallGraphForMcp(result) {
444
+ const lines = [];
445
+ lines.push(`🎯 Call graph for: ${result.target}`);
446
+ lines.push('');
447
+ lines.push(`📥 Callers (${result.callers.length}):`);
448
+ if (result.callers.length === 0) {
449
+ lines.push(' (none found)');
450
+ }
451
+ else {
452
+ for (const caller of result.callers) {
453
+ lines.push(` ← ${caller.function} (${caller.file}:${caller.line})`);
454
+ }
455
+ }
456
+ lines.push('');
457
+ lines.push(`📤 Calls (${result.callees.length}):`);
458
+ if (result.callees.length === 0) {
459
+ lines.push(' (none found)');
460
+ }
461
+ else {
462
+ for (const callee of result.callees) {
463
+ lines.push(` → ${callee.function} (${callee.file})`);
464
+ }
465
+ }
466
+ return lines.join('\n');
467
+ }
468
+ // ============================================================================
469
+ // MCP Server
470
+ // ============================================================================
40
471
  /**
41
472
  * Create and configure the MCP server
42
473
  */
@@ -67,6 +498,11 @@ export function createMcpServer() {
67
498
  type: "number",
68
499
  description: "Maximum tokens to return (default: 8000)",
69
500
  },
501
+ mode: {
502
+ type: "string",
503
+ enum: ["full", "map"],
504
+ description: "Selection mode: 'full' for complete code (default), 'map' for signatures only (uses fewer tokens)",
505
+ },
70
506
  sources: {
71
507
  type: "string",
72
508
  description: "Comma-separated list of sources to filter (optional)",
@@ -75,6 +511,42 @@ export function createMcpServer() {
75
511
  required: ["query"],
76
512
  },
77
513
  },
514
+ {
515
+ name: "contextkit_symbol",
516
+ description: "Search for code symbols (functions, classes, interfaces, types) by name. Faster than semantic search when you know the symbol name.",
517
+ inputSchema: {
518
+ type: "object",
519
+ properties: {
520
+ name: {
521
+ type: "string",
522
+ description: "Symbol name to search for (e.g., 'handleAuth', 'UserService')",
523
+ },
524
+ exact: {
525
+ type: "boolean",
526
+ description: "Require exact match (default: false, uses fuzzy matching)",
527
+ },
528
+ limit: {
529
+ type: "number",
530
+ description: "Maximum number of results (default: 20)",
531
+ },
532
+ },
533
+ required: ["name"],
534
+ },
535
+ },
536
+ {
537
+ name: "contextkit_graph",
538
+ description: "Show call graph for a function: what functions call it (callers) and what it calls (callees). Useful for understanding code flow and dependencies.",
539
+ inputSchema: {
540
+ type: "object",
541
+ properties: {
542
+ function: {
543
+ type: "string",
544
+ description: "Function name to analyze",
545
+ },
546
+ },
547
+ required: ["function"],
548
+ },
549
+ },
78
550
  {
79
551
  name: "contextkit_index",
80
552
  description: "Index or re-index the codebase. Run this after making changes to ensure context is up to date.",
@@ -113,6 +585,7 @@ export function createMcpServer() {
113
585
  }
114
586
  const query = args?.query || "";
115
587
  const budget = args?.budget || 8000;
588
+ const mode = args?.mode || 'full';
116
589
  const sourcesStr = args?.sources;
117
590
  const sources = sourcesStr
118
591
  ? sourcesStr.split(",").map((s) => s.trim())
@@ -129,6 +602,7 @@ export function createMcpServer() {
129
602
  query,
130
603
  budget,
131
604
  sources,
605
+ mode,
132
606
  };
133
607
  const result = await selectContext(db, options);
134
608
  if (result.isEmpty) {
@@ -151,7 +625,6 @@ export function createMcpServer() {
151
625
  ],
152
626
  };
153
627
  }
154
- // Return formatted output
155
628
  return {
156
629
  content: [{ type: "text", text: result.output.text }],
157
630
  };
@@ -160,6 +633,80 @@ export function createMcpServer() {
160
633
  db.close();
161
634
  }
162
635
  }
636
+ case "contextkit_symbol": {
637
+ if (!isInitialized()) {
638
+ return {
639
+ content: [
640
+ {
641
+ type: "text",
642
+ text: "ContextKit not initialized. Run `contextkit init` first.",
643
+ },
644
+ ],
645
+ isError: true,
646
+ };
647
+ }
648
+ const symbolName = args?.name || "";
649
+ const exact = args?.exact || false;
650
+ const limit = args?.limit || 20;
651
+ if (!symbolName) {
652
+ return {
653
+ content: [{ type: "text", text: "Error: name is required" }],
654
+ isError: true,
655
+ };
656
+ }
657
+ const db = openDatabase();
658
+ try {
659
+ const symbols = searchSymbols(db, symbolName, { exact, limit });
660
+ const output = formatSymbolsForMcp(symbols);
661
+ return {
662
+ content: [{ type: "text", text: output }],
663
+ };
664
+ }
665
+ finally {
666
+ db.close();
667
+ }
668
+ }
669
+ case "contextkit_graph": {
670
+ if (!isInitialized()) {
671
+ return {
672
+ content: [
673
+ {
674
+ type: "text",
675
+ text: "ContextKit not initialized. Run `contextkit init` first.",
676
+ },
677
+ ],
678
+ isError: true,
679
+ };
680
+ }
681
+ const functionName = args?.function || "";
682
+ if (!functionName) {
683
+ return {
684
+ content: [{ type: "text", text: "Error: function name is required" }],
685
+ isError: true,
686
+ };
687
+ }
688
+ const db = openDatabase();
689
+ try {
690
+ const result = buildCallGraph(db, functionName);
691
+ if (result.callers.length === 0 && result.callees.length === 0) {
692
+ return {
693
+ content: [
694
+ {
695
+ type: "text",
696
+ text: `No call relationships found for "${functionName}". Make sure the function exists and the codebase is indexed.`,
697
+ },
698
+ ],
699
+ };
700
+ }
701
+ const output = formatCallGraphForMcp(result);
702
+ return {
703
+ content: [{ type: "text", text: output }],
704
+ };
705
+ }
706
+ finally {
707
+ db.close();
708
+ }
709
+ }
163
710
  case "contextkit_index": {
164
711
  if (!isInitialized()) {
165
712
  return {
@@ -210,9 +757,16 @@ export function createMcpServer() {
210
757
  const statusText = [
211
758
  "ContextKit Status",
212
759
  "=================",
760
+ `Version: ${VERSION}`,
213
761
  `Sources configured: ${config.sources.length}`,
214
762
  `Chunks indexed: ${stats.totalChunks}`,
215
763
  "",
764
+ "Available tools:",
765
+ " • contextkit_select - Semantic context search",
766
+ " • contextkit_symbol - Symbol name search",
767
+ " • contextkit_graph - Function call graph",
768
+ " • contextkit_index - Re-index codebase",
769
+ "",
216
770
  "Sources:",
217
771
  ...config.sources.map((s) => ` - ${s.id}: ${s.path}`),
218
772
  ].join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@milo4jo/contextkit",
3
- "version": "0.5.7",
3
+ "version": "0.5.8",
4
4
  "description": "Intelligent context selection for LLM applications",
5
5
  "author": "Milo <milo4jo@outlook.de>",
6
6
  "license": "MIT",