@node2flow/sqlite-mcp 1.0.0 → 2.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.
package/README.md CHANGED
@@ -4,11 +4,11 @@
4
4
  [![npm version](https://img.shields.io/npm/v/@node2flow/sqlite-mcp.svg)](https://www.npmjs.com/package/@node2flow/sqlite-mcp)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
6
 
7
- MCP server for SQLite databases — query, manage schema, indexes, and optimize through 15 tools.
7
+ MCP server for SQLite databases — local files or remote Turso/libSQL via URL. 15 tools for query, schema, indexes, and optimization.
8
8
 
9
9
  ## Quick Start
10
10
 
11
- ### Claude Desktop / Cursor
11
+ ### Local Database (Claude Desktop / Cursor)
12
12
 
13
13
  ```json
14
14
  {
@@ -24,19 +24,59 @@ MCP server for SQLite databases — query, manage schema, indexes, and optimize
24
24
  }
25
25
  ```
26
26
 
27
+ ### Remote Database (Turso/libSQL)
28
+
29
+ ```json
30
+ {
31
+ "mcpServers": {
32
+ "sqlite": {
33
+ "command": "npx",
34
+ "args": ["-y", "@node2flow/sqlite-mcp"],
35
+ "env": {
36
+ "SQLITE_DB_URL": "libsql://your-db-name.turso.io",
37
+ "SQLITE_AUTH_TOKEN": "your-auth-token"
38
+ }
39
+ }
40
+ }
41
+ }
42
+ ```
43
+
27
44
  ### HTTP Mode
28
45
 
29
46
  ```bash
47
+ # Local
30
48
  SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp --http
31
- # MCP endpoint: http://localhost:3000/mcp
49
+
50
+ # Remote
51
+ SQLITE_DB_URL=libsql://your-db.turso.io SQLITE_AUTH_TOKEN=xxx npx @node2flow/sqlite-mcp --http
32
52
  ```
33
53
 
54
+ MCP endpoint: `http://localhost:3000/mcp`
55
+
56
+ ### Cloudflare Worker (Remote Only)
57
+
58
+ Available at: `https://sqlite-mcp-community.node2flow.net/mcp`
59
+
60
+ ```
61
+ POST https://sqlite-mcp-community.node2flow.net/mcp?SQLITE_DB_URL=libsql://your-db.turso.io&SQLITE_AUTH_TOKEN=xxx
62
+ ```
63
+
64
+ > CF Workers have no filesystem — only `SQLITE_DB_URL` is supported.
65
+
66
+ ---
67
+
34
68
  ## Configuration
35
69
 
36
- | Variable | Required | Description |
37
- |----------|----------|-------------|
38
- | `SQLITE_DB_PATH` | Yes | Path to SQLite database file (creates if not exists) |
39
- | `SQLITE_TIMEOUT` | No | Database busy timeout in milliseconds (default: 5000) |
70
+ | Variable | Required | Mode | Description |
71
+ |----------|----------|------|-------------|
72
+ | `SQLITE_DB_PATH` | No | Local | Path to SQLite file (creates if not exists) |
73
+ | `SQLITE_DB_URL` | No | Remote | Turso/libSQL URL (e.g. `libsql://db.turso.io`) |
74
+ | `SQLITE_AUTH_TOKEN` | No | Remote | Auth token for Turso (required with URL) |
75
+ | `SQLITE_TIMEOUT` | No | Local | Busy timeout in ms (default: 5000) |
76
+
77
+ **Priority:** `SQLITE_DB_URL` > `SQLITE_DB_PATH` (if both set, URL wins)
78
+
79
+ ---
40
80
 
41
81
  ## Tools (15)
42
82
 
@@ -80,6 +120,20 @@ SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp --http
80
120
  | `sqlite_vacuum` | Optimize and compact database |
81
121
  | `sqlite_integrity_check` | Check database health |
82
122
 
123
+ ---
124
+
125
+ ## Turso Setup
126
+
127
+ 1. Install Turso CLI: `curl -sSfL https://get.tur.so/install.sh | bash`
128
+ 2. Sign up: `turso auth signup`
129
+ 3. Create database: `turso db create my-database`
130
+ 4. Get URL: `turso db show my-database --url`
131
+ 5. Get token: `turso db tokens create my-database`
132
+
133
+ Free tier: 500 databases, 9GB storage, 25M reads/month.
134
+
135
+ ---
136
+
83
137
  ## Docker
84
138
 
85
139
  ```bash
@@ -87,7 +141,7 @@ docker compose up -d
87
141
  # Endpoint: http://localhost:3025/mcp
88
142
  ```
89
143
 
90
- Mount your database files via volumes:
144
+ Mount database files or use remote URL:
91
145
 
92
146
  ```yaml
93
147
  services:
@@ -96,11 +150,17 @@ services:
96
150
  ports:
97
151
  - "127.0.0.1:3025:3000"
98
152
  environment:
153
+ # Local mode:
99
154
  - SQLITE_DB_PATH=/data/database.db
155
+ # OR Remote mode:
156
+ # - SQLITE_DB_URL=libsql://your-db.turso.io
157
+ # - SQLITE_AUTH_TOKEN=your-token
100
158
  volumes:
101
159
  - ./data:/data
102
160
  ```
103
161
 
162
+ ---
163
+
104
164
  ## License
105
165
 
106
166
  MIT License - see [LICENSE](LICENSE)
@@ -110,6 +170,8 @@ Copyright (c) 2026 [Node2Flow](https://node2flow.net)
110
170
  ## Links
111
171
 
112
172
  - [npm Package](https://www.npmjs.com/package/@node2flow/sqlite-mcp)
173
+ - [Turso](https://turso.tech/) — Hosted SQLite databases
174
+ - [libSQL](https://github.com/tursodatabase/libsql) — Open source SQLite fork
113
175
  - [SQLite Documentation](https://sqlite.org/docs.html)
114
176
  - [MCP Protocol](https://modelcontextprotocol.io/)
115
177
  - [Node2Flow](https://node2flow.net)
package/dist/client.d.ts CHANGED
@@ -1,38 +1,38 @@
1
1
  /**
2
- * SQLite Client
3
- * Wraps better-sqlite3 with typed methods for all MCP tools
2
+ * SQLite Client (Local)
3
+ * Wraps better-sqlite3 with typed async methods matching SqliteClientInterface
4
4
  */
5
- import type { SqliteConfig, ColumnInfo, IndexInfo, ForeignKeyInfo, TableInfo, DatabaseInfo, ColumnDefinition, QueryResult, ExecuteResult } from './types.js';
6
- export declare class SqliteClient {
5
+ import type { SqliteConfig, SqliteClientInterface, ColumnInfo, IndexInfo, ForeignKeyInfo, TableInfo, DatabaseInfo, ColumnDefinition, QueryResult, ExecuteResult } from './types.js';
6
+ export declare class SqliteClient implements SqliteClientInterface {
7
7
  private db;
8
8
  private config;
9
9
  constructor(config: SqliteConfig);
10
- query(sql: string, params?: unknown[]): QueryResult;
11
- execute(sql: string, params?: unknown[]): ExecuteResult;
12
- runScript(sql: string): {
10
+ query(sql: string, params?: unknown[]): Promise<QueryResult>;
11
+ execute(sql: string, params?: unknown[]): Promise<ExecuteResult>;
12
+ runScript(sql: string): Promise<{
13
13
  statementsRun: number;
14
- };
15
- listTables(): TableInfo[];
16
- describeTable(table: string): {
14
+ }>;
15
+ listTables(): Promise<TableInfo[]>;
16
+ describeTable(table: string): Promise<{
17
17
  columns: ColumnInfo[];
18
18
  sql: string;
19
- };
20
- listIndexes(table: string): IndexInfo[];
21
- listForeignKeys(table: string): ForeignKeyInfo[];
22
- createTable(table: string, columns: ColumnDefinition[], ifNotExists?: boolean): void;
23
- alterTable(table: string, action: string, params: Record<string, unknown>): void;
24
- dropTable(table: string, ifExists?: boolean): void;
25
- createIndex(table: string, columns: string[], indexName?: string, unique?: boolean, ifNotExists?: boolean): void;
26
- dropIndex(indexName: string, ifExists?: boolean): void;
27
- getInfo(): DatabaseInfo;
28
- vacuum(): {
19
+ }>;
20
+ listIndexes(table: string): Promise<IndexInfo[]>;
21
+ listForeignKeys(table: string): Promise<ForeignKeyInfo[]>;
22
+ createTable(table: string, columns: ColumnDefinition[], ifNotExists?: boolean): Promise<void>;
23
+ alterTable(table: string, action: string, params: Record<string, unknown>): Promise<void>;
24
+ dropTable(table: string, ifExists?: boolean): Promise<void>;
25
+ createIndex(table: string, columns: string[], indexName?: string, unique?: boolean, ifNotExists?: boolean): Promise<void>;
26
+ dropIndex(indexName: string, ifExists?: boolean): Promise<void>;
27
+ getInfo(): Promise<DatabaseInfo>;
28
+ vacuum(): Promise<{
29
29
  sizeBefore: number;
30
30
  sizeAfter: number;
31
- };
32
- integrityCheck(): {
31
+ }>;
32
+ integrityCheck(): Promise<{
33
33
  ok: boolean;
34
34
  results: string[];
35
- };
35
+ }>;
36
36
  close(): void;
37
37
  }
38
38
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,SAAS,EACT,cAAc,EACd,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,qBAAa,YAAY;IACvB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAchC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,WAAW;IAYnD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,aAAa;IAMvD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE;IAmBjD,UAAU,IAAI,SAAS,EAAE;IAqBzB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE;IAUpE,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE;IAMvC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE;IAQhD,WAAW,CACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,EAAE,EAC3B,WAAW,CAAC,EAAE,OAAO,GACpB,IAAI;IAiBP,UAAU,CACR,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,IAAI;IA0BP,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI;IAOlD,WAAW,CACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,OAAO,EAChB,WAAW,CAAC,EAAE,OAAO,GACpB,IAAI;IAUP,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI;IAOtD,OAAO,IAAI,YAAY;IA8CvB,MAAM,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAiBnD,cAAc,IAAI;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAWpD,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,cAAc,EACd,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,qBAAa,YAAa,YAAW,qBAAqB;IACxD,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAc1B,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAY5D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAMhE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAmB1D,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAqBlC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAU7E,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAMhD,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAQzD,WAAW,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,EAAE,EAC3B,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;IAiBV,UAAU,CACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IA0BV,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3D,WAAW,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,OAAO,EAChB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;IAUV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC;IA8ChC,MAAM,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAiB5D,cAAc,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAWnE,KAAK,IAAI,IAAI;CAGd"}
package/dist/client.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * SQLite Client
3
- * Wraps better-sqlite3 with typed methods for all MCP tools
2
+ * SQLite Client (Local)
3
+ * Wraps better-sqlite3 with typed async methods matching SqliteClientInterface
4
4
  */
5
5
  import Database from 'better-sqlite3';
6
6
  import * as fs from 'node:fs';
@@ -20,7 +20,7 @@ export class SqliteClient {
20
20
  this.db.pragma('foreign_keys = ON');
21
21
  }
22
22
  // ========== Query & Execute ==========
23
- query(sql, params) {
23
+ async query(sql, params) {
24
24
  const stmt = this.db.prepare(sql);
25
25
  const rows = params
26
26
  ? stmt.all(...params)
@@ -30,12 +30,12 @@ export class SqliteClient {
30
30
  : stmt.columns().map((c) => c.name);
31
31
  return { columns, rows, rowCount: rows.length };
32
32
  }
33
- execute(sql, params) {
33
+ async execute(sql, params) {
34
34
  const stmt = this.db.prepare(sql);
35
35
  const result = params ? stmt.run(...params) : stmt.run();
36
36
  return { changes: result.changes, lastInsertRowid: result.lastInsertRowid };
37
37
  }
38
- runScript(sql) {
38
+ async runScript(sql) {
39
39
  const transaction = this.db.transaction(() => {
40
40
  const statements = sql
41
41
  .split(';')
@@ -52,7 +52,7 @@ export class SqliteClient {
52
52
  return { statementsRun };
53
53
  }
54
54
  // ========== Schema Inspection ==========
55
- listTables() {
55
+ async listTables() {
56
56
  const tables = this.db
57
57
  .prepare("SELECT name, type FROM sqlite_master WHERE type IN ('table', 'view') AND name NOT LIKE 'sqlite_%' ORDER BY name")
58
58
  .all();
@@ -70,7 +70,7 @@ export class SqliteClient {
70
70
  return { name: t.name, type: t.type, rowCount };
71
71
  });
72
72
  }
73
- describeTable(table) {
73
+ async describeTable(table) {
74
74
  const columns = this.db
75
75
  .prepare(`PRAGMA table_info("${table}")`)
76
76
  .all();
@@ -79,18 +79,18 @@ export class SqliteClient {
79
79
  .get(table);
80
80
  return { columns, sql: schemaRow?.sql ?? '' };
81
81
  }
82
- listIndexes(table) {
82
+ async listIndexes(table) {
83
83
  return this.db
84
84
  .prepare(`PRAGMA index_list("${table}")`)
85
85
  .all();
86
86
  }
87
- listForeignKeys(table) {
87
+ async listForeignKeys(table) {
88
88
  return this.db
89
89
  .prepare(`PRAGMA foreign_key_list("${table}")`)
90
90
  .all();
91
91
  }
92
92
  // ========== Schema Management ==========
93
- createTable(table, columns, ifNotExists) {
93
+ async createTable(table, columns, ifNotExists) {
94
94
  const colDefs = columns.map((col) => {
95
95
  let def = `"${col.name}" ${col.type}`;
96
96
  if (col.primaryKey)
@@ -107,7 +107,7 @@ export class SqliteClient {
107
107
  const exists = ifNotExists ? ' IF NOT EXISTS' : '';
108
108
  this.db.exec(`CREATE TABLE${exists} "${table}" (${colDefs.join(', ')})`);
109
109
  }
110
- alterTable(table, action, params) {
110
+ async alterTable(table, action, params) {
111
111
  switch (action) {
112
112
  case 'add_column': {
113
113
  let sql = `ALTER TABLE "${table}" ADD COLUMN "${params.column}" ${params.type}`;
@@ -129,24 +129,24 @@ export class SqliteClient {
129
129
  throw new Error(`Unknown alter action: ${action}`);
130
130
  }
131
131
  }
132
- dropTable(table, ifExists) {
132
+ async dropTable(table, ifExists) {
133
133
  const exists = ifExists ? ' IF EXISTS' : '';
134
134
  this.db.exec(`DROP TABLE${exists} "${table}"`);
135
135
  }
136
136
  // ========== Index Management ==========
137
- createIndex(table, columns, indexName, unique, ifNotExists) {
137
+ async createIndex(table, columns, indexName, unique, ifNotExists) {
138
138
  const name = indexName || `idx_${table}_${columns.join('_')}`;
139
139
  const uniqueStr = unique ? ' UNIQUE' : '';
140
140
  const exists = ifNotExists ? ' IF NOT EXISTS' : '';
141
141
  const cols = columns.map((c) => `"${c}"`).join(', ');
142
142
  this.db.exec(`CREATE${uniqueStr} INDEX${exists} "${name}" ON "${table}" (${cols})`);
143
143
  }
144
- dropIndex(indexName, ifExists) {
144
+ async dropIndex(indexName, ifExists) {
145
145
  const exists = ifExists ? ' IF EXISTS' : '';
146
146
  this.db.exec(`DROP INDEX${exists} "${indexName}"`);
147
147
  }
148
148
  // ========== Database Management ==========
149
- getInfo() {
149
+ async getInfo() {
150
150
  const pageCount = this.db.prepare('PRAGMA page_count').get().page_count;
151
151
  const pageSize = this.db.prepare('PRAGMA page_size').get().page_size;
152
152
  const journalMode = this.db.prepare('PRAGMA journal_mode').get().journal_mode;
@@ -177,7 +177,7 @@ export class SqliteClient {
177
177
  sqliteVersion,
178
178
  };
179
179
  }
180
- vacuum() {
180
+ async vacuum() {
181
181
  let sizeBefore = 0;
182
182
  try {
183
183
  sizeBefore = fs.statSync(this.config.dbPath).size;
@@ -195,7 +195,7 @@ export class SqliteClient {
195
195
  }
196
196
  return { sizeBefore, sizeAfter };
197
197
  }
198
- integrityCheck() {
198
+ async integrityCheck() {
199
199
  const results = this.db
200
200
  .prepare('PRAGMA integrity_check')
201
201
  .all();
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,17 +2,25 @@
2
2
  /**
3
3
  * SQLite MCP Server
4
4
  *
5
- * Community edition — connects directly to a local SQLite database.
5
+ * Community edition — connects to local SQLite files or remote Turso/libSQL databases.
6
6
  *
7
- * Usage (stdio - for Claude Desktop / Cursor / VS Code):
7
+ * Usage (local - stdio):
8
8
  * SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp
9
9
  *
10
+ * Usage (remote - stdio):
11
+ * SQLITE_DB_URL=libsql://db-name.turso.io SQLITE_AUTH_TOKEN=xxx npx @node2flow/sqlite-mcp
12
+ *
10
13
  * Usage (HTTP - Streamable HTTP transport):
11
- * SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp --http
14
+ * SQLITE_DB_URL=libsql://... SQLITE_AUTH_TOKEN=xxx npx @node2flow/sqlite-mcp --http
15
+ */
16
+ /**
17
+ * Smithery default export
12
18
  */
13
19
  export default function createSmitheryServer(opts?: {
14
20
  config?: {
15
21
  SQLITE_DB_PATH?: string;
22
+ SQLITE_DB_URL?: string;
23
+ SQLITE_AUTH_TOKEN?: string;
16
24
  SQLITE_TIMEOUT?: number;
17
25
  };
18
26
  }): import("@modelcontextprotocol/sdk/server/mcp.js").McpServer;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG;AA6JH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAI,CAAC,EAAE;IAClD,MAAM,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/D,+DAOA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;GAaG;AAkLH;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,IAAI,CAAC,EAAE;IAClD,MAAM,CAAC,EAAE;QACP,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH,+DAWA"}
package/dist/index.js CHANGED
@@ -2,13 +2,16 @@
2
2
  /**
3
3
  * SQLite MCP Server
4
4
  *
5
- * Community edition — connects directly to a local SQLite database.
5
+ * Community edition — connects to local SQLite files or remote Turso/libSQL databases.
6
6
  *
7
- * Usage (stdio - for Claude Desktop / Cursor / VS Code):
7
+ * Usage (local - stdio):
8
8
  * SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp
9
9
  *
10
+ * Usage (remote - stdio):
11
+ * SQLITE_DB_URL=libsql://db-name.turso.io SQLITE_AUTH_TOKEN=xxx npx @node2flow/sqlite-mcp
12
+ *
10
13
  * Usage (HTTP - Streamable HTTP transport):
11
- * SQLITE_DB_PATH=/path/to/database.db npx @node2flow/sqlite-mcp --http
14
+ * SQLITE_DB_URL=libsql://... SQLITE_AUTH_TOKEN=xxx npx @node2flow/sqlite-mcp --http
12
15
  */
13
16
  import { randomUUID } from 'node:crypto';
14
17
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
@@ -18,23 +21,32 @@ import { isInitializeRequest } from '@modelcontextprotocol/sdk/types.js';
18
21
  import { createServer } from './server.js';
19
22
  import { TOOLS } from './tools.js';
20
23
  function getConfig() {
24
+ const url = process.env.SQLITE_DB_URL;
21
25
  const dbPath = process.env.SQLITE_DB_PATH;
22
- if (!dbPath)
23
- return null;
24
- return {
25
- dbPath,
26
- timeout: process.env.SQLITE_TIMEOUT
27
- ? parseInt(process.env.SQLITE_TIMEOUT, 10)
28
- : undefined,
29
- };
26
+ if (url) {
27
+ return {
28
+ url,
29
+ authToken: process.env.SQLITE_AUTH_TOKEN,
30
+ };
31
+ }
32
+ if (dbPath) {
33
+ return {
34
+ dbPath,
35
+ timeout: process.env.SQLITE_TIMEOUT
36
+ ? parseInt(process.env.SQLITE_TIMEOUT, 10)
37
+ : undefined,
38
+ };
39
+ }
40
+ return null;
30
41
  }
31
42
  async function startStdio() {
32
43
  const config = getConfig();
33
44
  const server = createServer(config ?? undefined);
34
45
  const transport = new StdioServerTransport();
35
46
  await server.connect(transport);
47
+ const mode = config?.url ? `remote: ${config.url}` : config?.dbPath ? `local: ${config.dbPath}` : '(not configured yet)';
36
48
  console.error('SQLite MCP Server running on stdio');
37
- console.error(`Database: ${config ? config.dbPath : '(not configured yet)'}`);
49
+ console.error(`Database: ${mode}`);
38
50
  console.error(`Tools available: ${TOOLS.length}`);
39
51
  console.error('Ready for MCP client\n');
40
52
  }
@@ -43,6 +55,17 @@ async function startHttp() {
43
55
  const app = createMcpExpressApp({ host: '0.0.0.0' });
44
56
  const transports = {};
45
57
  app.post('/mcp', async (req, res) => {
58
+ // Accept config from query params
59
+ const url = new URL(req.url, `http://${req.headers.host}`);
60
+ const qUrl = url.searchParams.get('SQLITE_DB_URL');
61
+ const qAuthToken = url.searchParams.get('SQLITE_AUTH_TOKEN');
62
+ const qDbPath = url.searchParams.get('SQLITE_DB_PATH');
63
+ if (qUrl)
64
+ process.env.SQLITE_DB_URL = qUrl;
65
+ if (qAuthToken)
66
+ process.env.SQLITE_AUTH_TOKEN = qAuthToken;
67
+ if (qDbPath)
68
+ process.env.SQLITE_DB_PATH = qDbPath;
46
69
  const sessionId = req.headers['mcp-session-id'];
47
70
  try {
48
71
  let transport;
@@ -111,7 +134,7 @@ async function startHttp() {
111
134
  app.get('/', (_req, res) => {
112
135
  res.json({
113
136
  name: 'sqlite-mcp',
114
- version: '1.0.0',
137
+ version: '2.0.0',
115
138
  status: 'ok',
116
139
  tools: TOOLS.length,
117
140
  transport: 'streamable-http',
@@ -119,9 +142,10 @@ async function startHttp() {
119
142
  });
120
143
  });
121
144
  const config = getConfig();
145
+ const mode = config?.url ? `remote: ${config.url}` : config?.dbPath ? `local: ${config.dbPath}` : '(not configured yet)';
122
146
  app.listen(port, () => {
123
147
  console.log(`SQLite MCP Server (HTTP) listening on port ${port}`);
124
- console.log(`Database: ${config ? config.dbPath : '(not configured yet)'}`);
148
+ console.log(`Database: ${mode}`);
125
149
  console.log(`Tools available: ${TOOLS.length}`);
126
150
  console.log(`MCP endpoint: http://localhost:${port}/mcp`);
127
151
  });
@@ -148,9 +172,16 @@ async function main() {
148
172
  await startStdio();
149
173
  }
150
174
  }
175
+ /**
176
+ * Smithery default export
177
+ */
151
178
  export default function createSmitheryServer(opts) {
152
179
  if (opts?.config?.SQLITE_DB_PATH)
153
180
  process.env.SQLITE_DB_PATH = opts.config.SQLITE_DB_PATH;
181
+ if (opts?.config?.SQLITE_DB_URL)
182
+ process.env.SQLITE_DB_URL = opts.config.SQLITE_DB_URL;
183
+ if (opts?.config?.SQLITE_AUTH_TOKEN)
184
+ process.env.SQLITE_AUTH_TOKEN = opts.config.SQLITE_AUTH_TOKEN;
154
185
  if (opts?.config?.SQLITE_TIMEOUT)
155
186
  process.env.SQLITE_TIMEOUT = String(opts.config.SQLITE_TIMEOUT);
156
187
  const config = getConfig();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * LibSQL Client (Remote)
3
+ * Wraps @libsql/client for remote SQLite databases (Turso, libSQL server)
4
+ * Implements the same SqliteClientInterface as SqliteClient
5
+ */
6
+ import type { LibSqlConfig, SqliteClientInterface, ColumnInfo, IndexInfo, ForeignKeyInfo, TableInfo, DatabaseInfo, ColumnDefinition, QueryResult, ExecuteResult } from './types.js';
7
+ export declare class LibSqlClient implements SqliteClientInterface {
8
+ private client;
9
+ private config;
10
+ constructor(config: LibSqlConfig);
11
+ query(sql: string, params?: unknown[]): Promise<QueryResult>;
12
+ execute(sql: string, params?: unknown[]): Promise<ExecuteResult>;
13
+ runScript(sql: string): Promise<{
14
+ statementsRun: number;
15
+ }>;
16
+ listTables(): Promise<TableInfo[]>;
17
+ describeTable(table: string): Promise<{
18
+ columns: ColumnInfo[];
19
+ sql: string;
20
+ }>;
21
+ listIndexes(table: string): Promise<IndexInfo[]>;
22
+ listForeignKeys(table: string): Promise<ForeignKeyInfo[]>;
23
+ createTable(table: string, columns: ColumnDefinition[], ifNotExists?: boolean): Promise<void>;
24
+ alterTable(table: string, action: string, params: Record<string, unknown>): Promise<void>;
25
+ dropTable(table: string, ifExists?: boolean): Promise<void>;
26
+ createIndex(table: string, columns: string[], indexName?: string, unique?: boolean, ifNotExists?: boolean): Promise<void>;
27
+ dropIndex(indexName: string, ifExists?: boolean): Promise<void>;
28
+ getInfo(): Promise<DatabaseInfo>;
29
+ vacuum(): Promise<{
30
+ sizeBefore: number;
31
+ sizeAfter: number;
32
+ }>;
33
+ integrityCheck(): Promise<{
34
+ ok: boolean;
35
+ results: string[];
36
+ }>;
37
+ close(): void;
38
+ }
39
+ //# sourceMappingURL=libsql-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"libsql-client.d.ts","sourceRoot":"","sources":["../src/libsql-client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,cAAc,EACd,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,qBAAa,YAAa,YAAW,qBAAqB;IACxD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAe;gBAEjB,MAAM,EAAE,YAAY;IAU1B,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IAgB5D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAWhE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAa1D,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAyBlC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAsB7E,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAchD,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAmBzD,WAAW,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,EAAE,EAC3B,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;IAkBV,UAAU,CACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,IAAI,CAAC;IAuBV,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3D,WAAW,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,OAAO,EAChB,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;IAWV,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAU/D,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC;IAkChC,MAAM,IAAI,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAa5D,cAAc,IAAI,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAYnE,KAAK,IAAI,IAAI;CAGd"}