@arabold/docs-mcp-server 1.11.0 → 1.12.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.
- package/README.md +93 -13
- package/db/migrations/000-initial-schema.sql +57 -0
- package/db/migrations/001-add-indexed-at-column.sql +6 -0
- package/dist/DocumentManagementService-_qCZ1Hi2.js +3409 -0
- package/dist/DocumentManagementService-_qCZ1Hi2.js.map +1 -0
- package/dist/EmbeddingFactory-BJMbJvje.js +174 -0
- package/dist/EmbeddingFactory-BJMbJvje.js.map +1 -0
- package/dist/FindVersionTool-CH1c3Tyu.js +170 -0
- package/dist/FindVersionTool-CH1c3Tyu.js.map +1 -0
- package/dist/RemoveTool-DmB1YJTA.js +65 -0
- package/dist/RemoveTool-DmB1YJTA.js.map +1 -0
- package/dist/assets/main.css +1 -0
- package/dist/assets/main.js +8097 -0
- package/dist/assets/main.js.map +1 -0
- package/dist/cli.js +48 -142
- package/dist/cli.js.map +1 -1
- package/dist/server.js +179 -88
- package/dist/server.js.map +1 -1
- package/dist/web.js +937 -0
- package/dist/web.js.map +1 -0
- package/package.json +34 -10
- package/public/assets/main.css +1 -0
- package/public/assets/main.js +8097 -0
- package/public/assets/main.js.map +1 -0
- package/dist/EmbeddingFactory-6UEXNF44.js +0 -1177
- package/dist/EmbeddingFactory-6UEXNF44.js.map +0 -1
- package/dist/chunk-VF2RUEVV.js +0 -12094
- package/dist/chunk-VF2RUEVV.js.map +0 -1
- package/dist/chunk-YCXNASA6.js +0 -124
- package/dist/chunk-YCXNASA6.js.map +0 -1
- package/dist/cli.d.ts +0 -1
- package/dist/server.d.ts +0 -1
package/dist/chunk-YCXNASA6.js
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
-
};
|
|
10
|
-
var __export = (target, all) => {
|
|
11
|
-
for (var name in all)
|
|
12
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
|
-
};
|
|
14
|
-
var __copyProps = (to, from, except, desc) => {
|
|
15
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
-
for (let key of __getOwnPropNames(from))
|
|
17
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
18
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
19
|
-
}
|
|
20
|
-
return to;
|
|
21
|
-
};
|
|
22
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
28
|
-
mod
|
|
29
|
-
));
|
|
30
|
-
|
|
31
|
-
// src/store/schema.ts
|
|
32
|
-
var VECTOR_DIMENSION = 1536;
|
|
33
|
-
var createTablesSQL = `
|
|
34
|
-
-- Documents table
|
|
35
|
-
CREATE TABLE IF NOT EXISTS documents(
|
|
36
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
37
|
-
library TEXT NOT NULL,
|
|
38
|
-
version TEXT NOT NULL DEFAULT '',
|
|
39
|
-
url TEXT NOT NULL,
|
|
40
|
-
content TEXT,
|
|
41
|
-
metadata JSON,
|
|
42
|
-
sort_order INTEGER NOT NULL,
|
|
43
|
-
UNIQUE(url, library, version, sort_order)
|
|
44
|
-
);
|
|
45
|
-
|
|
46
|
-
-- Indexes
|
|
47
|
-
CREATE INDEX IF NOT EXISTS idx_documents_library_lower ON documents(lower(library));
|
|
48
|
-
CREATE INDEX IF NOT EXISTS idx_documents_version_lower ON documents(lower(library), lower(version));
|
|
49
|
-
|
|
50
|
-
-- Create Embeddings virtual table
|
|
51
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS documents_vec USING vec0(
|
|
52
|
-
library TEXT NOT NULL,
|
|
53
|
-
version TEXT NOT NULL,
|
|
54
|
-
embedding FLOAT[${VECTOR_DIMENSION}]
|
|
55
|
-
);
|
|
56
|
-
|
|
57
|
-
-- Create FTS5 virtual table
|
|
58
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS documents_fts USING fts5(
|
|
59
|
-
content,
|
|
60
|
-
title,
|
|
61
|
-
url,
|
|
62
|
-
path,
|
|
63
|
-
tokenize='porter unicode61',
|
|
64
|
-
content='documents',
|
|
65
|
-
content_rowid='id'
|
|
66
|
-
);
|
|
67
|
-
|
|
68
|
-
-- Delete trigger to maintain FTS index
|
|
69
|
-
CREATE TRIGGER IF NOT EXISTS documents_fts_after_delete AFTER DELETE ON documents BEGIN
|
|
70
|
-
INSERT INTO documents_fts(documents_fts, rowid, content, title, url, path)
|
|
71
|
-
VALUES('delete', old.id, old.content, json_extract(old.metadata, '$.title'), old.url, json_extract(old.metadata, '$.path'));
|
|
72
|
-
END;
|
|
73
|
-
|
|
74
|
-
-- Update trigger to maintain FTS index
|
|
75
|
-
CREATE TRIGGER IF NOT EXISTS documents_fts_after_update AFTER UPDATE ON documents BEGIN
|
|
76
|
-
INSERT INTO documents_fts(documents_fts, rowid, content, title, url, path)
|
|
77
|
-
VALUES('delete', old.id, old.content, json_extract(old.metadata, '$.title'), old.url, json_extract(old.metadata, '$.path'));
|
|
78
|
-
INSERT INTO documents_fts(rowid, content, title, url, path)
|
|
79
|
-
VALUES(new.id, new.content, json_extract(new.metadata, '$.title'), new.url, json_extract(new.metadata, '$.path'));
|
|
80
|
-
END;
|
|
81
|
-
|
|
82
|
-
-- Insert trigger to maintain FTS index
|
|
83
|
-
CREATE TRIGGER IF NOT EXISTS documents_fts_after_insert AFTER INSERT ON documents BEGIN
|
|
84
|
-
INSERT INTO documents_fts(rowid, content, title, url, path)
|
|
85
|
-
VALUES(new.id, new.content, json_extract(new.metadata, '$.title'), new.url, json_extract(new.metadata, '$.path'));
|
|
86
|
-
END;
|
|
87
|
-
`;
|
|
88
|
-
|
|
89
|
-
// src/store/errors.ts
|
|
90
|
-
var StoreError = class extends Error {
|
|
91
|
-
constructor(message, cause) {
|
|
92
|
-
super(cause ? `${message} caused by ${cause}` : message);
|
|
93
|
-
this.cause = cause;
|
|
94
|
-
this.name = this.constructor.name;
|
|
95
|
-
const causeError = cause instanceof Error ? cause : cause ? new Error(String(cause)) : void 0;
|
|
96
|
-
if (causeError?.stack) {
|
|
97
|
-
this.stack = causeError.stack;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
var DimensionError = class extends StoreError {
|
|
102
|
-
constructor(modelName, modelDimension, dbDimension) {
|
|
103
|
-
super(
|
|
104
|
-
`Model "${modelName}" produces ${modelDimension}-dimensional vectors, which exceeds the database's fixed dimension of ${dbDimension}. Please use a model with dimension \u2264 ${dbDimension}.`
|
|
105
|
-
);
|
|
106
|
-
this.modelName = modelName;
|
|
107
|
-
this.modelDimension = modelDimension;
|
|
108
|
-
this.dbDimension = dbDimension;
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
var ConnectionError = class extends StoreError {
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
export {
|
|
115
|
-
__commonJS,
|
|
116
|
-
__export,
|
|
117
|
-
__toESM,
|
|
118
|
-
StoreError,
|
|
119
|
-
DimensionError,
|
|
120
|
-
ConnectionError,
|
|
121
|
-
VECTOR_DIMENSION,
|
|
122
|
-
createTablesSQL
|
|
123
|
-
};
|
|
124
|
-
//# sourceMappingURL=chunk-YCXNASA6.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/store/schema.ts","../src/store/errors.ts"],"sourcesContent":["/** Default vector dimension used across the application */\nexport const VECTOR_DIMENSION = 1536;\n\n// Main table and index creation SQL\nexport const createTablesSQL = `\n -- Documents table\n CREATE TABLE IF NOT EXISTS documents(\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n library TEXT NOT NULL,\n version TEXT NOT NULL DEFAULT '',\n url TEXT NOT NULL,\n content TEXT,\n metadata JSON,\n sort_order INTEGER NOT NULL,\n UNIQUE(url, library, version, sort_order)\n );\n\n -- Indexes\n CREATE INDEX IF NOT EXISTS idx_documents_library_lower ON documents(lower(library));\n CREATE INDEX IF NOT EXISTS idx_documents_version_lower ON documents(lower(library), lower(version));\n\n -- Create Embeddings virtual table\n CREATE VIRTUAL TABLE IF NOT EXISTS documents_vec USING vec0(\n library TEXT NOT NULL,\n version TEXT NOT NULL,\n embedding FLOAT[${VECTOR_DIMENSION}]\n );\n\n -- Create FTS5 virtual table\n CREATE VIRTUAL TABLE IF NOT EXISTS documents_fts USING fts5(\n content,\n title,\n url,\n path,\n tokenize='porter unicode61',\n content='documents',\n content_rowid='id'\n );\n\n -- Delete trigger to maintain FTS index\n CREATE TRIGGER IF NOT EXISTS documents_fts_after_delete AFTER DELETE ON documents BEGIN\n INSERT INTO documents_fts(documents_fts, rowid, content, title, url, path) \n VALUES('delete', old.id, old.content, json_extract(old.metadata, '$.title'), old.url, json_extract(old.metadata, '$.path'));\n END;\n\n -- Update trigger to maintain FTS index \n CREATE TRIGGER IF NOT EXISTS documents_fts_after_update AFTER UPDATE ON documents BEGIN\n INSERT INTO documents_fts(documents_fts, rowid, content, title, url, path) \n VALUES('delete', old.id, old.content, json_extract(old.metadata, '$.title'), old.url, json_extract(old.metadata, '$.path'));\n INSERT INTO documents_fts(rowid, content, title, url, path) \n VALUES(new.id, new.content, json_extract(new.metadata, '$.title'), new.url, json_extract(new.metadata, '$.path'));\n END;\n\n -- Insert trigger to maintain FTS index\n CREATE TRIGGER IF NOT EXISTS documents_fts_after_insert AFTER INSERT ON documents BEGIN\n INSERT INTO documents_fts(rowid, content, title, url, path)\n VALUES(new.id, new.content, json_extract(new.metadata, '$.title'), new.url, json_extract(new.metadata, '$.path'));\n END;\n`;\n","class StoreError extends Error {\n constructor(\n message: string,\n public readonly cause?: unknown,\n ) {\n super(cause ? `${message} caused by ${cause}` : message);\n this.name = this.constructor.name;\n\n const causeError =\n cause instanceof Error ? cause : cause ? new Error(String(cause)) : undefined;\n if (causeError?.stack) {\n this.stack = causeError.stack;\n }\n }\n}\n\nclass DimensionError extends StoreError {\n constructor(\n public readonly modelName: string,\n public readonly modelDimension: number,\n public readonly dbDimension: number,\n ) {\n super(\n `Model \"${modelName}\" produces ${modelDimension}-dimensional vectors, ` +\n `which exceeds the database's fixed dimension of ${dbDimension}. ` +\n `Please use a model with dimension ≤ ${dbDimension}.`,\n );\n }\n}\n\nclass ConnectionError extends StoreError {}\n\nclass DocumentNotFoundError extends StoreError {\n constructor(public readonly id: string) {\n super(`Document ${id} not found`);\n }\n}\n\nexport { StoreError, ConnectionError, DocumentNotFoundError, DimensionError };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACO,IAAM,mBAAmB;AAGzB,IAAM,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAqBT,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACzBtC,IAAM,aAAN,cAAyB,MAAM;AAAA,EAC7B,YACE,SACgB,OAChB;AACA,UAAM,QAAQ,GAAG,OAAO,cAAc,KAAK,KAAK,OAAO;AAFvC;AAGhB,SAAK,OAAO,KAAK,YAAY;AAE7B,UAAM,aACJ,iBAAiB,QAAQ,QAAQ,QAAQ,IAAI,MAAM,OAAO,KAAK,CAAC,IAAI;AACtE,QAAI,YAAY,OAAO;AACrB,WAAK,QAAQ,WAAW;AAAA,IAC1B;AAAA,EACF;AACF;AAEA,IAAM,iBAAN,cAA6B,WAAW;AAAA,EACtC,YACkB,WACA,gBACA,aAChB;AACA;AAAA,MACE,UAAU,SAAS,cAAc,cAAc,yEACM,WAAW,8CACvB,WAAW;AAAA,IACtD;AARgB;AACA;AACA;AAAA,EAOlB;AACF;AAEA,IAAM,kBAAN,cAA8B,WAAW;AAAC;","names":[]}
|
package/dist/cli.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
package/dist/server.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|