ds-mcp-flowise 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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "ds-mcp-flowise",
3
+ "version": "1.0.0",
4
+ "description": "MCP server for building and managing Flowise chatflows and agentflows. Provides AI assistants with comprehensive knowledge of Flowise nodes and tools for workflow creation.",
5
+ "main": "dist/index.js",
6
+ "type": "module",
7
+ "bin": {
8
+ "ds-mcp-flowise": "./dist/index.js"
9
+ },
10
+ "scripts": {
11
+ "build": "tsc",
12
+ "start": "node dist/index.js",
13
+ "dev": "tsx src/index.ts",
14
+ "extract": "tsx scripts/extract-nodes.ts",
15
+ "prepare-db": "tsx scripts/prepare-database.ts"
16
+ },
17
+ "keywords": [
18
+ "mcp",
19
+ "flowise",
20
+ "chatflow",
21
+ "agentflow",
22
+ "ai",
23
+ "workflow",
24
+ "langchain",
25
+ "claude",
26
+ "model-context-protocol"
27
+ ],
28
+ "author": "David Soden",
29
+ "license": "MIT",
30
+ "dependencies": {
31
+ "@modelcontextprotocol/sdk": "^1.0.0",
32
+ "glob": "^10.3.0",
33
+ "sql.js": "^1.10.0",
34
+ "typescript": "^5.3.0"
35
+ },
36
+ "devDependencies": {
37
+ "@types/node": "^20.10.0",
38
+ "@types/sql.js": "^1.4.9",
39
+ "tsx": "^4.7.0"
40
+ },
41
+ "engines": {
42
+ "node": ">=18.0.0"
43
+ },
44
+ "repository": {
45
+ "type": "git",
46
+ "url": "https://github.com/dtsoden/DS-MCP-FLOWISE.git"
47
+ }
48
+ }
@@ -0,0 +1,368 @@
1
+ /**
2
+ * Extract node definitions from Flowise source code
3
+ * Parses TypeScript files to extract node schemas without requiring runtime execution
4
+ */
5
+
6
+ import * as fs from 'fs';
7
+ import * as path from 'path';
8
+ import { glob } from 'glob';
9
+
10
+ interface NodeInput {
11
+ label: string;
12
+ name: string;
13
+ type: string;
14
+ description?: string;
15
+ optional?: boolean;
16
+ default?: any;
17
+ options?: Array<{ label: string; name: string; description?: string }>;
18
+ additionalParams?: boolean;
19
+ rows?: number;
20
+ placeholder?: string;
21
+ loadMethod?: string;
22
+ credentialNames?: string[];
23
+ }
24
+
25
+ interface NodeCredential {
26
+ label: string;
27
+ name: string;
28
+ type: string;
29
+ credentialNames?: string[];
30
+ }
31
+
32
+ interface ExtractedNode {
33
+ name: string;
34
+ label: string;
35
+ version: number;
36
+ type: string;
37
+ icon: string;
38
+ category: string;
39
+ description: string;
40
+ baseClasses: string[];
41
+ credential?: NodeCredential;
42
+ inputs: NodeInput[];
43
+ outputs?: any[];
44
+ filePath: string;
45
+ }
46
+
47
+ interface MarketplaceTemplate {
48
+ name: string;
49
+ description: string;
50
+ type: 'chatflow' | 'agentflow' | 'agentflowv2' | 'tool';
51
+ nodes: any[];
52
+ edges: any[];
53
+ usecases?: string[];
54
+ }
55
+
56
+ // Extract string value from assignment like: this.label = 'ChatOpenAI'
57
+ function extractStringValue(content: string, propertyName: string): string | null {
58
+ // Match both single and double quotes, and template literals
59
+ const patterns = [
60
+ new RegExp(`this\\.${propertyName}\\s*=\\s*['"\`]([^'"\`]+)['"\`]`),
61
+ new RegExp(`this\\.${propertyName}\\s*=\\s*['"\`]([^'"\`]+)['"\`]`),
62
+ ];
63
+
64
+ for (const pattern of patterns) {
65
+ const match = content.match(pattern);
66
+ if (match) return match[1];
67
+ }
68
+ return null;
69
+ }
70
+
71
+ // Extract number value
72
+ function extractNumberValue(content: string, propertyName: string): number | null {
73
+ const pattern = new RegExp(`this\\.${propertyName}\\s*=\\s*([\\d.]+)`);
74
+ const match = content.match(pattern);
75
+ if (match) return parseFloat(match[1]);
76
+ return null;
77
+ }
78
+
79
+ // Extract array value (for baseClasses)
80
+ function extractBaseClasses(content: string): string[] {
81
+ // Try to find baseClasses assignment
82
+ const patterns = [
83
+ /this\.baseClasses\s*=\s*\[([^\]]+)\]/s,
84
+ /this\.baseClasses\s*=\s*\[this\.type[^\]]*\]/s,
85
+ ];
86
+
87
+ for (const pattern of patterns) {
88
+ const match = content.match(pattern);
89
+ if (match) {
90
+ // Extract string literals from the array
91
+ const arrayContent = match[1] || match[0];
92
+ const strings: string[] = [];
93
+ const stringMatches = arrayContent.matchAll(/['"`]([^'"`]+)['"`]/g);
94
+ for (const m of stringMatches) {
95
+ strings.push(m[1]);
96
+ }
97
+ // If this.type is referenced, we'll add it later
98
+ if (arrayContent.includes('this.type')) {
99
+ strings.unshift('__TYPE__'); // Placeholder
100
+ }
101
+ return strings;
102
+ }
103
+ }
104
+ return [];
105
+ }
106
+
107
+ // Extract inputs array - this is complex due to nested objects
108
+ function extractInputs(content: string): NodeInput[] {
109
+ const inputs: NodeInput[] = [];
110
+
111
+ // Find the inputs array assignment
112
+ const inputsMatch = content.match(/this\.inputs\s*=\s*\[([\s\S]*?)\n\s{8}\]/);
113
+ if (!inputsMatch) return inputs;
114
+
115
+ const inputsContent = inputsMatch[1];
116
+
117
+ // Split by objects - look for { patterns
118
+ const objectPattern = /\{\s*\n([\s\S]*?)\n\s{12}\}/g;
119
+ let match;
120
+
121
+ while ((match = objectPattern.exec(inputsContent)) !== null) {
122
+ const objContent = match[1];
123
+ const input: NodeInput = {
124
+ label: '',
125
+ name: '',
126
+ type: ''
127
+ };
128
+
129
+ // Extract properties
130
+ const labelMatch = objContent.match(/label:\s*['"`]([^'"`]+)['"`]/);
131
+ const nameMatch = objContent.match(/name:\s*['"`]([^'"`]+)['"`]/);
132
+ const typeMatch = objContent.match(/type:\s*['"`]([^'"`]+)['"`]/);
133
+ const descMatch = objContent.match(/description:\s*['"`]([^'"`]+)['"`]/);
134
+ const optionalMatch = objContent.match(/optional:\s*(true|false)/);
135
+ const defaultMatch = objContent.match(/default:\s*(['"`]([^'"`]+)['"`]|[\d.]+|true|false)/);
136
+ const additionalMatch = objContent.match(/additionalParams:\s*(true|false)/);
137
+ const rowsMatch = objContent.match(/rows:\s*(\d+)/);
138
+ const placeholderMatch = objContent.match(/placeholder:\s*['"`]([^'"`]+)['"`]/);
139
+ const loadMethodMatch = objContent.match(/loadMethod:\s*['"`]([^'"`]+)['"`]/);
140
+
141
+ if (labelMatch) input.label = labelMatch[1];
142
+ if (nameMatch) input.name = nameMatch[1];
143
+ if (typeMatch) input.type = typeMatch[1];
144
+ if (descMatch) input.description = descMatch[1];
145
+ if (optionalMatch) input.optional = optionalMatch[1] === 'true';
146
+ if (defaultMatch) {
147
+ const val = defaultMatch[2] || defaultMatch[1];
148
+ if (val === 'true') input.default = true;
149
+ else if (val === 'false') input.default = false;
150
+ else if (!isNaN(Number(val))) input.default = Number(val);
151
+ else input.default = val.replace(/['"`]/g, '');
152
+ }
153
+ if (additionalMatch) input.additionalParams = additionalMatch[1] === 'true';
154
+ if (rowsMatch) input.rows = parseInt(rowsMatch[1]);
155
+ if (placeholderMatch) input.placeholder = placeholderMatch[1];
156
+ if (loadMethodMatch) input.loadMethod = loadMethodMatch[1];
157
+
158
+ // Extract options if present
159
+ const optionsMatch = objContent.match(/options:\s*\[([\s\S]*?)\]/);
160
+ if (optionsMatch) {
161
+ input.options = [];
162
+ const optPattern = /\{\s*label:\s*['"`]([^'"`]+)['"`],\s*name:\s*['"`]([^'"`]+)['"`]/g;
163
+ let optMatch;
164
+ while ((optMatch = optPattern.exec(optionsMatch[1])) !== null) {
165
+ input.options.push({ label: optMatch[1], name: optMatch[2] });
166
+ }
167
+ }
168
+
169
+ if (input.name && input.type) {
170
+ inputs.push(input);
171
+ }
172
+ }
173
+
174
+ return inputs;
175
+ }
176
+
177
+ // Extract credential object
178
+ function extractCredential(content: string): NodeCredential | null {
179
+ const credMatch = content.match(/this\.credential\s*=\s*\{([\s\S]*?)\n\s{8}\}/);
180
+ if (!credMatch) return null;
181
+
182
+ const credContent = credMatch[1];
183
+ const labelMatch = credContent.match(/label:\s*['"`]([^'"`]+)['"`]/);
184
+ const nameMatch = credContent.match(/name:\s*['"`]([^'"`]+)['"`]/);
185
+ const typeMatch = credContent.match(/type:\s*['"`]([^'"`]+)['"`]/);
186
+ const credNamesMatch = credContent.match(/credentialNames:\s*\[([^\]]+)\]/);
187
+
188
+ if (!labelMatch || !nameMatch) return null;
189
+
190
+ const credential: NodeCredential = {
191
+ label: labelMatch[1],
192
+ name: nameMatch[1],
193
+ type: typeMatch?.[1] || 'credential'
194
+ };
195
+
196
+ if (credNamesMatch) {
197
+ credential.credentialNames = [];
198
+ const namesPattern = /['"`]([^'"`]+)['"`]/g;
199
+ let m;
200
+ while ((m = namesPattern.exec(credNamesMatch[1])) !== null) {
201
+ credential.credentialNames.push(m[1]);
202
+ }
203
+ }
204
+
205
+ return credential;
206
+ }
207
+
208
+ // Parse a single node file
209
+ function parseNodeFile(filePath: string): ExtractedNode | null {
210
+ try {
211
+ const content = fs.readFileSync(filePath, 'utf-8');
212
+
213
+ // Check if this is a node class
214
+ if (!content.includes('implements INode')) {
215
+ return null;
216
+ }
217
+
218
+ const name = extractStringValue(content, 'name');
219
+ const label = extractStringValue(content, 'label');
220
+ const version = extractNumberValue(content, 'version');
221
+ const type = extractStringValue(content, 'type');
222
+ const icon = extractStringValue(content, 'icon');
223
+ const category = extractStringValue(content, 'category');
224
+ const description = extractStringValue(content, 'description');
225
+
226
+ if (!name || !label) {
227
+ return null;
228
+ }
229
+
230
+ let baseClasses = extractBaseClasses(content);
231
+ // Replace __TYPE__ placeholder with actual type
232
+ if (type) {
233
+ baseClasses = baseClasses.map(bc => bc === '__TYPE__' ? type : bc);
234
+ }
235
+
236
+ const inputs = extractInputs(content);
237
+ const credential = extractCredential(content);
238
+
239
+ return {
240
+ name,
241
+ label,
242
+ version: version || 1,
243
+ type: type || name,
244
+ icon: icon || '',
245
+ category: category || 'Unknown',
246
+ description: description || '',
247
+ baseClasses,
248
+ credential: credential || undefined,
249
+ inputs,
250
+ filePath: path.relative(process.cwd(), filePath)
251
+ };
252
+ } catch (error) {
253
+ console.error(`Error parsing ${filePath}:`, error);
254
+ return null;
255
+ }
256
+ }
257
+
258
+ // Parse marketplace templates
259
+ function parseMarketplaceTemplates(marketplacePath: string): MarketplaceTemplate[] {
260
+ const templates: MarketplaceTemplate[] = [];
261
+
262
+ const folders = [
263
+ { path: 'chatflows', type: 'chatflow' as const },
264
+ { path: 'agentflows', type: 'agentflow' as const },
265
+ { path: 'agentflowsv2', type: 'agentflowv2' as const },
266
+ { path: 'tools', type: 'tool' as const },
267
+ ];
268
+
269
+ for (const folder of folders) {
270
+ const folderPath = path.join(marketplacePath, folder.path);
271
+ if (!fs.existsSync(folderPath)) continue;
272
+
273
+ const files = fs.readdirSync(folderPath).filter(f => f.endsWith('.json'));
274
+
275
+ for (const file of files) {
276
+ try {
277
+ const content = fs.readFileSync(path.join(folderPath, file), 'utf-8');
278
+ const data = JSON.parse(content);
279
+
280
+ templates.push({
281
+ name: file.replace('.json', ''),
282
+ description: data.description || '',
283
+ type: folder.type,
284
+ nodes: data.nodes || [],
285
+ edges: data.edges || [],
286
+ usecases: data.usecases || []
287
+ });
288
+ } catch (error) {
289
+ console.error(`Error parsing template ${file}:`, error);
290
+ }
291
+ }
292
+ }
293
+
294
+ return templates;
295
+ }
296
+
297
+ async function main() {
298
+ const flowiseSourcePath = path.join(process.cwd(), 'flowise-source');
299
+ const nodesPath = path.join(flowiseSourcePath, 'packages', 'components', 'nodes');
300
+ const marketplacePath = path.join(flowiseSourcePath, 'packages', 'server', 'marketplaces');
301
+ const outputPath = path.join(process.cwd(), 'data');
302
+
303
+ console.log('Extracting Flowise node definitions...\n');
304
+
305
+ // Find all TypeScript node files
306
+ const nodeFiles = await glob('**/*.ts', { cwd: nodesPath, absolute: true });
307
+ console.log(`Found ${nodeFiles.length} TypeScript files`);
308
+
309
+ const nodes: ExtractedNode[] = [];
310
+ const categories = new Set<string>();
311
+
312
+ for (const file of nodeFiles) {
313
+ const node = parseNodeFile(file);
314
+ if (node) {
315
+ nodes.push(node);
316
+ categories.add(node.category);
317
+ process.stdout.write(`\rExtracted: ${nodes.length} nodes`);
318
+ }
319
+ }
320
+
321
+ console.log(`\n\nExtracted ${nodes.length} nodes across ${categories.size} categories`);
322
+ console.log('Categories:', Array.from(categories).sort().join(', '));
323
+
324
+ // Parse marketplace templates
325
+ console.log('\nExtracting marketplace templates...');
326
+ const templates = parseMarketplaceTemplates(marketplacePath);
327
+ console.log(`Extracted ${templates.length} templates`);
328
+
329
+ // Ensure output directory exists
330
+ if (!fs.existsSync(outputPath)) {
331
+ fs.mkdirSync(outputPath, { recursive: true });
332
+ }
333
+
334
+ // Write extracted data
335
+ fs.writeFileSync(
336
+ path.join(outputPath, 'nodes.json'),
337
+ JSON.stringify(nodes, null, 2)
338
+ );
339
+
340
+ fs.writeFileSync(
341
+ path.join(outputPath, 'templates.json'),
342
+ JSON.stringify(templates, null, 2)
343
+ );
344
+
345
+ // Write summary
346
+ const summary = {
347
+ extractedAt: new Date().toISOString(),
348
+ totalNodes: nodes.length,
349
+ categories: Array.from(categories).sort(),
350
+ totalTemplates: templates.length,
351
+ templatesByType: {
352
+ chatflow: templates.filter(t => t.type === 'chatflow').length,
353
+ agentflow: templates.filter(t => t.type === 'agentflow').length,
354
+ agentflowv2: templates.filter(t => t.type === 'agentflowv2').length,
355
+ tool: templates.filter(t => t.type === 'tool').length,
356
+ }
357
+ };
358
+
359
+ fs.writeFileSync(
360
+ path.join(outputPath, 'summary.json'),
361
+ JSON.stringify(summary, null, 2)
362
+ );
363
+
364
+ console.log('\nExtraction complete!');
365
+ console.log(`Output written to: ${outputPath}`);
366
+ }
367
+
368
+ main().catch(console.error);
@@ -0,0 +1,230 @@
1
+ /**
2
+ * Prepare SQLite database from extracted node data
3
+ * Using sql.js for cross-platform compatibility (no native compilation needed)
4
+ */
5
+
6
+ import initSqlJs, { Database } from 'sql.js';
7
+ import * as fs from 'fs';
8
+ import * as path from 'path';
9
+
10
+ const DATA_PATH = path.join(process.cwd(), 'data');
11
+ const DB_PATH = path.join(DATA_PATH, 'flowise.db');
12
+
13
+ interface NodeInput {
14
+ label: string;
15
+ name: string;
16
+ type: string;
17
+ description?: string;
18
+ optional?: boolean;
19
+ default?: any;
20
+ options?: Array<{ label: string; name: string; description?: string }>;
21
+ additionalParams?: boolean;
22
+ }
23
+
24
+ interface ExtractedNode {
25
+ name: string;
26
+ label: string;
27
+ version: number;
28
+ type: string;
29
+ icon: string;
30
+ category: string;
31
+ description: string;
32
+ baseClasses: string[];
33
+ credential?: any;
34
+ inputs: NodeInput[];
35
+ filePath: string;
36
+ }
37
+
38
+ interface MarketplaceTemplate {
39
+ name: string;
40
+ description: string;
41
+ type: string;
42
+ nodes: any[];
43
+ edges: any[];
44
+ usecases?: string[];
45
+ }
46
+
47
+ async function createDatabase(): Promise<Database> {
48
+ const SQL = await initSqlJs();
49
+ const db = new SQL.Database();
50
+
51
+ // Create tables
52
+ db.run(`
53
+ -- Nodes table
54
+ CREATE TABLE nodes (
55
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
56
+ name TEXT UNIQUE NOT NULL,
57
+ label TEXT NOT NULL,
58
+ version REAL NOT NULL,
59
+ type TEXT NOT NULL,
60
+ icon TEXT,
61
+ category TEXT NOT NULL,
62
+ description TEXT,
63
+ base_classes TEXT,
64
+ credential TEXT,
65
+ file_path TEXT
66
+ );
67
+
68
+ -- Node inputs table
69
+ CREATE TABLE node_inputs (
70
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
71
+ node_name TEXT NOT NULL,
72
+ input_name TEXT NOT NULL,
73
+ input_label TEXT NOT NULL,
74
+ input_type TEXT NOT NULL,
75
+ description TEXT,
76
+ optional INTEGER DEFAULT 0,
77
+ default_value TEXT,
78
+ options TEXT,
79
+ additional_params INTEGER DEFAULT 0,
80
+ FOREIGN KEY (node_name) REFERENCES nodes(name)
81
+ );
82
+
83
+ -- Categories table
84
+ CREATE TABLE categories (
85
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
86
+ name TEXT UNIQUE NOT NULL,
87
+ node_count INTEGER DEFAULT 0
88
+ );
89
+
90
+ -- Templates table
91
+ CREATE TABLE templates (
92
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
93
+ name TEXT NOT NULL,
94
+ description TEXT,
95
+ type TEXT NOT NULL,
96
+ usecases TEXT,
97
+ nodes TEXT NOT NULL,
98
+ edges TEXT NOT NULL
99
+ );
100
+
101
+ -- Indexes
102
+ CREATE INDEX idx_nodes_category ON nodes(category);
103
+ CREATE INDEX idx_nodes_type ON nodes(type);
104
+ CREATE INDEX idx_node_inputs_node ON node_inputs(node_name);
105
+ CREATE INDEX idx_templates_type ON templates(type);
106
+ `);
107
+
108
+ return db;
109
+ }
110
+
111
+ function populateDatabase(db: Database) {
112
+ // Load extracted data
113
+ const nodesData: ExtractedNode[] = JSON.parse(
114
+ fs.readFileSync(path.join(DATA_PATH, 'nodes.json'), 'utf-8')
115
+ );
116
+
117
+ const templatesData: MarketplaceTemplate[] = JSON.parse(
118
+ fs.readFileSync(path.join(DATA_PATH, 'templates.json'), 'utf-8')
119
+ );
120
+
121
+ console.log(`Loading ${nodesData.length} nodes...`);
122
+
123
+ const categories = new Set<string>();
124
+
125
+ // Insert nodes
126
+ for (const node of nodesData) {
127
+ categories.add(node.category);
128
+
129
+ db.run(
130
+ `INSERT INTO nodes (name, label, version, type, icon, category, description, base_classes, credential, file_path)
131
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
132
+ [
133
+ node.name,
134
+ node.label,
135
+ node.version,
136
+ node.type,
137
+ node.icon,
138
+ node.category,
139
+ node.description,
140
+ JSON.stringify(node.baseClasses),
141
+ node.credential ? JSON.stringify(node.credential) : null,
142
+ node.filePath
143
+ ]
144
+ );
145
+
146
+ // Insert inputs
147
+ for (const input of node.inputs) {
148
+ db.run(
149
+ `INSERT INTO node_inputs (node_name, input_name, input_label, input_type, description, optional, default_value, options, additional_params)
150
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)`,
151
+ [
152
+ node.name,
153
+ input.name,
154
+ input.label,
155
+ input.type,
156
+ input.description || null,
157
+ input.optional ? 1 : 0,
158
+ input.default !== undefined ? String(input.default) : null,
159
+ input.options ? JSON.stringify(input.options) : null,
160
+ input.additionalParams ? 1 : 0
161
+ ]
162
+ );
163
+ }
164
+ }
165
+
166
+ // Insert and update categories
167
+ for (const category of categories) {
168
+ db.run(`INSERT OR IGNORE INTO categories (name) VALUES (?)`, [category]);
169
+ db.run(
170
+ `UPDATE categories SET node_count = (SELECT COUNT(*) FROM nodes WHERE category = ?) WHERE name = ?`,
171
+ [category, category]
172
+ );
173
+ }
174
+
175
+ // Insert templates
176
+ console.log(`Loading ${templatesData.length} templates...`);
177
+
178
+ for (const template of templatesData) {
179
+ db.run(
180
+ `INSERT INTO templates (name, description, type, usecases, nodes, edges)
181
+ VALUES (?, ?, ?, ?, ?, ?)`,
182
+ [
183
+ template.name,
184
+ template.description,
185
+ template.type,
186
+ template.usecases ? JSON.stringify(template.usecases) : null,
187
+ JSON.stringify(template.nodes),
188
+ JSON.stringify(template.edges)
189
+ ]
190
+ );
191
+ }
192
+
193
+ // Get stats
194
+ const nodeCount = db.exec('SELECT COUNT(*) as count FROM nodes')[0].values[0][0];
195
+ const inputCount = db.exec('SELECT COUNT(*) as count FROM node_inputs')[0].values[0][0];
196
+ const categoryCount = db.exec('SELECT COUNT(*) as count FROM categories')[0].values[0][0];
197
+ const templateCount = db.exec('SELECT COUNT(*) as count FROM templates')[0].values[0][0];
198
+
199
+ console.log('\nDatabase prepared successfully!');
200
+ console.log(` Nodes: ${nodeCount}`);
201
+ console.log(` Inputs: ${inputCount}`);
202
+ console.log(` Categories: ${categoryCount}`);
203
+ console.log(` Templates: ${templateCount}`);
204
+ }
205
+
206
+ async function main() {
207
+ // Check if extracted data exists
208
+ if (!fs.existsSync(path.join(DATA_PATH, 'nodes.json'))) {
209
+ console.error('Error: Extracted node data not found. Run "npm run extract" first.');
210
+ process.exit(1);
211
+ }
212
+
213
+ console.log('Preparing SQLite database...\n');
214
+
215
+ const db = await createDatabase();
216
+
217
+ try {
218
+ populateDatabase(db);
219
+
220
+ // Save database to file
221
+ const data = db.export();
222
+ const buffer = Buffer.from(data);
223
+ fs.writeFileSync(DB_PATH, buffer);
224
+ console.log(`\nDatabase saved to: ${DB_PATH}`);
225
+ } finally {
226
+ db.close();
227
+ }
228
+ }
229
+
230
+ main().catch(console.error);