abb-opencode-local-rag 0.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 (233) hide show
  1. package/LICENSE +21 -0
  2. package/README.de.md +416 -0
  3. package/README.es.md +416 -0
  4. package/README.fr.md +416 -0
  5. package/README.md +491 -0
  6. package/README.pt-BR.md +416 -0
  7. package/README.zh-CN.md +416 -0
  8. package/dist/bin/install-skills.d.ts +20 -0
  9. package/dist/bin/install-skills.d.ts.map +1 -0
  10. package/dist/bin/install-skills.js +195 -0
  11. package/dist/bin/install-skills.js.map +1 -0
  12. package/dist/chunker/index.d.ts +24 -0
  13. package/dist/chunker/index.d.ts.map +1 -0
  14. package/dist/chunker/index.js +2 -0
  15. package/dist/chunker/index.js.map +1 -0
  16. package/dist/chunker/semantic-chunker.d.ts +97 -0
  17. package/dist/chunker/semantic-chunker.d.ts.map +1 -0
  18. package/dist/chunker/semantic-chunker.js +294 -0
  19. package/dist/chunker/semantic-chunker.js.map +1 -0
  20. package/dist/chunker/sentence-splitter.d.ts +28 -0
  21. package/dist/chunker/sentence-splitter.d.ts.map +1 -0
  22. package/dist/chunker/sentence-splitter.js +219 -0
  23. package/dist/chunker/sentence-splitter.js.map +1 -0
  24. package/dist/cli/common.d.ts +65 -0
  25. package/dist/cli/common.d.ts.map +1 -0
  26. package/dist/cli/common.js +138 -0
  27. package/dist/cli/common.js.map +1 -0
  28. package/dist/cli/delete.d.ts +8 -0
  29. package/dist/cli/delete.d.ts.map +1 -0
  30. package/dist/cli/delete.js +173 -0
  31. package/dist/cli/delete.js.map +1 -0
  32. package/dist/cli/file-collection.d.ts +2 -0
  33. package/dist/cli/file-collection.d.ts.map +1 -0
  34. package/dist/cli/file-collection.js +53 -0
  35. package/dist/cli/file-collection.js.map +1 -0
  36. package/dist/cli/ingest.d.ts +100 -0
  37. package/dist/cli/ingest.d.ts.map +1 -0
  38. package/dist/cli/ingest.js +363 -0
  39. package/dist/cli/ingest.js.map +1 -0
  40. package/dist/cli/list.d.ts +35 -0
  41. package/dist/cli/list.d.ts.map +1 -0
  42. package/dist/cli/list.js +210 -0
  43. package/dist/cli/list.js.map +1 -0
  44. package/dist/cli/options.d.ts +100 -0
  45. package/dist/cli/options.d.ts.map +1 -0
  46. package/dist/cli/options.js +241 -0
  47. package/dist/cli/options.js.map +1 -0
  48. package/dist/cli/query.d.ts +24 -0
  49. package/dist/cli/query.d.ts.map +1 -0
  50. package/dist/cli/query.js +191 -0
  51. package/dist/cli/query.js.map +1 -0
  52. package/dist/cli/read-neighbors.d.ts +11 -0
  53. package/dist/cli/read-neighbors.d.ts.map +1 -0
  54. package/dist/cli/read-neighbors.js +224 -0
  55. package/dist/cli/read-neighbors.js.map +1 -0
  56. package/dist/cli/status.d.ts +8 -0
  57. package/dist/cli/status.d.ts.map +1 -0
  58. package/dist/cli/status.js +80 -0
  59. package/dist/cli/status.js.map +1 -0
  60. package/dist/cli/sync.d.ts +8 -0
  61. package/dist/cli/sync.d.ts.map +1 -0
  62. package/dist/cli/sync.js +244 -0
  63. package/dist/cli/sync.js.map +1 -0
  64. package/dist/cli-main.d.ts +12 -0
  65. package/dist/cli-main.d.ts.map +1 -0
  66. package/dist/cli-main.js +63 -0
  67. package/dist/cli-main.js.map +1 -0
  68. package/dist/embedder/index.d.ts +85 -0
  69. package/dist/embedder/index.d.ts.map +1 -0
  70. package/dist/embedder/index.js +284 -0
  71. package/dist/embedder/index.js.map +1 -0
  72. package/dist/features/list.d.ts +37 -0
  73. package/dist/features/list.d.ts.map +1 -0
  74. package/dist/features/list.js +40 -0
  75. package/dist/features/list.js.map +1 -0
  76. package/dist/features/sync.d.ts +207 -0
  77. package/dist/features/sync.d.ts.map +1 -0
  78. package/dist/features/sync.js +380 -0
  79. package/dist/features/sync.js.map +1 -0
  80. package/dist/index.d.ts +3 -0
  81. package/dist/index.d.ts.map +1 -0
  82. package/dist/index.js +53 -0
  83. package/dist/index.js.map +1 -0
  84. package/dist/ingest/compute.d.ts +86 -0
  85. package/dist/ingest/compute.d.ts.map +1 -0
  86. package/dist/ingest/compute.js +177 -0
  87. package/dist/ingest/compute.js.map +1 -0
  88. package/dist/ingest/file.d.ts +27 -0
  89. package/dist/ingest/file.d.ts.map +1 -0
  90. package/dist/ingest/file.js +67 -0
  91. package/dist/ingest/file.js.map +1 -0
  92. package/dist/ingest/visual.d.ts +45 -0
  93. package/dist/ingest/visual.d.ts.map +1 -0
  94. package/dist/ingest/visual.js +234 -0
  95. package/dist/ingest/visual.js.map +1 -0
  96. package/dist/parser/docx-parser.d.ts +12 -0
  97. package/dist/parser/docx-parser.d.ts.map +1 -0
  98. package/dist/parser/docx-parser.js +328 -0
  99. package/dist/parser/docx-parser.js.map +1 -0
  100. package/dist/parser/html-parser.d.ts +18 -0
  101. package/dist/parser/html-parser.d.ts.map +1 -0
  102. package/dist/parser/html-parser.js +102 -0
  103. package/dist/parser/html-parser.js.map +1 -0
  104. package/dist/parser/index.d.ts +214 -0
  105. package/dist/parser/index.d.ts.map +1 -0
  106. package/dist/parser/index.js +454 -0
  107. package/dist/parser/index.js.map +1 -0
  108. package/dist/parser/pdf-extract.d.ts +81 -0
  109. package/dist/parser/pdf-extract.d.ts.map +1 -0
  110. package/dist/parser/pdf-extract.js +112 -0
  111. package/dist/parser/pdf-extract.js.map +1 -0
  112. package/dist/parser/pdf-filter.d.ts +117 -0
  113. package/dist/parser/pdf-filter.d.ts.map +1 -0
  114. package/dist/parser/pdf-filter.js +528 -0
  115. package/dist/parser/pdf-filter.js.map +1 -0
  116. package/dist/parser/title-extractor.d.ts +69 -0
  117. package/dist/parser/title-extractor.d.ts.map +1 -0
  118. package/dist/parser/title-extractor.js +145 -0
  119. package/dist/parser/title-extractor.js.map +1 -0
  120. package/dist/pdf-visual/captioner.d.ts +16 -0
  121. package/dist/pdf-visual/captioner.d.ts.map +1 -0
  122. package/dist/pdf-visual/captioner.js +63 -0
  123. package/dist/pdf-visual/captioner.js.map +1 -0
  124. package/dist/pdf-visual/captioners/fast.d.ts +7 -0
  125. package/dist/pdf-visual/captioners/fast.d.ts.map +1 -0
  126. package/dist/pdf-visual/captioners/fast.js +103 -0
  127. package/dist/pdf-visual/captioners/fast.js.map +1 -0
  128. package/dist/pdf-visual/captioners/quality.d.ts +7 -0
  129. package/dist/pdf-visual/captioners/quality.d.ts.map +1 -0
  130. package/dist/pdf-visual/captioners/quality.js +127 -0
  131. package/dist/pdf-visual/captioners/quality.js.map +1 -0
  132. package/dist/pdf-visual/captioners/shared.d.ts +44 -0
  133. package/dist/pdf-visual/captioners/shared.d.ts.map +1 -0
  134. package/dist/pdf-visual/captioners/shared.js +104 -0
  135. package/dist/pdf-visual/captioners/shared.js.map +1 -0
  136. package/dist/pdf-visual/detector.d.ts +9 -0
  137. package/dist/pdf-visual/detector.d.ts.map +1 -0
  138. package/dist/pdf-visual/detector.js +234 -0
  139. package/dist/pdf-visual/detector.js.map +1 -0
  140. package/dist/pdf-visual/index.d.ts +13 -0
  141. package/dist/pdf-visual/index.d.ts.map +1 -0
  142. package/dist/pdf-visual/index.js +45 -0
  143. package/dist/pdf-visual/index.js.map +1 -0
  144. package/dist/pdf-visual/renderer.d.ts +9 -0
  145. package/dist/pdf-visual/renderer.d.ts.map +1 -0
  146. package/dist/pdf-visual/renderer.js +177 -0
  147. package/dist/pdf-visual/renderer.js.map +1 -0
  148. package/dist/pdf-visual/types.d.ts +62 -0
  149. package/dist/pdf-visual/types.d.ts.map +1 -0
  150. package/dist/pdf-visual/types.js +32 -0
  151. package/dist/pdf-visual/types.js.map +1 -0
  152. package/dist/server/error-utils.d.ts +79 -0
  153. package/dist/server/error-utils.d.ts.map +1 -0
  154. package/dist/server/error-utils.js +148 -0
  155. package/dist/server/error-utils.js.map +1 -0
  156. package/dist/server/index.d.ts +258 -0
  157. package/dist/server/index.d.ts.map +1 -0
  158. package/dist/server/index.js +1104 -0
  159. package/dist/server/index.js.map +1 -0
  160. package/dist/server/list-scanner.d.ts +52 -0
  161. package/dist/server/list-scanner.d.ts.map +1 -0
  162. package/dist/server/list-scanner.js +72 -0
  163. package/dist/server/list-scanner.js.map +1 -0
  164. package/dist/server/tool-definitions.d.ts +8 -0
  165. package/dist/server/tool-definitions.d.ts.map +1 -0
  166. package/dist/server/tool-definitions.js +181 -0
  167. package/dist/server/tool-definitions.js.map +1 -0
  168. package/dist/server/tool-input.d.ts +37 -0
  169. package/dist/server/tool-input.d.ts.map +1 -0
  170. package/dist/server/tool-input.js +216 -0
  171. package/dist/server/tool-input.js.map +1 -0
  172. package/dist/server/types.d.ts +331 -0
  173. package/dist/server/types.d.ts.map +1 -0
  174. package/dist/server/types.js +3 -0
  175. package/dist/server/types.js.map +1 -0
  176. package/dist/server-main.d.ts +46 -0
  177. package/dist/server-main.d.ts.map +1 -0
  178. package/dist/server-main.js +242 -0
  179. package/dist/server-main.js.map +1 -0
  180. package/dist/utils/base-dirs.d.ts +212 -0
  181. package/dist/utils/base-dirs.d.ts.map +1 -0
  182. package/dist/utils/base-dirs.js +422 -0
  183. package/dist/utils/base-dirs.js.map +1 -0
  184. package/dist/utils/errors.d.ts +24 -0
  185. package/dist/utils/errors.d.ts.map +1 -0
  186. package/dist/utils/errors.js +53 -0
  187. package/dist/utils/errors.js.map +1 -0
  188. package/dist/utils/limits.d.ts +26 -0
  189. package/dist/utils/limits.d.ts.map +1 -0
  190. package/dist/utils/limits.js +28 -0
  191. package/dist/utils/limits.js.map +1 -0
  192. package/dist/utils/list-sources.d.ts +47 -0
  193. package/dist/utils/list-sources.d.ts.map +1 -0
  194. package/dist/utils/list-sources.js +50 -0
  195. package/dist/utils/list-sources.js.map +1 -0
  196. package/dist/utils/raw-data-utils.d.ts +131 -0
  197. package/dist/utils/raw-data-utils.d.ts.map +1 -0
  198. package/dist/utils/raw-data-utils.js +255 -0
  199. package/dist/utils/raw-data-utils.js.map +1 -0
  200. package/dist/utils/scan.d.ts +126 -0
  201. package/dist/utils/scan.d.ts.map +1 -0
  202. package/dist/utils/scan.js +221 -0
  203. package/dist/utils/scan.js.map +1 -0
  204. package/dist/utils/scope-match.d.ts +43 -0
  205. package/dist/utils/scope-match.d.ts.map +1 -0
  206. package/dist/utils/scope-match.js +87 -0
  207. package/dist/utils/scope-match.js.map +1 -0
  208. package/dist/utils/sensitive-path.d.ts +23 -0
  209. package/dist/utils/sensitive-path.d.ts.map +1 -0
  210. package/dist/utils/sensitive-path.js +91 -0
  211. package/dist/utils/sensitive-path.js.map +1 -0
  212. package/dist/utils/sync-path-key.d.ts +20 -0
  213. package/dist/utils/sync-path-key.d.ts.map +1 -0
  214. package/dist/utils/sync-path-key.js +33 -0
  215. package/dist/utils/sync-path-key.js.map +1 -0
  216. package/dist/vectordb/index.d.ts +168 -0
  217. package/dist/vectordb/index.d.ts.map +1 -0
  218. package/dist/vectordb/index.js +619 -0
  219. package/dist/vectordb/index.js.map +1 -0
  220. package/dist/vectordb/search-filters.d.ts +39 -0
  221. package/dist/vectordb/search-filters.d.ts.map +1 -0
  222. package/dist/vectordb/search-filters.js +136 -0
  223. package/dist/vectordb/search-filters.js.map +1 -0
  224. package/dist/vectordb/types.d.ts +196 -0
  225. package/dist/vectordb/types.d.ts.map +1 -0
  226. package/dist/vectordb/types.js +224 -0
  227. package/dist/vectordb/types.js.map +1 -0
  228. package/package.json +105 -0
  229. package/skills/mcp-local-rag/SKILL.md +308 -0
  230. package/skills/mcp-local-rag/references/cli-reference.md +175 -0
  231. package/skills/mcp-local-rag/references/html-ingestion.md +78 -0
  232. package/skills/mcp-local-rag/references/query-optimization.md +57 -0
  233. package/skills/mcp-local-rag/references/result-refinement.md +56 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ import type { RAGServerConfig } from './types.js';
2
+ /**
3
+ * `list_files` presentation adapter over {@link bfsCollectSupportedFiles}:
4
+ * scans one base directory for supported files, excluding system-managed paths
5
+ * (dbPath, cacheDir), and renders the walker's coverage facts as sorted
6
+ * absolute paths plus a list of non-fatal warnings.
7
+ *
8
+ * Behavior contract:
9
+ * - Depth is bounded by {@link MAX_SCAN_DEPTH}, counted from `baseDir`, so the
10
+ * same "how deep do we look under a root" boundary applies to every
11
+ * list/ingest surface.
12
+ * - A `readdir` failure under one directory becomes a warning rather than
13
+ * aborting the whole list call. One unreadable root must not hide files
14
+ * under the other roots, so the policy is best-effort per directory.
15
+ * - The depth-limit warning names the base directory and is emitted at most
16
+ * once per call, however many branches were pruned.
17
+ * - Symlinks are skipped (mirrors the CLI ingest walker); `list_files` does
18
+ * not surface them.
19
+ * - When `scope` is provided (non-empty), the predicate is pushed into the
20
+ * traversal: a directory is visited only if it is in-scope or an ancestor of
21
+ * some scope prefix, and a file is collected only if it is in-scope. A
22
+ * baseDir intersecting no prefix is skipped without any `readdir`. An
23
+ * absent/empty `scope` leaves traversal and collection unchanged.
24
+ */
25
+ export declare function scanBaseDir(baseDir: string, excludePaths: readonly string[], scope?: string[]): Promise<{
26
+ files: string[];
27
+ warnings: string[];
28
+ }>;
29
+ /**
30
+ * Normalize both {@link RAGServerConfig} shapes into a single
31
+ * `{ baseDirs, baseDir }` pair.
32
+ *
33
+ * Exactly one of `baseDir` / `baseDirs` is supplied (enforced by the
34
+ * discriminated union in `RAGServerConfig`); the runtime check below catches
35
+ * misuse from JS-only callers and degraded-mode bugs.
36
+ *
37
+ * Empty `baseDirs` is accepted ONLY in degraded mode (configError set). In
38
+ * that case the server stays constructible so `status` remains callable, but
39
+ * every root-dependent tool fails fast via `assertConfigOk` before any
40
+ * baseDirs-dependent work. Without configError, an empty array is a misuse:
41
+ * reject up front rather than build a parser that silently rejects every path.
42
+ *
43
+ * `baseDir` is the legacy single-root accessor derived from `baseDirs[0]` —
44
+ * empty-string when in degraded mode with an empty `baseDirs` array. It is
45
+ * never consulted in degraded mode because `assertConfigOk` fires before any
46
+ * handler reaches it.
47
+ */
48
+ export declare function normalizeBaseDirs(config: RAGServerConfig): {
49
+ baseDirs: string[];
50
+ baseDir: string;
51
+ };
52
+ //# sourceMappingURL=list-scanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-scanner.d.ts","sourceRoot":"","sources":["../../src/server/list-scanner.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAoBlD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG;IAC1D,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB,CASA"}
@@ -0,0 +1,72 @@
1
+ // Pure helpers for the RAGServer `list_files` surface and base-dir config
2
+ // normalization. Extracted from `RAGServer` so the directory-scan presentation
3
+ // and the constructor's config-shape normalization live as standalone,
4
+ // behavior-preserving functions independent of instance state. Traversal itself
5
+ // belongs to the shared walker in `utils/scan.ts`; only the `list_files`
6
+ // wording, sort, and warning selection live here.
7
+ import { displayPath } from '../utils/base-dirs.js';
8
+ import { MAX_SCAN_DEPTH } from '../utils/limits.js';
9
+ import { bfsCollectSupportedFiles } from '../utils/scan.js';
10
+ /**
11
+ * `list_files` presentation adapter over {@link bfsCollectSupportedFiles}:
12
+ * scans one base directory for supported files, excluding system-managed paths
13
+ * (dbPath, cacheDir), and renders the walker's coverage facts as sorted
14
+ * absolute paths plus a list of non-fatal warnings.
15
+ *
16
+ * Behavior contract:
17
+ * - Depth is bounded by {@link MAX_SCAN_DEPTH}, counted from `baseDir`, so the
18
+ * same "how deep do we look under a root" boundary applies to every
19
+ * list/ingest surface.
20
+ * - A `readdir` failure under one directory becomes a warning rather than
21
+ * aborting the whole list call. One unreadable root must not hide files
22
+ * under the other roots, so the policy is best-effort per directory.
23
+ * - The depth-limit warning names the base directory and is emitted at most
24
+ * once per call, however many branches were pruned.
25
+ * - Symlinks are skipped (mirrors the CLI ingest walker); `list_files` does
26
+ * not surface them.
27
+ * - When `scope` is provided (non-empty), the predicate is pushed into the
28
+ * traversal: a directory is visited only if it is in-scope or an ancestor of
29
+ * some scope prefix, and a file is collected only if it is in-scope. A
30
+ * baseDir intersecting no prefix is skipped without any `readdir`. An
31
+ * absent/empty `scope` leaves traversal and collection unchanged.
32
+ */
33
+ export async function scanBaseDir(baseDir, excludePaths, scope) {
34
+ const { files, unreadableDirs, depthLimited } = await bfsCollectSupportedFiles(baseDir, excludePaths, MAX_SCAN_DEPTH, scope);
35
+ const warnings = [];
36
+ for (const { dirPath, code } of unreadableDirs) {
37
+ warnings.push(`cannot read directory: ${displayPath(dirPath)} (${code})`);
38
+ }
39
+ if (depthLimited) {
40
+ warnings.push(`some directories under ${displayPath(baseDir)} were skipped because they exceed the maximum depth (${MAX_SCAN_DEPTH})`);
41
+ }
42
+ files.sort();
43
+ return { files, warnings };
44
+ }
45
+ /**
46
+ * Normalize both {@link RAGServerConfig} shapes into a single
47
+ * `{ baseDirs, baseDir }` pair.
48
+ *
49
+ * Exactly one of `baseDir` / `baseDirs` is supplied (enforced by the
50
+ * discriminated union in `RAGServerConfig`); the runtime check below catches
51
+ * misuse from JS-only callers and degraded-mode bugs.
52
+ *
53
+ * Empty `baseDirs` is accepted ONLY in degraded mode (configError set). In
54
+ * that case the server stays constructible so `status` remains callable, but
55
+ * every root-dependent tool fails fast via `assertConfigOk` before any
56
+ * baseDirs-dependent work. Without configError, an empty array is a misuse:
57
+ * reject up front rather than build a parser that silently rejects every path.
58
+ *
59
+ * `baseDir` is the legacy single-root accessor derived from `baseDirs[0]` —
60
+ * empty-string when in degraded mode with an empty `baseDirs` array. It is
61
+ * never consulted in degraded mode because `assertConfigOk` fires before any
62
+ * handler reaches it.
63
+ */
64
+ export function normalizeBaseDirs(config) {
65
+ const normalizedBaseDirs = config.baseDirs !== undefined ? [...config.baseDirs] : [config.baseDir];
66
+ const firstBaseDir = normalizedBaseDirs[0];
67
+ if (firstBaseDir === undefined && config.configError === undefined) {
68
+ throw new Error('RAGServerConfig must provide either `baseDir` or a non-empty `baseDirs` array (empty `baseDirs` is allowed only in degraded mode with `configError` set).');
69
+ }
70
+ return { baseDirs: normalizedBaseDirs, baseDir: firstBaseDir ?? '' };
71
+ }
72
+ //# sourceMappingURL=list-scanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-scanner.js","sourceRoot":"","sources":["../../src/server/list-scanner.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,+EAA+E;AAC/E,uEAAuE;AACvE,gFAAgF;AAChF,yEAAyE;AACzE,kDAAkD;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAA;AAG3D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAe,EACf,YAA+B,EAC/B,KAAgB;IAEhB,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,MAAM,wBAAwB,CAC5E,OAAO,EACP,YAAY,EACZ,cAAc,EACd,KAAK,CACN,CAAA;IAED,MAAM,QAAQ,GAAa,EAAE,CAAA;IAC7B,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,cAAc,EAAE,CAAC;QAC/C,QAAQ,CAAC,IAAI,CAAC,0BAA0B,WAAW,CAAC,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,CAAA;IAC3E,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CACX,0BAA0B,WAAW,CAAC,OAAO,CAAC,wDAAwD,cAAc,GAAG,CACxH,CAAA;IACH,CAAC;IAED,KAAK,CAAC,IAAI,EAAE,CAAA;IACZ,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAuB;IAIvD,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAClG,MAAM,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAA;IAC1C,IAAI,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CACb,2JAA2J,CAC5J,CAAA;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,YAAY,IAAI,EAAE,EAAE,CAAA;AACtE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
2
+ /**
3
+ * All MCP tool definitions for the RAG server.
4
+ * These are purely declarative schema objects that describe
5
+ * what tools exist and their input parameters.
6
+ */
7
+ export declare const toolDefinitions: Tool[];
8
+ //# sourceMappingURL=tool-definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-definitions.d.ts","sourceRoot":"","sources":["../../src/server/tool-definitions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAA;AAK9D;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,IAAI,EA8LjC,CAAA"}
@@ -0,0 +1,181 @@
1
+ // MCP tool schema definitions for RAGServer
2
+ import { QUALITY_PROFILES } from '../pdf-visual/types.js';
3
+ import { MAX_NEIGHBOR_COUNT, MAX_QUERY_LIMIT, MIN_QUERY_LIMIT } from '../utils/limits.js';
4
+ import { CONTENT_FORMATS } from '../utils/raw-data-utils.js';
5
+ /**
6
+ * All MCP tool definitions for the RAG server.
7
+ * These are purely declarative schema objects that describe
8
+ * what tools exist and their input parameters.
9
+ */
10
+ export const toolDefinitions = [
11
+ {
12
+ name: 'query_documents',
13
+ description: 'Search ingested documents with hybrid keyword + semantic matching. Returns results sorted by relevance, each with filePath, chunkIndex, text, fileTitle, score (0 = best, higher = worse), and source (for ingest_data items).',
14
+ inputSchema: {
15
+ type: 'object',
16
+ properties: {
17
+ query: {
18
+ type: 'string',
19
+ description: 'Search query. Preserve specific user terms (for keyword match); add context when the query is vague (for semantic match).',
20
+ },
21
+ limit: {
22
+ type: 'number',
23
+ minimum: MIN_QUERY_LIMIT,
24
+ maximum: MAX_QUERY_LIMIT,
25
+ description: `Max results (default 10, range ${MIN_QUERY_LIMIT}-${MAX_QUERY_LIMIT}). Lower favors precision, higher recall.`,
26
+ },
27
+ scope: {
28
+ oneOf: [{ type: 'string' }, { type: 'array', items: { type: 'string' } }],
29
+ description: 'Optional absolute path prefix(es) — one string or a list (unioned) — restricting results to a filePath equal to or under a prefix. "/docs/api" matches "/docs/api/auth.md" but not "/docs/apiv2". Must be absolute (server OS style); a relative prefix matches nothing — derive one from a filePath returned by an earlier query, or omit scope.',
30
+ },
31
+ },
32
+ required: ['query'],
33
+ },
34
+ },
35
+ {
36
+ name: 'ingest_file',
37
+ description: 'Ingest a document file (PDF, DOCX, TXT, MD) into the vector database. Path must be absolute; re-ingesting the same path replaces its existing data. Returns { filePath, chunkCount, timestamp, fileTitle }.',
38
+ inputSchema: {
39
+ type: 'object',
40
+ properties: {
41
+ filePath: {
42
+ type: 'string',
43
+ description: 'Absolute path to the file to ingest. Example: "/Users/user/documents/manual.pdf"',
44
+ },
45
+ visual: {
46
+ type: 'boolean',
47
+ description: 'Run VLM captioning on figure pages (PDF only; default false).',
48
+ },
49
+ visualQuality: {
50
+ type: 'string',
51
+ enum: [...QUALITY_PROFILES],
52
+ default: 'fast',
53
+ description: 'VLM profile when visual is true (default "fast"). "quality" is more accurate on figures with in-image text but much heavier and slower. Ignored when visual is false.',
54
+ },
55
+ },
56
+ required: ['filePath'],
57
+ },
58
+ },
59
+ {
60
+ name: 'ingest_data',
61
+ description: 'Ingest in-memory content as a string (use ingest_file for files on disk). The source identifier enables re-ingestion to update existing content. Returns { filePath, chunkCount, timestamp, fileTitle }.',
62
+ inputSchema: {
63
+ type: 'object',
64
+ properties: {
65
+ content: {
66
+ type: 'string',
67
+ description: 'The content to ingest (text, HTML, or Markdown)',
68
+ },
69
+ metadata: {
70
+ type: 'object',
71
+ properties: {
72
+ source: {
73
+ type: 'string',
74
+ description: 'Source identifier. For web pages, use the URL (e.g., "https://example.com/page"). For other content, use URL-scheme format: "{type}://{date}" or "{type}://{date}/{detail}". Examples: "clipboard://2024-12-30", "chat://2024-12-30/project-discussion", "note://2024-12-30/meeting".',
75
+ },
76
+ format: {
77
+ type: 'string',
78
+ enum: [...CONTENT_FORMATS],
79
+ description: 'Content format: text (plain/copied text), html (fetched web pages), or markdown.',
80
+ },
81
+ },
82
+ required: ['source', 'format'],
83
+ },
84
+ },
85
+ required: ['content', 'metadata'],
86
+ },
87
+ },
88
+ {
89
+ name: 'delete_file',
90
+ description: 'Delete a previously ingested file or data from the vector database. Use filePath for files ingested via ingest_file, or source for data ingested via ingest_data. Either filePath or source must be provided. Returns deleted (operation succeeded), removedChunks, and existed (whether anything was actually present).',
91
+ inputSchema: {
92
+ type: 'object',
93
+ properties: {
94
+ filePath: {
95
+ type: 'string',
96
+ description: 'Absolute path to the file (for ingest_file). Example: "/Users/user/documents/manual.pdf"',
97
+ },
98
+ source: {
99
+ type: 'string',
100
+ description: 'Source identifier used in ingest_data. Examples: "https://example.com/page", "clipboard://2024-12-30"',
101
+ },
102
+ },
103
+ },
104
+ },
105
+ {
106
+ name: 'list_files',
107
+ description: 'List supported files (PDF, DOCX, TXT, MD) under the configured base directories and whether each is ingested. Returns { baseDirs, files, sources }; sources lists ingested items reported apart from the file scan, chiefly ingest_data content (web pages, clipboard, etc.).',
108
+ inputSchema: {
109
+ type: 'object',
110
+ properties: {
111
+ scope: {
112
+ oneOf: [{ type: 'string' }, { type: 'array', items: { type: 'string' } }],
113
+ description: 'Optional absolute path prefix(es) — one string or a list (unioned) — restricting the listing to files reachable at a path equal to or under a prefix within the base directories. "/docs/api" matches "/docs/api/x.md" but not "/docs/apiv2". Must be absolute (server OS style); a relative prefix matches nothing. A prefix outside every base directory yields an empty files list, so compare it against the baseDirs in the response before concluding no files exist. Scope filters files by their scan path; ingest_data sources, which have no base-directory path, are always listed.',
114
+ },
115
+ },
116
+ },
117
+ },
118
+ {
119
+ name: 'status',
120
+ description: 'Get index status: { documentCount, chunkCount, memoryUsage (MB), uptime (s), ftsIndexEnabled, searchMode }.',
121
+ inputSchema: { type: 'object', properties: {} },
122
+ },
123
+ {
124
+ name: 'read_chunk_neighbors',
125
+ description: `Read the chunks immediately before and after a query_documents result, in the same document, for more surrounding context. Pass chunkIndex from the result plus exactly one of filePath (ingest_file) or source (ingest_data). Returns the target chunk (isTarget: true) and its neighbors, ascending by chunkIndex; an out-of-range chunkIndex returns []. Defaults: before=2, after=2 (max ${MAX_NEIGHBOR_COUNT} each).`,
126
+ inputSchema: {
127
+ type: 'object',
128
+ properties: {
129
+ filePath: {
130
+ type: 'string',
131
+ description: 'Absolute path to the file (for ingest_file documents). Provide exactly one of filePath or source. Example: "/Users/user/documents/manual.pdf".',
132
+ },
133
+ source: {
134
+ type: 'string',
135
+ description: 'Source identifier (for ingest_data documents). Provide exactly one of filePath or source. Examples: "https://example.com/page", "clipboard://2024-12-30".',
136
+ },
137
+ chunkIndex: {
138
+ type: 'number',
139
+ description: 'Zero-based target chunk index (non-negative integer).',
140
+ },
141
+ before: {
142
+ type: 'number',
143
+ description: `Number of chunks to retrieve before the target (0–${MAX_NEIGHBOR_COUNT}, default 2).`,
144
+ },
145
+ after: {
146
+ type: 'number',
147
+ description: `Number of chunks to retrieve after the target (0–${MAX_NEIGHBOR_COUNT}, default 2).`,
148
+ },
149
+ },
150
+ required: ['chunkIndex'],
151
+ },
152
+ },
153
+ {
154
+ name: 'sync_start',
155
+ description: 'Reconcile the index with the files on disk: ingest new and changed files, leave unchanged files alone, and remove index entries for files that are gone. Returns { jobId } without waiting for the run to finish; poll sync_status with that jobId for progress and the final outcome. Only one job is kept, and it is lost when the server process exits.',
156
+ inputSchema: {
157
+ type: 'object',
158
+ properties: {
159
+ path: {
160
+ type: 'string',
161
+ description: 'Optional absolute path to a file or directory inside a configured base directory; list_files returns those directories as baseDirs. A file synchronizes only itself and a directory only its own subtree, leaving every path outside it untouched. Omit it to synchronize every configured base directory.',
162
+ },
163
+ },
164
+ },
165
+ },
166
+ {
167
+ name: 'sync_status',
168
+ description: 'Get the current or latest sync job record: { jobId, state ("running" | "succeeded" | "failed"), total (null until scanning has counted the files on disk), completed (upserted + skipped + empty; pruned is counted separately), summary { upserted, skipped, empty, pruned }, warnings, error (null unless the job failed) }. An unknown jobId means the job was replaced by a newer one or lost with a previous server process.',
169
+ inputSchema: {
170
+ type: 'object',
171
+ properties: {
172
+ jobId: {
173
+ type: 'string',
174
+ description: 'Identifier returned by sync_start.',
175
+ },
176
+ },
177
+ required: ['jobId'],
178
+ },
179
+ },
180
+ ];
181
+ //# sourceMappingURL=tool-definitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-definitions.js","sourceRoot":"","sources":["../../src/server/tool-definitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { DeleteFileInput, IngestDataInput, IngestFileInput, ListFilesInput, QueryDocumentsInput, ReadChunkNeighborsInput, SyncStartInput, SyncStatusInput } from './types.js';
2
+ /**
3
+ * Validate `query_documents` arguments. `query` must be a non-empty string;
4
+ * `limit`, when provided, must be a positive integer (the handler defaults it
5
+ * to 10 when absent).
6
+ */
7
+ export declare function parseQueryDocumentsInput(raw: unknown): QueryDocumentsInput;
8
+ /**
9
+ * Validate `list_files` arguments. The tool historically takes no arguments, so
10
+ * an omitted `arguments` (`undefined`) or `{}` is accepted as "no scope". When
11
+ * `scope` is present, it is normalized the same way as `query_documents`.
12
+ */
13
+ export declare function parseListFilesInput(raw: unknown): ListFilesInput;
14
+ /**
15
+ * Validate `ingest_data` arguments. `content` must be a non-empty string;
16
+ * `metadata` must be an object with a non-empty `source` string and a `format`
17
+ * in the supported set.
18
+ */
19
+ export declare function parseIngestDataInput(raw: unknown): IngestDataInput;
20
+ export declare function parseIngestFileInput(raw: unknown): IngestFileInput;
21
+ export declare function parseDeleteFileInput(raw: unknown): DeleteFileInput;
22
+ export declare function parseReadChunkNeighborsInput(raw: unknown): ReadChunkNeighborsInput;
23
+ /**
24
+ * Validate `sync_start` arguments. The tool is legitimately callable with no
25
+ * arguments — an omitted `path` means "every configured base directory" — so
26
+ * both `undefined` and `{}` are accepted, the same contract `list_files` has.
27
+ *
28
+ * Root containment is deliberately not checked here: the sync core owns that
29
+ * rule so the CLI and MCP surfaces cannot drift apart.
30
+ */
31
+ export declare function parseSyncStartInput(raw: unknown): SyncStartInput;
32
+ /**
33
+ * Validate `sync_status` arguments. `jobId` is required; an unknown but
34
+ * well-formed id is the handler's concern, not this boundary's.
35
+ */
36
+ export declare function parseSyncStatusInput(raw: unknown): SyncStatusInput;
37
+ //# sourceMappingURL=tool-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-input.d.ts","sourceRoot":"","sources":["../../src/server/tool-input.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,cAAc,EACd,eAAe,EAChB,MAAM,YAAY,CAAA;AA+BnB;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,mBAAmB,CA+B1E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAchE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAuBlE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CA0BlE;AAMD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAalE;AAED,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,uBAAuB,CA2BlF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CA2BhE;AAUD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAiBlE"}