rag-memory-epf-mcp 1.0.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 (38) hide show
  1. package/README.md +292 -0
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +1654 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/src/migrations/migration-manager.d.ts +28 -0
  7. package/dist/src/migrations/migration-manager.d.ts.map +1 -0
  8. package/dist/src/migrations/migration-manager.js +111 -0
  9. package/dist/src/migrations/migration-manager.js.map +1 -0
  10. package/dist/src/migrations/migrations.d.ts +3 -0
  11. package/dist/src/migrations/migrations.d.ts.map +1 -0
  12. package/dist/src/migrations/migrations.js +181 -0
  13. package/dist/src/migrations/migrations.js.map +1 -0
  14. package/dist/src/tools/graph-query-tools.d.ts +16 -0
  15. package/dist/src/tools/graph-query-tools.d.ts.map +1 -0
  16. package/dist/src/tools/graph-query-tools.js +452 -0
  17. package/dist/src/tools/graph-query-tools.js.map +1 -0
  18. package/dist/src/tools/knowledge-graph-tools.d.ts +16 -0
  19. package/dist/src/tools/knowledge-graph-tools.d.ts.map +1 -0
  20. package/dist/src/tools/knowledge-graph-tools.js +482 -0
  21. package/dist/src/tools/knowledge-graph-tools.js.map +1 -0
  22. package/dist/src/tools/migration-tools.d.ts +3 -0
  23. package/dist/src/tools/migration-tools.d.ts.map +1 -0
  24. package/dist/src/tools/migration-tools.js +172 -0
  25. package/dist/src/tools/migration-tools.js.map +1 -0
  26. package/dist/src/tools/rag-tools.d.ts +20 -0
  27. package/dist/src/tools/rag-tools.d.ts.map +1 -0
  28. package/dist/src/tools/rag-tools.js +524 -0
  29. package/dist/src/tools/rag-tools.js.map +1 -0
  30. package/dist/src/tools/tool-registry.d.ts +82 -0
  31. package/dist/src/tools/tool-registry.d.ts.map +1 -0
  32. package/dist/src/tools/tool-registry.js +185 -0
  33. package/dist/src/tools/tool-registry.js.map +1 -0
  34. package/dist/src/tools/types.d.ts +34 -0
  35. package/dist/src/tools/types.d.ts.map +1 -0
  36. package/dist/src/tools/types.js +2 -0
  37. package/dist/src/tools/types.js.map +1 -0
  38. package/package.json +39 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import Database from 'better-sqlite3';
2
+ export interface Migration {
3
+ version: number;
4
+ description: string;
5
+ up: (db: Database.Database) => void;
6
+ down?: (db: Database.Database) => void;
7
+ }
8
+ export declare class MigrationManager {
9
+ private db;
10
+ private migrations;
11
+ constructor(db: Database.Database);
12
+ private initializeMigrationTable;
13
+ addMigration(migration: Migration): void;
14
+ getCurrentVersion(): number;
15
+ getPendingMigrations(): Migration[];
16
+ runMigrations(): Promise<{
17
+ applied: number;
18
+ currentVersion: number;
19
+ }>;
20
+ rollback(targetVersion: number): void;
21
+ listMigrations(): Array<{
22
+ version: number;
23
+ description: string;
24
+ applied: boolean;
25
+ applied_at?: string;
26
+ }>;
27
+ }
28
+ //# sourceMappingURL=migration-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-manager.d.ts","sourceRoot":"","sources":["../../../src/migrations/migration-manager.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC;IACpC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC;CACxC;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,UAAU,CAAmB;gBAEzB,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAKjC,OAAO,CAAC,wBAAwB;IAWhC,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAIxC,iBAAiB,IAAI,MAAM;IAQ3B,oBAAoB,IAAI,SAAS,EAAE;IAO7B,aAAa,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IA0C3E,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IA0CrC,cAAc,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAgBzG"}
@@ -0,0 +1,111 @@
1
+ export class MigrationManager {
2
+ db;
3
+ migrations = [];
4
+ constructor(db) {
5
+ this.db = db;
6
+ this.initializeMigrationTable();
7
+ }
8
+ initializeMigrationTable() {
9
+ // Create migrations table if it doesn't exist
10
+ this.db.exec(`
11
+ CREATE TABLE IF NOT EXISTS schema_migrations (
12
+ version INTEGER PRIMARY KEY,
13
+ description TEXT NOT NULL,
14
+ applied_at DATETIME DEFAULT CURRENT_TIMESTAMP
15
+ )
16
+ `);
17
+ }
18
+ addMigration(migration) {
19
+ this.migrations.push(migration);
20
+ }
21
+ getCurrentVersion() {
22
+ const result = this.db.prepare(`
23
+ SELECT MAX(version) as version FROM schema_migrations
24
+ `).get();
25
+ return result.version || 0;
26
+ }
27
+ getPendingMigrations() {
28
+ const currentVersion = this.getCurrentVersion();
29
+ return this.migrations
30
+ .filter(m => m.version > currentVersion)
31
+ .sort((a, b) => a.version - b.version);
32
+ }
33
+ async runMigrations() {
34
+ const pendingMigrations = this.getPendingMigrations();
35
+ if (pendingMigrations.length === 0) {
36
+ console.error('📊 Database schema is up to date');
37
+ return { applied: 0, currentVersion: this.getCurrentVersion() };
38
+ }
39
+ console.error(`🔄 Running ${pendingMigrations.length} pending migrations...`);
40
+ let appliedCount = 0;
41
+ for (const migration of pendingMigrations) {
42
+ try {
43
+ console.error(` ├─ Applying migration ${migration.version}: ${migration.description}`);
44
+ // Run migration in a transaction
45
+ this.db.transaction(() => {
46
+ migration.up(this.db);
47
+ // Record the migration
48
+ this.db.prepare(`
49
+ INSERT INTO schema_migrations (version, description)
50
+ VALUES (?, ?)
51
+ `).run(migration.version, migration.description);
52
+ })();
53
+ appliedCount++;
54
+ console.error(` ├─ ✅ Migration ${migration.version} applied successfully`);
55
+ }
56
+ catch (error) {
57
+ console.error(` ├─ ❌ Migration ${migration.version} failed:`, error);
58
+ throw new Error(`Migration ${migration.version} failed: ${error}`);
59
+ }
60
+ }
61
+ const newVersion = this.getCurrentVersion();
62
+ console.error(`✅ Migrations completed: ${appliedCount} applied, current version: ${newVersion}`);
63
+ return { applied: appliedCount, currentVersion: newVersion };
64
+ }
65
+ rollback(targetVersion) {
66
+ const currentVersion = this.getCurrentVersion();
67
+ if (targetVersion >= currentVersion) {
68
+ console.error('⚠️ Target version is not lower than current version');
69
+ return;
70
+ }
71
+ const migrationsToRollback = this.migrations
72
+ .filter(m => m.version > targetVersion && m.version <= currentVersion)
73
+ .sort((a, b) => b.version - a.version); // Reverse order for rollback
74
+ console.error(`🔄 Rolling back ${migrationsToRollback.length} migrations...`);
75
+ for (const migration of migrationsToRollback) {
76
+ if (!migration.down) {
77
+ throw new Error(`Migration ${migration.version} does not support rollback`);
78
+ }
79
+ try {
80
+ console.error(` ├─ Rolling back migration ${migration.version}: ${migration.description}`);
81
+ this.db.transaction(() => {
82
+ migration.down(this.db);
83
+ // Remove migration record
84
+ this.db.prepare(`
85
+ DELETE FROM schema_migrations WHERE version = ?
86
+ `).run(migration.version);
87
+ })();
88
+ console.error(` ├─ ✅ Migration ${migration.version} rolled back successfully`);
89
+ }
90
+ catch (error) {
91
+ console.error(` ├─ ❌ Rollback ${migration.version} failed:`, error);
92
+ throw new Error(`Rollback ${migration.version} failed: ${error}`);
93
+ }
94
+ }
95
+ console.error(`✅ Rollback completed to version ${targetVersion}`);
96
+ }
97
+ listMigrations() {
98
+ const appliedMigrations = this.db.prepare(`
99
+ SELECT version, description, applied_at FROM schema_migrations ORDER BY version
100
+ `).all();
101
+ const appliedVersions = new Set(appliedMigrations.map(m => m.version));
102
+ const allMigrations = this.migrations.map(migration => ({
103
+ version: migration.version,
104
+ description: migration.description,
105
+ applied: appliedVersions.has(migration.version),
106
+ applied_at: appliedMigrations.find(m => m.version === migration.version)?.applied_at
107
+ }));
108
+ return allMigrations.sort((a, b) => a.version - b.version);
109
+ }
110
+ }
111
+ //# sourceMappingURL=migration-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-manager.js","sourceRoot":"","sources":["../../../src/migrations/migration-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Migration } from './migration-manager.js';
2
+ export declare const migrations: Migration[];
3
+ //# sourceMappingURL=migrations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/migrations/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,eAAO,MAAM,UAAU,EAAE,SAAS,EAsMjC,CAAC"}
@@ -0,0 +1,181 @@
1
+ export const migrations = [
2
+ {
3
+ version: 1,
4
+ description: 'Complete RAG Knowledge Graph schema - all tables and features',
5
+ up: (db) => {
6
+ // Disable foreign key enforcement to make deletions easier
7
+ db.pragma('foreign_keys = OFF');
8
+ // Original entities table (enhanced)
9
+ db.exec(`
10
+ CREATE TABLE IF NOT EXISTS entities (
11
+ id TEXT PRIMARY KEY,
12
+ name TEXT NOT NULL UNIQUE,
13
+ entityType TEXT DEFAULT 'CONCEPT',
14
+ observations TEXT DEFAULT '[]',
15
+ mentions INTEGER DEFAULT 0,
16
+ metadata TEXT DEFAULT '{}',
17
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP
18
+ )
19
+ `);
20
+ // Original relationships table (enhanced) - FK constraints kept for reference but not enforced
21
+ db.exec(`
22
+ CREATE TABLE IF NOT EXISTS relationships (
23
+ id TEXT PRIMARY KEY,
24
+ source_entity TEXT NOT NULL,
25
+ target_entity TEXT NOT NULL,
26
+ relationType TEXT NOT NULL,
27
+ confidence REAL DEFAULT 1.0,
28
+ metadata TEXT DEFAULT '{}',
29
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
30
+ FOREIGN KEY (source_entity) REFERENCES entities(id) ON DELETE CASCADE,
31
+ FOREIGN KEY (target_entity) REFERENCES entities(id) ON DELETE CASCADE
32
+ )
33
+ `);
34
+ // Documents table for RAG
35
+ db.exec(`
36
+ CREATE TABLE IF NOT EXISTS documents (
37
+ id TEXT PRIMARY KEY,
38
+ content TEXT NOT NULL,
39
+ metadata TEXT DEFAULT '{}',
40
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP
41
+ )
42
+ `);
43
+ // Vector embeddings using sqlite-vec for document chunks
44
+ db.exec(`
45
+ CREATE VIRTUAL TABLE IF NOT EXISTS chunks USING vec0(
46
+ embedding FLOAT[768]
47
+ )
48
+ `);
49
+ // Vector embeddings for entities using sqlite-vec
50
+ db.exec(`
51
+ CREATE VIRTUAL TABLE IF NOT EXISTS entity_embeddings USING vec0(
52
+ embedding FLOAT[768]
53
+ )
54
+ `);
55
+ // Basic chunk metadata table (without enhanced hybrid search features)
56
+ db.exec(`
57
+ CREATE TABLE IF NOT EXISTS chunk_metadata (
58
+ rowid INTEGER PRIMARY KEY,
59
+ chunk_id TEXT UNIQUE,
60
+ document_id TEXT,
61
+ chunk_index INTEGER,
62
+ text TEXT,
63
+ start_pos INTEGER,
64
+ end_pos INTEGER,
65
+ metadata TEXT DEFAULT '{}',
66
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
67
+ FOREIGN KEY (document_id) REFERENCES documents(id) ON DELETE CASCADE
68
+ )
69
+ `);
70
+ // Entity embedding metadata
71
+ db.exec(`
72
+ CREATE TABLE IF NOT EXISTS entity_embedding_metadata (
73
+ rowid INTEGER PRIMARY KEY,
74
+ entity_id TEXT UNIQUE,
75
+ embedding_text TEXT,
76
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
77
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE
78
+ )
79
+ `);
80
+ // Chunk-Entity associations
81
+ db.exec(`
82
+ CREATE TABLE IF NOT EXISTS chunk_entities (
83
+ chunk_rowid INTEGER NOT NULL,
84
+ entity_id TEXT NOT NULL,
85
+ PRIMARY KEY (chunk_rowid, entity_id),
86
+ FOREIGN KEY (entity_id) REFERENCES entities(id) ON DELETE CASCADE,
87
+ FOREIGN KEY (chunk_rowid) REFERENCES chunk_metadata(rowid) ON DELETE CASCADE
88
+ )
89
+ `);
90
+ // Create indexes
91
+ db.exec(`
92
+ CREATE INDEX IF NOT EXISTS idx_entities_name ON entities(name);
93
+ CREATE INDEX IF NOT EXISTS idx_relationships_source ON relationships(source_entity);
94
+ CREATE INDEX IF NOT EXISTS idx_relationships_target ON relationships(target_entity);
95
+ CREATE INDEX IF NOT EXISTS idx_chunk_entities_entity ON chunk_entities(entity_id);
96
+ CREATE INDEX IF NOT EXISTS idx_chunk_metadata_document ON chunk_metadata(document_id);
97
+ CREATE INDEX IF NOT EXISTS idx_entity_embedding_metadata_entity ON entity_embedding_metadata(entity_id);
98
+ `);
99
+ },
100
+ down: (db) => {
101
+ db.exec(`DROP TABLE IF EXISTS chunk_entities`);
102
+ db.exec(`DROP TABLE IF EXISTS entity_embedding_metadata`);
103
+ db.exec(`DROP TABLE IF EXISTS entity_embeddings`);
104
+ db.exec(`DROP TABLE IF EXISTS chunks`);
105
+ db.exec(`DROP TABLE IF EXISTS chunk_metadata`);
106
+ db.exec(`DROP TABLE IF EXISTS documents`);
107
+ db.exec(`DROP TABLE IF EXISTS relationships`);
108
+ db.exec(`DROP TABLE IF EXISTS entities`);
109
+ }
110
+ },
111
+ {
112
+ version: 2,
113
+ description: 'Enhanced hybrid search - add chunk_type support for knowledge graph chunks',
114
+ up: (db) => {
115
+ // Add new columns to chunk_metadata to support knowledge graph chunks
116
+ db.exec(`
117
+ ALTER TABLE chunk_metadata ADD COLUMN chunk_type TEXT DEFAULT 'document'
118
+ `);
119
+ db.exec(`
120
+ ALTER TABLE chunk_metadata ADD COLUMN entity_id TEXT
121
+ `);
122
+ db.exec(`
123
+ ALTER TABLE chunk_metadata ADD COLUMN relationship_id TEXT
124
+ `);
125
+ // Add indexes for the new columns
126
+ db.exec(`
127
+ CREATE INDEX IF NOT EXISTS idx_chunk_metadata_type ON chunk_metadata(chunk_type);
128
+ CREATE INDEX IF NOT EXISTS idx_chunk_metadata_entity ON chunk_metadata(entity_id);
129
+ CREATE INDEX IF NOT EXISTS idx_chunk_metadata_relationship ON chunk_metadata(relationship_id);
130
+ `);
131
+ // Update existing rows to have chunk_type = 'document'
132
+ db.exec(`
133
+ UPDATE chunk_metadata SET chunk_type = 'document' WHERE chunk_type IS NULL
134
+ `);
135
+ },
136
+ down: (db) => {
137
+ // SQLite doesn't support dropping columns, so we'd need to recreate the table
138
+ // For now, we'll just mark this as not reversible
139
+ throw new Error('This migration cannot be reversed due to SQLite limitations');
140
+ }
141
+ },
142
+ {
143
+ version: 3,
144
+ description: 'Upgrade embedding dimensions from 384 to 768 (gte-multilingual-base)',
145
+ up: (db) => {
146
+ // Drop old 384-dim vector tables
147
+ db.exec(`DROP TABLE IF EXISTS chunks`);
148
+ db.exec(`DROP TABLE IF EXISTS entity_embeddings`);
149
+ // Recreate with 768 dimensions
150
+ db.exec(`
151
+ CREATE VIRTUAL TABLE chunks USING vec0(
152
+ embedding FLOAT[768]
153
+ )
154
+ `);
155
+ db.exec(`
156
+ CREATE VIRTUAL TABLE entity_embeddings USING vec0(
157
+ embedding FLOAT[768]
158
+ )
159
+ `);
160
+ // Clear stale embedding metadata (embeddings need to be regenerated)
161
+ db.exec(`DELETE FROM entity_embedding_metadata`);
162
+ },
163
+ down: (db) => {
164
+ // Revert to 384 dimensions
165
+ db.exec(`DROP TABLE IF EXISTS chunks`);
166
+ db.exec(`DROP TABLE IF EXISTS entity_embeddings`);
167
+ db.exec(`
168
+ CREATE VIRTUAL TABLE chunks USING vec0(
169
+ embedding FLOAT[384]
170
+ )
171
+ `);
172
+ db.exec(`
173
+ CREATE VIRTUAL TABLE entity_embeddings USING vec0(
174
+ embedding FLOAT[384]
175
+ )
176
+ `);
177
+ db.exec(`DELETE FROM entity_embedding_metadata`);
178
+ }
179
+ }
180
+ ];
181
+ //# sourceMappingURL=migrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/migrations/migrations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ToolDefinition } from './types.js';
2
+ export declare const readGraphTool: ToolDefinition;
3
+ export declare const searchNodesTool: ToolDefinition;
4
+ export declare const openNodesTool: ToolDefinition;
5
+ export declare const deleteEntitiesTool: ToolDefinition;
6
+ export declare const deleteRelationsTool: ToolDefinition;
7
+ export declare const deleteObservationsTool: ToolDefinition;
8
+ export declare const graphQueryTools: {
9
+ readGraph: ToolDefinition;
10
+ searchNodes: ToolDefinition;
11
+ openNodes: ToolDefinition;
12
+ deleteEntities: ToolDefinition;
13
+ deleteRelations: ToolDefinition;
14
+ deleteObservations: ToolDefinition;
15
+ };
16
+ //# sourceMappingURL=graph-query-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph-query-tools.d.ts","sourceRoot":"","sources":["../../../src/tools/graph-query-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAmD,MAAM,YAAY,CAAC;AAiE7F,eAAO,MAAM,aAAa,EAAE,cAI3B,CAAC;AAiFF,eAAO,MAAM,eAAe,EAAE,cAI7B,CAAC;AAyEF,eAAO,MAAM,aAAa,EAAE,cAI3B,CAAC;AAwEF,eAAO,MAAM,kBAAkB,EAAE,cAIhC,CAAC;AA+EF,eAAO,MAAM,mBAAmB,EAAE,cAIjC,CAAC;AA6EF,eAAO,MAAM,sBAAsB,EAAE,cAIpC,CAAC;AAGF,eAAO,MAAM,eAAe;;;;;;;CAO3B,CAAC"}