@mhalder/qdrant-mcp-server 3.3.3 → 3.3.4

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 (168) hide show
  1. package/.github/workflows/ci.yml +0 -2
  2. package/.github/workflows/claude-code-review.yml +1 -1
  3. package/CHANGELOG.md +6 -0
  4. package/README.md +1 -1
  5. package/biome.json +3 -2
  6. package/build/code/chunker/tree-sitter-chunker.d.ts.map +1 -1
  7. package/build/code/chunker/tree-sitter-chunker.js +2 -12
  8. package/build/code/chunker/tree-sitter-chunker.js.map +1 -1
  9. package/build/code/indexer.d.ts.map +1 -1
  10. package/build/code/indexer.js +12 -18
  11. package/build/code/indexer.js.map +1 -1
  12. package/build/code/scanner.js +1 -1
  13. package/build/code/scanner.js.map +1 -1
  14. package/build/embeddings/cohere.d.ts +1 -1
  15. package/build/embeddings/cohere.d.ts.map +1 -1
  16. package/build/embeddings/cohere.js +2 -2
  17. package/build/embeddings/cohere.js.map +1 -1
  18. package/build/embeddings/cohere.test.js +1 -5
  19. package/build/embeddings/cohere.test.js.map +1 -1
  20. package/build/embeddings/factory.d.ts +1 -1
  21. package/build/embeddings/factory.d.ts.map +1 -1
  22. package/build/embeddings/factory.js +7 -9
  23. package/build/embeddings/factory.js.map +1 -1
  24. package/build/embeddings/factory.test.js +3 -3
  25. package/build/embeddings/factory.test.js.map +1 -1
  26. package/build/embeddings/ollama.d.ts +1 -1
  27. package/build/embeddings/ollama.d.ts.map +1 -1
  28. package/build/embeddings/ollama.js +6 -8
  29. package/build/embeddings/ollama.js.map +1 -1
  30. package/build/embeddings/ollama.test.js +2 -6
  31. package/build/embeddings/ollama.test.js.map +1 -1
  32. package/build/embeddings/openai.d.ts +1 -1
  33. package/build/embeddings/openai.d.ts.map +1 -1
  34. package/build/embeddings/openai.js +4 -7
  35. package/build/embeddings/openai.js.map +1 -1
  36. package/build/embeddings/openai.test.js +3 -12
  37. package/build/embeddings/openai.test.js.map +1 -1
  38. package/build/embeddings/sparse.test.js +12 -2
  39. package/build/embeddings/sparse.test.js.map +1 -1
  40. package/build/embeddings/voyage.d.ts +1 -1
  41. package/build/embeddings/voyage.d.ts.map +1 -1
  42. package/build/embeddings/voyage.js +2 -3
  43. package/build/embeddings/voyage.js.map +1 -1
  44. package/build/embeddings/voyage.test.js +2 -6
  45. package/build/embeddings/voyage.test.js.map +1 -1
  46. package/build/git/chunker.d.ts.map +1 -1
  47. package/build/git/chunker.js +2 -2
  48. package/build/git/chunker.js.map +1 -1
  49. package/build/git/chunker.test.js +1 -1
  50. package/build/git/chunker.test.js.map +1 -1
  51. package/build/git/extractor.d.ts.map +1 -1
  52. package/build/git/extractor.integration.test.js +9 -5
  53. package/build/git/extractor.integration.test.js.map +1 -1
  54. package/build/git/extractor.js +1 -1
  55. package/build/git/extractor.js.map +1 -1
  56. package/build/git/extractor.test.js +2 -2
  57. package/build/git/extractor.test.js.map +1 -1
  58. package/build/git/index.d.ts +4 -4
  59. package/build/git/index.d.ts.map +1 -1
  60. package/build/git/index.js +3 -3
  61. package/build/git/index.js.map +1 -1
  62. package/build/git/indexer.d.ts.map +1 -1
  63. package/build/git/indexer.js +9 -21
  64. package/build/git/indexer.js.map +1 -1
  65. package/build/git/indexer.test.js +4 -8
  66. package/build/git/indexer.test.js.map +1 -1
  67. package/build/git/sync/synchronizer.d.ts.map +1 -1
  68. package/build/git/sync/synchronizer.js.map +1 -1
  69. package/build/git/sync/synchronizer.test.js +4 -2
  70. package/build/git/sync/synchronizer.test.js.map +1 -1
  71. package/build/index.js +5 -9
  72. package/build/index.js.map +1 -1
  73. package/build/index.test.js +3 -3
  74. package/build/index.test.js.map +1 -1
  75. package/build/logger.d.ts.map +1 -1
  76. package/build/logger.js +1 -9
  77. package/build/logger.js.map +1 -1
  78. package/build/prompts/register.d.ts.map +1 -1
  79. package/build/prompts/register.js.map +1 -1
  80. package/build/qdrant/client.d.ts.map +1 -1
  81. package/build/qdrant/client.js.map +1 -1
  82. package/build/qdrant/client.test.js +10 -34
  83. package/build/qdrant/client.test.js.map +1 -1
  84. package/build/resources/index.d.ts +1 -1
  85. package/build/resources/index.d.ts.map +1 -1
  86. package/build/resources/index.js +1 -1
  87. package/build/resources/index.js.map +1 -1
  88. package/build/tools/code.d.ts.map +1 -1
  89. package/build/tools/code.js +3 -9
  90. package/build/tools/code.js.map +1 -1
  91. package/build/tools/collection.d.ts.map +1 -1
  92. package/build/tools/collection.js +1 -3
  93. package/build/tools/collection.js.map +1 -1
  94. package/build/tools/document.d.ts.map +1 -1
  95. package/build/tools/document.js +1 -1
  96. package/build/tools/document.js.map +1 -1
  97. package/build/tools/federated.d.ts.map +1 -1
  98. package/build/tools/federated.js +15 -6
  99. package/build/tools/federated.js.map +1 -1
  100. package/build/tools/federated.test.js +18 -22
  101. package/build/tools/federated.test.js.map +1 -1
  102. package/build/tools/git-history.d.ts.map +1 -1
  103. package/build/tools/git-history.js +3 -7
  104. package/build/tools/git-history.js.map +1 -1
  105. package/build/tools/index.d.ts.map +1 -1
  106. package/build/tools/index.js.map +1 -1
  107. package/build/tools/logging.d.ts.map +1 -1
  108. package/build/tools/logging.js +1 -3
  109. package/build/tools/logging.js.map +1 -1
  110. package/build/tools/logging.test.js +1 -1
  111. package/build/tools/logging.test.js.map +1 -1
  112. package/build/tools/schemas.d.ts.map +1 -1
  113. package/build/tools/schemas.js +17 -64
  114. package/build/tools/schemas.js.map +1 -1
  115. package/build/tools/search.d.ts.map +1 -1
  116. package/build/tools/search.js +1 -1
  117. package/build/tools/search.js.map +1 -1
  118. package/commitlint.config.js +12 -23
  119. package/package.json +1 -1
  120. package/scripts/verify-providers.js +12 -32
  121. package/src/code/chunker/tree-sitter-chunker.ts +9 -35
  122. package/src/code/indexer.ts +45 -107
  123. package/src/code/scanner.ts +1 -1
  124. package/src/embeddings/cohere.test.ts +17 -45
  125. package/src/embeddings/cohere.ts +10 -17
  126. package/src/embeddings/factory.test.ts +18 -18
  127. package/src/embeddings/factory.ts +18 -25
  128. package/src/embeddings/ollama.test.ts +38 -67
  129. package/src/embeddings/ollama.ts +15 -27
  130. package/src/embeddings/openai.test.ts +17 -53
  131. package/src/embeddings/openai.ts +11 -22
  132. package/src/embeddings/sparse.test.ts +12 -2
  133. package/src/embeddings/voyage.test.ts +39 -80
  134. package/src/embeddings/voyage.ts +9 -13
  135. package/src/git/chunker.test.ts +1 -1
  136. package/src/git/chunker.ts +6 -22
  137. package/src/git/extractor.integration.test.ts +12 -16
  138. package/src/git/extractor.test.ts +21 -35
  139. package/src/git/extractor.ts +14 -36
  140. package/src/git/index.ts +9 -10
  141. package/src/git/indexer.test.ts +29 -57
  142. package/src/git/indexer.ts +38 -86
  143. package/src/git/sync/synchronizer.test.ts +6 -9
  144. package/src/git/sync/synchronizer.ts +2 -5
  145. package/src/index.test.ts +7 -9
  146. package/src/index.ts +34 -80
  147. package/src/logger.ts +3 -14
  148. package/src/prompts/register.ts +3 -10
  149. package/src/qdrant/client.test.ts +63 -169
  150. package/src/qdrant/client.ts +19 -45
  151. package/src/resources/index.ts +4 -10
  152. package/src/tools/code.ts +43 -66
  153. package/src/tools/collection.ts +19 -38
  154. package/src/tools/document.ts +10 -19
  155. package/src/tools/federated.test.ts +34 -57
  156. package/src/tools/federated.ts +88 -108
  157. package/src/tools/git-history.ts +32 -60
  158. package/src/tools/index.ts +1 -4
  159. package/src/tools/logging.test.ts +10 -10
  160. package/src/tools/logging.ts +8 -18
  161. package/src/tools/schemas.ts +23 -78
  162. package/src/tools/search.ts +77 -94
  163. package/tests/code/chunker/tree-sitter-chunker.test.ts +6 -19
  164. package/tests/code/indexer.test.ts +100 -192
  165. package/tests/code/integration.test.ts +61 -117
  166. package/tests/code/scanner.test.ts +12 -39
  167. package/tests/code/sync/snapshot.test.ts +4 -14
  168. package/tests/code/sync/synchronizer.test.ts +10 -40
@@ -14,7 +14,7 @@ describe("FileSynchronizer", () => {
14
14
  // Create temporary directories for testing
15
15
  tempDir = join(
16
16
  tmpdir(),
17
- `qdrant-mcp-test-${Date.now()}-${Math.random().toString(36).substring(7)}`,
17
+ `qdrant-mcp-test-${Date.now()}-${Math.random().toString(36).substring(7)}`
18
18
  );
19
19
  codebaseDir = join(tempDir, "codebase");
20
20
  await fs.mkdir(codebaseDir, { recursive: true });
@@ -34,12 +34,7 @@ describe("FileSynchronizer", () => {
34
34
 
35
35
  // Clean up snapshot file
36
36
  try {
37
- const snapshotPath = join(
38
- homedir(),
39
- ".qdrant-mcp",
40
- "snapshots",
41
- `${collectionName}.json`,
42
- );
37
+ const snapshotPath = join(homedir(), ".qdrant-mcp", "snapshots", `${collectionName}.json`);
43
38
  await fs.rm(snapshotPath, { force: true });
44
39
  } catch (_error) {
45
40
  // Ignore cleanup errors
@@ -88,11 +83,7 @@ describe("FileSynchronizer", () => {
88
83
 
89
84
  await synchronizer.updateSnapshot(["file1.ts", "file2.ts"]);
90
85
 
91
- const newSync = new FileSynchronizer(
92
- codebaseDir,
93
- collectionName,
94
- tempDir,
95
- );
86
+ const newSync = new FileSynchronizer(codebaseDir, collectionName, tempDir);
96
87
  const hasSnapshot = await newSync.initialize();
97
88
 
98
89
  expect(hasSnapshot).toBe(true);
@@ -147,10 +138,7 @@ describe("FileSynchronizer", () => {
147
138
  await createFile(codebaseDir, "file1.ts", "content1");
148
139
  await createFile(codebaseDir, "file2.ts", "content2");
149
140
 
150
- const changes = await synchronizer.detectChanges([
151
- "file1.ts",
152
- "file2.ts",
153
- ]);
141
+ const changes = await synchronizer.detectChanges(["file1.ts", "file2.ts"]);
154
142
 
155
143
  expect(changes.added).toContain("file1.ts");
156
144
  expect(changes.added).toContain("file2.ts");
@@ -198,10 +186,7 @@ describe("FileSynchronizer", () => {
198
186
 
199
187
  // Delete file2
200
188
 
201
- const changes = await synchronizer.detectChanges([
202
- "file1.ts",
203
- "file3.ts",
204
- ]);
189
+ const changes = await synchronizer.detectChanges(["file1.ts", "file3.ts"]);
205
190
 
206
191
  expect(changes.added).toEqual(["file3.ts"]);
207
192
  expect(changes.modified).toEqual(["file1.ts"]);
@@ -223,10 +208,7 @@ describe("FileSynchronizer", () => {
223
208
  await createFile(codebaseDir, "file1.ts", "content1");
224
209
  await createFile(codebaseDir, "file2.ts", "content2");
225
210
 
226
- const changes = await synchronizer.detectChanges([
227
- "file1.ts",
228
- "file2.ts",
229
- ]);
211
+ const changes = await synchronizer.detectChanges(["file1.ts", "file2.ts"]);
230
212
 
231
213
  expect(changes.added).toContain("file1.ts");
232
214
  expect(changes.added).toContain("file2.ts");
@@ -276,10 +258,7 @@ describe("FileSynchronizer", () => {
276
258
 
277
259
  await synchronizer.updateSnapshot(["file1.ts", "file2.ts"]);
278
260
 
279
- const changes = await synchronizer.detectChanges([
280
- "file1.ts",
281
- "file2.ts",
282
- ]);
261
+ const changes = await synchronizer.detectChanges(["file1.ts", "file2.ts"]);
283
262
 
284
263
  expect(changes.added).toEqual([]);
285
264
  expect(changes.modified).toEqual([]);
@@ -336,9 +315,7 @@ describe("FileSynchronizer", () => {
336
315
 
337
316
  await synchronizer.updateSnapshot(["src/components/Button.tsx"]);
338
317
 
339
- const changes = await synchronizer.detectChanges([
340
- "src/components/Button.tsx",
341
- ]);
318
+ const changes = await synchronizer.detectChanges(["src/components/Button.tsx"]);
342
319
 
343
320
  expect(changes.modified).toEqual([]);
344
321
  });
@@ -498,10 +475,7 @@ describe("FileSynchronizer", () => {
498
475
 
499
476
  await createFile(codebaseDir, "file2.ts", "content2");
500
477
 
501
- const needsReindex = await synchronizer.needsReindex([
502
- "file1.ts",
503
- "file2.ts",
504
- ]);
478
+ const needsReindex = await synchronizer.needsReindex(["file1.ts", "file2.ts"]);
505
479
 
506
480
  expect(needsReindex).toBe(true);
507
481
  });
@@ -565,11 +539,7 @@ describe("FileSynchronizer", () => {
565
539
  });
566
540
 
567
541
  // Helper function to create files in the test codebase
568
- async function createFile(
569
- baseDir: string,
570
- relativePath: string,
571
- content: string,
572
- ): Promise<void> {
542
+ async function createFile(baseDir: string, relativePath: string, content: string): Promise<void> {
573
543
  const fullPath = join(baseDir, relativePath);
574
544
  const dir = join(fullPath, "..");
575
545
  await fs.mkdir(dir, { recursive: true });