db-mcp 3.0.1 → 4.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 +92 -75
- package/dist/.tsbuildinfo +1 -1
- package/dist/adapters/database-adapter.d.ts +2 -1
- package/dist/adapters/database-adapter.d.ts.map +1 -1
- package/dist/adapters/registration/resources.d.ts.map +1 -1
- package/dist/adapters/registration/tools.d.ts.map +1 -1
- package/dist/adapters/sqlite/prompts/analysis.d.ts.map +1 -1
- package/dist/adapters/sqlite/resources.d.ts +1 -1
- package/dist/adapters/sqlite/resources.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/admin.d.ts +29 -15
- package/dist/adapters/sqlite/schemas/admin.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/core.d.ts +2 -0
- package/dist/adapters/sqlite/schemas/core.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/fts.d.ts +4 -0
- package/dist/adapters/sqlite/schemas/fts.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/introspection.d.ts +20 -11
- package/dist/adapters/sqlite/schemas/introspection.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/spatialite.d.ts +1 -0
- package/dist/adapters/sqlite/schemas/spatialite.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/text.d.ts +36 -0
- package/dist/adapters/sqlite/schemas/text.d.ts.map +1 -1
- package/dist/adapters/sqlite/sqlite-adapter.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/index.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts +0 -4
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/queries.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/tables.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/fts.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/introspection/diagnostics/indexes.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-helpers/read.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-operations/crud.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-operations/query.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/helpers.d.ts +9 -0
- package/dist/adapters/sqlite/tools/text/helpers.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/index.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/search.d.ts +4 -0
- package/dist/adapters/sqlite/tools/text/search.d.ts.map +1 -1
- package/dist/adapters/sqlite/types.d.ts +4 -0
- package/dist/adapters/sqlite/types.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/native-sqlite-adapter.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/tools/spatialite/tools.d.ts.map +1 -1
- package/dist/audit/interceptor.d.ts.map +1 -1
- package/dist/audit/logger.d.ts +26 -25
- package/dist/audit/logger.d.ts.map +1 -1
- package/dist/{chunk-W5WQVNVX.js → chunk-EQF3WZHX.js} +10 -17
- package/dist/{chunk-37G4DLL6.js → chunk-NIC5Z2CA.js} +732 -138
- package/dist/chunk-R5M4WKDM.js +987 -0
- package/dist/{chunk-NV34JSQM.js → chunk-TGE7LFAR.js} +708 -996
- package/dist/{chunk-L552U3QS.js → chunk-Y57WFKAP.js} +227 -9
- package/dist/cli.js +103 -10
- package/dist/codemode/sandbox.d.ts.map +1 -1
- package/dist/constants/server-instructions.d.ts +1 -1
- package/dist/constants/server-instructions.d.ts.map +1 -1
- package/dist/filtering/tool-constants.d.ts +9 -9
- package/dist/{http-HWTUVFIA.js → http-2WGR3E5K.js} +13 -1
- package/dist/index.js +4 -4
- package/dist/observability/metrics.d.ts +36 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/system-db.d.ts +13 -0
- package/dist/observability/system-db.d.ts.map +1 -0
- package/dist/server/mcp-server.d.ts +3 -0
- package/dist/server/mcp-server.d.ts.map +1 -1
- package/dist/server/registration/admin-tools.d.ts +6 -0
- package/dist/server/registration/admin-tools.d.ts.map +1 -0
- package/dist/server/registration/audit-tools.d.ts +4 -0
- package/dist/server/registration/audit-tools.d.ts.map +1 -1
- package/dist/server/registration/help-resources.d.ts.map +1 -1
- package/dist/server/registration/index.d.ts +3 -1
- package/dist/server/registration/index.d.ts.map +1 -1
- package/dist/server/registration/observability-resources.d.ts +11 -0
- package/dist/server/registration/observability-resources.d.ts.map +1 -0
- package/dist/server/subscription-manager.d.ts +35 -0
- package/dist/server/subscription-manager.d.ts.map +1 -0
- package/dist/{sqlite-TB56Z7G3.js → sqlite-D4WCNPU4.js} +8 -5
- package/dist/{sqlite-native-IF75BB3O.js → sqlite-native-DLVS2T52.js} +159 -34
- package/dist/transports/http/sessions/legacy-sse.d.ts.map +1 -1
- package/dist/transports/http/sessions/stateful.d.ts.map +1 -1
- package/dist/transports/http/transport.d.ts.map +1 -1
- package/dist/transports/http/types.d.ts +2 -0
- package/dist/transports/http/types.d.ts.map +1 -1
- package/dist/types/server.d.ts +2 -0
- package/dist/types/server.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/logger/types.d.ts +1 -1
- package/dist/utils/logger/types.d.ts.map +1 -1
- package/dist/utils/tokens.d.ts +15 -0
- package/dist/utils/tokens.d.ts.map +1 -0
- package/package.json +10 -7
- package/dist/chunk-E5IESRTK.js +0 -489
- package/dist/utils/insights-manager.d.ts +0 -39
- package/dist/utils/insights-manager.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/observability/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;CACf;AA+ED,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,SAAS,CAAqC;IACtD,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,UAAU,CAA+C;IAEjE,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAMrC,OAAO,CAAC,cAAc;IAsCtB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,SAAS;IAiCjB,KAAK,IAAI,IAAI;IAQb,cAAc,CACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,OAAO,EAChB,MAAM,SAAI,GACT,IAAI;IASP,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IASrC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAkBrC,YAAY,IAAI,MAAM;CAwCvB;AAGD,eAAO,MAAM,OAAO,iBAAwB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Database } from "better-sqlite3";
|
|
2
|
+
export interface SystemDbConfig {
|
|
3
|
+
dbPath: string;
|
|
4
|
+
}
|
|
5
|
+
export declare class SystemDb {
|
|
6
|
+
private db;
|
|
7
|
+
private readonly config;
|
|
8
|
+
constructor(config: SystemDbConfig);
|
|
9
|
+
init(): Promise<void>;
|
|
10
|
+
getDb(): Database;
|
|
11
|
+
close(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=system-db.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"system-db.d.ts","sourceRoot":"","sources":["../../src/observability/system-db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,QAAQ;IACnB,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,EAAE,cAAc;IAI5B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAmF3B,KAAK,IAAI,QAAQ;IAOjB,KAAK,IAAI,IAAI;CAMd"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { McpServerConfig, DatabaseConfig } from "../types/index.js";
|
|
8
8
|
import type { DatabaseAdapter } from "../adapters/database-adapter.js";
|
|
9
|
+
import { SubscriptionManager } from "./subscription-manager.js";
|
|
9
10
|
/**
|
|
10
11
|
* Main db-mcp server class
|
|
11
12
|
*
|
|
@@ -18,8 +19,10 @@ export declare class DbMcpServer {
|
|
|
18
19
|
private config;
|
|
19
20
|
private auditLogger;
|
|
20
21
|
private backupManager;
|
|
22
|
+
private systemDb;
|
|
21
23
|
private auditInterceptor;
|
|
22
24
|
private auditInitPromise;
|
|
25
|
+
readonly subscriptionManager: SubscriptionManager;
|
|
23
26
|
constructor(config: McpServerConfig);
|
|
24
27
|
/**
|
|
25
28
|
* Register a database adapter
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAqCvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AA+ChE;;;;GAIG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,gBAAgB,CAA8B;IACtD,SAAgB,mBAAmB,EAAE,mBAAmB,CAAC;gBAE7C,MAAM,EAAE,eAAe;IAkKnC;;OAEG;IACG,eAAe,CACnB,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IA0DhB;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI1D;;OAEG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAI3C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB5B;;OAEG;YACW,UAAU;IAiBxB;;OAEG;YACW,SAAS;IAyDvB;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAwC/B;;;OAGG;YACW,eAAe;CA8C9B;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW,CAEjE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,eAAe,CAKnD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-tools.d.ts","sourceRoot":"","sources":["../../../src/server/registration/admin-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWzE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+K1D"}
|
|
@@ -10,4 +10,8 @@ export declare function registerAuditResource(server: McpServer, auditLogger: Au
|
|
|
10
10
|
* Register audit backup tools for snapshot management.
|
|
11
11
|
*/
|
|
12
12
|
export declare function registerAuditBackupTools(server: McpServer, backupManager: BackupManager | null, adaptersMap: Map<string, DatabaseAdapter>): void;
|
|
13
|
+
/**
|
|
14
|
+
* Register the sqlite_audit_search tool.
|
|
15
|
+
*/
|
|
16
|
+
export declare function registerAuditSearchTool(server: McpServer, auditLogger: AuditLogger | null): void;
|
|
13
17
|
//# sourceMappingURL=audit-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit-tools.d.ts","sourceRoot":"","sources":["../../../src/server/registration/audit-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"audit-tools.d.ts","sourceRoot":"","sources":["../../../src/server/registration/audit-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAyDzD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,IAAI,CAuCN;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,GAAG,IAAI,EACnC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GACxC,IAAI,CAunBN;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,WAAW,GAAG,IAAI,GAC9B,IAAI,CA8EN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help-resources.d.ts","sourceRoot":"","sources":["../../../src/server/registration/help-resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"help-resources.d.ts","sourceRoot":"","sources":["../../../src/server/registration/help-resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,sBAAsB,CAAC;AAMxE;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,gBAAgB,GAC3B,IAAI,CAuFN"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export * from "./built-in-tools.js";
|
|
2
2
|
export * from "./help-resources.js";
|
|
3
|
-
export
|
|
3
|
+
export { registerAuditResource, registerAuditBackupTools, registerAuditSearchTool, } from "./audit-tools.js";
|
|
4
|
+
export * from "./observability-resources.js";
|
|
5
|
+
export * from "./admin-tools.js";
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/registration/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* db-mcp — Observability Resources
|
|
3
|
+
*
|
|
4
|
+
* Registers the sqlite://metrics resource.
|
|
5
|
+
*/
|
|
6
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
7
|
+
/**
|
|
8
|
+
* Register the metrics resource
|
|
9
|
+
*/
|
|
10
|
+
export declare function registerObservabilityResources(server: McpServer): void;
|
|
11
|
+
//# sourceMappingURL=observability-resources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability-resources.d.ts","sourceRoot":"","sources":["../../../src/server/registration/observability-resources.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsBtE"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
+
/**
|
|
3
|
+
* Manages MCP resource subscriptions for the server.
|
|
4
|
+
* Tracks which transport sessions are subscribed to which resource URIs.
|
|
5
|
+
*/
|
|
6
|
+
export declare class SubscriptionManager {
|
|
7
|
+
private readonly server;
|
|
8
|
+
private subscriptions;
|
|
9
|
+
constructor(server: McpServer);
|
|
10
|
+
/**
|
|
11
|
+
* Subscribe a session to a resource URI.
|
|
12
|
+
*/
|
|
13
|
+
subscribe(uri: string, sessionId?: string): void;
|
|
14
|
+
/**
|
|
15
|
+
* Unsubscribe a session from a resource URI.
|
|
16
|
+
*/
|
|
17
|
+
unsubscribe(uri: string, sessionId?: string): void;
|
|
18
|
+
/**
|
|
19
|
+
* Unsubscribe a session from all resources (useful on transport disconnect).
|
|
20
|
+
*/
|
|
21
|
+
unsubscribeSession(sessionId: string): void;
|
|
22
|
+
/**
|
|
23
|
+
* Notifies all subscribed clients that a resource has changed.
|
|
24
|
+
*/
|
|
25
|
+
notifyResourceUpdated(uri: string): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Notifies subscribers of schema-related resources (schema, tables, and specific tables).
|
|
28
|
+
*/
|
|
29
|
+
notifySchemaSubscribers(): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Check if there are any active subscribers for a specific URI.
|
|
32
|
+
*/
|
|
33
|
+
hasSubscribers(uri: string): boolean;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=subscription-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscription-manager.d.ts","sourceRoot":"","sources":["../../src/server/subscription-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IAGnC,OAAO,CAAC,aAAa,CAAkC;gBAE3C,MAAM,EAAE,SAAS;IAI7B;;OAEG;IACI,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAsBvD;;OAEG;IACI,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;IAkBzD;;OAEG;IACI,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAmBlD;;OAEG;IACU,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9D;;OAEG;IACU,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBrD;;OAEG;IACI,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAI5C"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { getCoreTools, getJsonHelperTools, getJsonOperationTools, getTextTools, getStatsTools, getVirtualTools, getVectorTools, getGeoTools, getAdminTools, getIntrospectionTools, getMigrationTools, getCodeModeTools, executeRead, executeWrite, isDDL, executeGeneral, getResourceDefinitions, getPromptDefinitions, applyCommonPragmas, autoEnableWal, detectAndSetJsonbSupport, SchemaManager } from './chunk-
|
|
2
|
-
export { getCoreTools } from './chunk-
|
|
3
|
-
import { DatabaseAdapter } from './chunk-
|
|
4
|
-
import { getToolGroupIcon, VERSION } from './chunk-
|
|
5
|
-
import { createModuleLogger, ConnectionError, ConfigurationError, ERROR_CODES, DbMcpError } from './chunk-
|
|
1
|
+
import { getCoreTools, getJsonHelperTools, getJsonOperationTools, getTextTools, getStatsTools, getVirtualTools, getVectorTools, getGeoTools, getAdminTools, getIntrospectionTools, getMigrationTools, getCodeModeTools, executeRead, executeWrite, isDDL, executeGeneral, getResourceDefinitions, getPromptDefinitions, applyCommonPragmas, autoEnableWal, detectAndSetJsonbSupport, SchemaManager } from './chunk-TGE7LFAR.js';
|
|
2
|
+
export { getCoreTools } from './chunk-TGE7LFAR.js';
|
|
3
|
+
import { DatabaseAdapter } from './chunk-EQF3WZHX.js';
|
|
4
|
+
import { getToolGroupIcon, VERSION } from './chunk-R5M4WKDM.js';
|
|
5
|
+
import { createModuleLogger, ConnectionError, ConfigurationError, ERROR_CODES, DbMcpError } from './chunk-Y57WFKAP.js';
|
|
6
6
|
import initSqlJs from 'sql.js';
|
|
7
7
|
|
|
8
8
|
// src/adapters/sqlite/tools/index.ts
|
|
@@ -340,6 +340,7 @@ var SqliteAdapter = class extends DatabaseAdapter {
|
|
|
340
340
|
} else {
|
|
341
341
|
this.clearSchemaCache();
|
|
342
342
|
}
|
|
343
|
+
this.emit("schemaChanged");
|
|
343
344
|
}
|
|
344
345
|
return result;
|
|
345
346
|
}
|
|
@@ -357,6 +358,7 @@ var SqliteAdapter = class extends DatabaseAdapter {
|
|
|
357
358
|
} else {
|
|
358
359
|
this.clearSchemaCache();
|
|
359
360
|
}
|
|
361
|
+
this.emit("schemaChanged");
|
|
360
362
|
}
|
|
361
363
|
return result;
|
|
362
364
|
}
|
|
@@ -367,6 +369,7 @@ var SqliteAdapter = class extends DatabaseAdapter {
|
|
|
367
369
|
this.ensureConnected();
|
|
368
370
|
this.ensureDb().run(sql);
|
|
369
371
|
this.clearSchemaCache();
|
|
372
|
+
this.emit("schemaChanged");
|
|
370
373
|
return Promise.resolve();
|
|
371
374
|
}
|
|
372
375
|
/**
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { RowRecordSchema, WhereConditionSchema,
|
|
2
|
-
import { DatabaseAdapter } from './chunk-
|
|
3
|
-
import { ErrorResponseFields, write, readOnly, VERSION, admin, writeFs, getToolGroupIcon, idempotent } from './chunk-
|
|
4
|
-
import { logger, formatHandlerError, ValidationError, ConfigurationError, ERROR_CODES, ConnectionError, DbMcpError, ResourceNotFoundError, ExtensionNotAvailableError } from './chunk-
|
|
5
|
-
import Database from 'better-sqlite3';
|
|
1
|
+
import { RowRecordSchema, WhereConditionSchema, resolveAliases, autoEnableWal, detectAndSetJsonbSupport, SchemaManager, applyCommonPragmas, isDDL, getResourceDefinitions, getPromptDefinitions, normalizeSqliteParams, translateSqliteError, getCoreTools, getJsonOperationTools, getJsonHelperTools, getTextTools, getStatsTools, getVirtualTools, getVectorTools, getGeoTools, getAdminTools, getIntrospectionTools, getMigrationTools, getCodeModeTools, validateTableExists, sanitizeFtsQuery, FtsHeadlineSchema } from './chunk-TGE7LFAR.js';
|
|
2
|
+
import { DatabaseAdapter } from './chunk-EQF3WZHX.js';
|
|
3
|
+
import { ErrorResponseFields, write, readOnly, sanitizeIdentifier, buildWhereClause, VERSION, validateIdentifier, admin, writeFs, getToolGroupIcon, idempotent } from './chunk-R5M4WKDM.js';
|
|
4
|
+
import { logger, formatHandlerError, ValidationError, ConfigurationError, ERROR_CODES, ConnectionError, DbMcpError, ResourceNotFoundError, ExtensionNotAvailableError } from './chunk-Y57WFKAP.js';
|
|
6
5
|
import { z } from 'zod';
|
|
7
6
|
import { createRequire } from 'module';
|
|
8
7
|
import { fileURLToPath } from 'url';
|
|
@@ -22,7 +21,9 @@ var FtsResultSchema = z.object({
|
|
|
22
21
|
var FtsSearchOutputSchema = z.object({
|
|
23
22
|
success: z.boolean(),
|
|
24
23
|
rowCount: z.number().optional(),
|
|
25
|
-
results: z.array(FtsResultSchema).optional()
|
|
24
|
+
results: z.array(FtsResultSchema).optional(),
|
|
25
|
+
nextCursor: z.string().optional(),
|
|
26
|
+
facets: z.record(z.string(), z.number()).optional()
|
|
26
27
|
}).extend(ErrorResponseFields.shape);
|
|
27
28
|
var FtsRebuildOutputSchema = z.object({
|
|
28
29
|
success: z.boolean(),
|
|
@@ -65,7 +66,11 @@ var FtsSearchSchema = z.object({
|
|
|
65
66
|
return val;
|
|
66
67
|
}, z.number().optional().default(100)),
|
|
67
68
|
highlight: z.boolean().optional().default(false).describe("Include highlighted snippets"),
|
|
68
|
-
includeRowData: z.boolean().optional().default(true).describe("Include full row data in results")
|
|
69
|
+
includeRowData: z.boolean().optional().default(true).describe("Include full row data in results"),
|
|
70
|
+
cursor: z.string().optional().describe("Opaque cursor for pagination"),
|
|
71
|
+
includeFacets: z.boolean().optional().default(false).describe(
|
|
72
|
+
"Return match counts per column (distribution by matched column)"
|
|
73
|
+
)
|
|
69
74
|
});
|
|
70
75
|
var FtsRebuildSchema = z.object({
|
|
71
76
|
table: z.string().describe("FTS table name to rebuild")
|
|
@@ -224,20 +229,46 @@ function createFtsSearchTool(adapter) {
|
|
|
224
229
|
}
|
|
225
230
|
sanitizeIdentifier(input.table);
|
|
226
231
|
await validateTableExists(adapter, input.table);
|
|
232
|
+
let offset = 0;
|
|
233
|
+
if (input.cursor) {
|
|
234
|
+
try {
|
|
235
|
+
const cursorData = JSON.parse(
|
|
236
|
+
Buffer.from(input.cursor, "base64").toString("utf8")
|
|
237
|
+
);
|
|
238
|
+
if (typeof cursorData["offset"] === "number")
|
|
239
|
+
offset = cursorData["offset"];
|
|
240
|
+
} catch {
|
|
241
|
+
}
|
|
242
|
+
}
|
|
227
243
|
let selectClause = input.includeRowData ? "*" : "rowid";
|
|
228
244
|
if (input.highlight) {
|
|
229
245
|
selectClause += `, highlight("${input.table}", 0, '<b>', '</b>') as snippet`;
|
|
230
246
|
}
|
|
231
247
|
if (input.query === "*" || input.query.trim() === "") {
|
|
232
|
-
const sql2 = `SELECT ${selectClause}, NULL as rank FROM "${input.table}" ORDER BY rowid LIMIT ${input.limit}`;
|
|
248
|
+
const sql2 = `SELECT ${selectClause}, NULL as rank FROM "${input.table}" ORDER BY rowid LIMIT ${input.limit} OFFSET ${offset}`;
|
|
233
249
|
const result2 = await adapter.executeReadQuery(sql2, queryParams);
|
|
250
|
+
let nextCursor2;
|
|
251
|
+
if (result2.rows?.length === input.limit) {
|
|
252
|
+
nextCursor2 = Buffer.from(
|
|
253
|
+
JSON.stringify({ offset: offset + input.limit })
|
|
254
|
+
).toString("base64");
|
|
255
|
+
}
|
|
234
256
|
return {
|
|
235
257
|
success: true,
|
|
236
258
|
rowCount: result2.rows?.length ?? 0,
|
|
237
|
-
results: result2.rows
|
|
259
|
+
results: result2.rows,
|
|
260
|
+
nextCursor: nextCursor2
|
|
238
261
|
};
|
|
239
262
|
}
|
|
240
|
-
const
|
|
263
|
+
const sanitizedQuery = sanitizeFtsQuery(input.query);
|
|
264
|
+
if (!sanitizedQuery) {
|
|
265
|
+
return {
|
|
266
|
+
success: true,
|
|
267
|
+
rowCount: 0,
|
|
268
|
+
results: []
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
const queryEscaped = sanitizedQuery.replace(/'/g, "''");
|
|
241
272
|
let matchExpr = `"${input.table}" MATCH '${queryEscaped}'`;
|
|
242
273
|
if (input.columns && input.columns.length > 0) {
|
|
243
274
|
for (const col of input.columns) {
|
|
@@ -246,12 +277,58 @@ function createFtsSearchTool(adapter) {
|
|
|
246
277
|
const colFilter = input.columns.map((c) => `${c}:${queryEscaped}`).join(" OR ");
|
|
247
278
|
matchExpr = `"${input.table}" MATCH '${colFilter}'`;
|
|
248
279
|
}
|
|
249
|
-
|
|
280
|
+
let columnsToFacet = [];
|
|
281
|
+
if (input.includeFacets) {
|
|
282
|
+
const colResult = await adapter.executeReadQuery(
|
|
283
|
+
`PRAGMA table_info("${input.table}")`,
|
|
284
|
+
[]
|
|
285
|
+
);
|
|
286
|
+
const allCols = (colResult.rows ?? []).map((r, i) => ({
|
|
287
|
+
name: String(r["name"]),
|
|
288
|
+
index: i
|
|
289
|
+
}));
|
|
290
|
+
if (input.columns && input.columns.length > 0) {
|
|
291
|
+
columnsToFacet = allCols.filter(
|
|
292
|
+
(c) => input.columns?.includes(c.name)
|
|
293
|
+
);
|
|
294
|
+
} else {
|
|
295
|
+
columnsToFacet = allCols.filter(
|
|
296
|
+
(c) => c.name !== input.table && c.name !== "rank"
|
|
297
|
+
);
|
|
298
|
+
}
|
|
299
|
+
for (const col of columnsToFacet) {
|
|
300
|
+
selectClause += `, highlight("${input.table}", ${col.index}, '', '') as _facet_${col.index}`;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
const sql = `SELECT ${selectClause}, rank FROM "${input.table}" WHERE ${matchExpr} ORDER BY rank LIMIT ${input.limit} OFFSET ${offset}`;
|
|
250
304
|
const result = await adapter.executeReadQuery(sql, queryParams);
|
|
305
|
+
let nextCursor;
|
|
306
|
+
if (result.rows?.length === input.limit) {
|
|
307
|
+
nextCursor = Buffer.from(
|
|
308
|
+
JSON.stringify({ offset: offset + input.limit })
|
|
309
|
+
).toString("base64");
|
|
310
|
+
}
|
|
311
|
+
const facets = {};
|
|
312
|
+
if (input.includeFacets && result.rows) {
|
|
313
|
+
for (const col of columnsToFacet) {
|
|
314
|
+
facets[col.name] = 0;
|
|
315
|
+
}
|
|
316
|
+
for (const row of result.rows) {
|
|
317
|
+
for (const col of columnsToFacet) {
|
|
318
|
+
const val = row[`_facet_${col.index}`];
|
|
319
|
+
if (typeof val === "string" && val.includes("")) {
|
|
320
|
+
facets[col.name] = (facets[col.name] ?? 0) + 1;
|
|
321
|
+
}
|
|
322
|
+
Reflect.deleteProperty(row, `_facet_${col.index}`);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
}
|
|
251
326
|
return {
|
|
252
327
|
success: true,
|
|
253
328
|
rowCount: result.rows?.length ?? 0,
|
|
254
|
-
results: result.rows
|
|
329
|
+
results: result.rows,
|
|
330
|
+
nextCursor,
|
|
331
|
+
...input.includeFacets ? { facets } : {}
|
|
255
332
|
};
|
|
256
333
|
} catch (error) {
|
|
257
334
|
if (isFts5UnavailableError(error)) {
|
|
@@ -315,7 +392,15 @@ function createFtsMatchInfoTool(adapter) {
|
|
|
315
392
|
}
|
|
316
393
|
sanitizeIdentifier(input.table);
|
|
317
394
|
await validateTableExists(adapter, input.table);
|
|
318
|
-
const
|
|
395
|
+
const sanitizedQuery = sanitizeFtsQuery(input.query);
|
|
396
|
+
if (!sanitizedQuery) {
|
|
397
|
+
return {
|
|
398
|
+
success: true,
|
|
399
|
+
rowCount: 0,
|
|
400
|
+
results: []
|
|
401
|
+
};
|
|
402
|
+
}
|
|
403
|
+
const queryEscaped = sanitizedQuery.replace(/'/g, "''");
|
|
319
404
|
let rankExpr;
|
|
320
405
|
if (input.format === "bm25") {
|
|
321
406
|
rankExpr = `bm25("${input.table}")`;
|
|
@@ -357,7 +442,15 @@ function createFtsHeadlineTool(adapter) {
|
|
|
357
442
|
}
|
|
358
443
|
sanitizeIdentifier(input.table);
|
|
359
444
|
await validateTableExists(adapter, input.table);
|
|
360
|
-
const
|
|
445
|
+
const sanitizedQuery = sanitizeFtsQuery(input.query);
|
|
446
|
+
if (!sanitizedQuery && input.query !== "*" && input.query.trim() !== "") {
|
|
447
|
+
return {
|
|
448
|
+
success: true,
|
|
449
|
+
rowCount: 0,
|
|
450
|
+
results: []
|
|
451
|
+
};
|
|
452
|
+
}
|
|
453
|
+
const queryEscaped = sanitizedQuery.replace(/'/g, "''");
|
|
361
454
|
let columnIndex = 0;
|
|
362
455
|
if (input.column) {
|
|
363
456
|
const colResult = await adapter.executeReadQuery(
|
|
@@ -515,7 +608,8 @@ var SpatialiteLoadOutputSchema = z.object({
|
|
|
515
608
|
message: z.string().optional(),
|
|
516
609
|
alreadyLoaded: z.boolean().optional(),
|
|
517
610
|
extensionPath: z.string().optional(),
|
|
518
|
-
searchedPaths: z.array(z.string()).optional()
|
|
611
|
+
searchedPaths: z.array(z.string()).optional(),
|
|
612
|
+
version: z.string().optional()
|
|
519
613
|
}).extend(ErrorResponseFields.shape);
|
|
520
614
|
var SpatialiteCreateTableOutputSchema = z.object({
|
|
521
615
|
success: z.boolean(),
|
|
@@ -1755,34 +1849,44 @@ function createLoadSpatialiteTool(adapter) {
|
|
|
1755
1849
|
outputSchema: SpatialiteLoadOutputSchema,
|
|
1756
1850
|
requiredScopes: ["admin"],
|
|
1757
1851
|
annotations: admin("SpatiaLite Load"),
|
|
1758
|
-
handler: (_params, _context) => {
|
|
1852
|
+
handler: async (_params, _context) => {
|
|
1759
1853
|
try {
|
|
1760
1854
|
const input = LoadSpatialiteSchema.parse(_params);
|
|
1761
1855
|
if (!input.forceReload && isSpatialiteLoaded(adapter)) {
|
|
1762
|
-
|
|
1856
|
+
const versionResult = await adapter.executeReadQuery(
|
|
1857
|
+
"SELECT spatialite_version() as v"
|
|
1858
|
+
);
|
|
1859
|
+
const version = versionResult.rows?.[0]?.["v"];
|
|
1860
|
+
return {
|
|
1763
1861
|
success: true,
|
|
1764
1862
|
message: "SpatiaLite already loaded",
|
|
1765
|
-
alreadyLoaded: true
|
|
1766
|
-
|
|
1863
|
+
alreadyLoaded: true,
|
|
1864
|
+
version
|
|
1865
|
+
};
|
|
1767
1866
|
}
|
|
1768
1867
|
const result = tryLoadSpatialite(adapter);
|
|
1769
1868
|
if (result.success) {
|
|
1770
|
-
|
|
1869
|
+
const versionResult = await adapter.executeReadQuery(
|
|
1870
|
+
"SELECT spatialite_version() as v"
|
|
1871
|
+
);
|
|
1872
|
+
const version = versionResult.rows?.[0]?.["v"];
|
|
1873
|
+
return {
|
|
1771
1874
|
success: true,
|
|
1772
1875
|
message: "SpatiaLite loaded successfully",
|
|
1773
|
-
extensionPath: result.path
|
|
1774
|
-
|
|
1876
|
+
extensionPath: result.path,
|
|
1877
|
+
version
|
|
1878
|
+
};
|
|
1775
1879
|
}
|
|
1776
|
-
return
|
|
1880
|
+
return {
|
|
1777
1881
|
success: false,
|
|
1778
1882
|
error: result.error,
|
|
1779
1883
|
code: "SPATIALITE_LOAD_FAILED",
|
|
1780
1884
|
category: "internal",
|
|
1781
1885
|
recoverable: false,
|
|
1782
1886
|
searchedPaths: SPATIALITE_PATHS
|
|
1783
|
-
}
|
|
1887
|
+
};
|
|
1784
1888
|
} catch (error) {
|
|
1785
|
-
return
|
|
1889
|
+
return formatHandlerError(error);
|
|
1786
1890
|
}
|
|
1787
1891
|
}
|
|
1788
1892
|
};
|
|
@@ -2724,7 +2828,7 @@ var NativeSqliteAdapter = class extends DatabaseAdapter {
|
|
|
2724
2828
|
/**
|
|
2725
2829
|
* Connect to a SQLite database using better-sqlite3
|
|
2726
2830
|
*/
|
|
2727
|
-
connect(config) {
|
|
2831
|
+
async connect(config) {
|
|
2728
2832
|
if (config.type !== "sqlite") {
|
|
2729
2833
|
throw new ConfigurationError(
|
|
2730
2834
|
`Invalid database type: expected 'sqlite', got '${config.type}'`,
|
|
@@ -2735,13 +2839,33 @@ var NativeSqliteAdapter = class extends DatabaseAdapter {
|
|
|
2735
2839
|
this.config = sqliteConfig;
|
|
2736
2840
|
try {
|
|
2737
2841
|
const filePath = sqliteConfig.filePath ?? sqliteConfig.connectionString ?? ":memory:";
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
|
|
2842
|
+
if (sqliteConfig.options?.encryptionKey) {
|
|
2843
|
+
const DatabaseDriver = (await import('better-sqlite3-multiple-ciphers')).default;
|
|
2844
|
+
this.db = new DatabaseDriver(filePath, {
|
|
2845
|
+
readonly: false,
|
|
2846
|
+
fileMustExist: false
|
|
2847
|
+
});
|
|
2848
|
+
const escapedKey = sqliteConfig.options.encryptionKey.replace(
|
|
2849
|
+
/"/g,
|
|
2850
|
+
'""'
|
|
2851
|
+
);
|
|
2852
|
+
this.db.pragma(`key = "${escapedKey}"`);
|
|
2853
|
+
log.info(
|
|
2854
|
+
`Connected to SQLite database (native encrypted): ${filePath}`,
|
|
2855
|
+
{
|
|
2856
|
+
code: "SQLITE_CONNECT_ENCRYPTED"
|
|
2857
|
+
}
|
|
2858
|
+
);
|
|
2859
|
+
} else {
|
|
2860
|
+
const DatabaseDriver = (await import('better-sqlite3')).default;
|
|
2861
|
+
this.db = new DatabaseDriver(filePath, {
|
|
2862
|
+
readonly: false,
|
|
2863
|
+
fileMustExist: false
|
|
2864
|
+
});
|
|
2865
|
+
log.info(`Connected to SQLite database (native): ${filePath}`, {
|
|
2866
|
+
code: "SQLITE_CONNECT"
|
|
2867
|
+
});
|
|
2868
|
+
}
|
|
2745
2869
|
this.applyOptions(sqliteConfig.options);
|
|
2746
2870
|
const db = this.db;
|
|
2747
2871
|
autoEnableWal(
|
|
@@ -2780,7 +2904,6 @@ var NativeSqliteAdapter = class extends DatabaseAdapter {
|
|
|
2780
2904
|
}
|
|
2781
2905
|
);
|
|
2782
2906
|
}
|
|
2783
|
-
return Promise.resolve();
|
|
2784
2907
|
}
|
|
2785
2908
|
/**
|
|
2786
2909
|
* Apply SQLite PRAGMA options and load extensions
|
|
@@ -2870,6 +2993,7 @@ var NativeSqliteAdapter = class extends DatabaseAdapter {
|
|
|
2870
2993
|
const result = nativeExecuteWrite(this.ensureDb(), sql, params, log);
|
|
2871
2994
|
if (isDDL(sql)) {
|
|
2872
2995
|
this.clearSchemaCache();
|
|
2996
|
+
this.emit("schemaChanged");
|
|
2873
2997
|
}
|
|
2874
2998
|
return result;
|
|
2875
2999
|
}
|
|
@@ -2896,6 +3020,7 @@ var NativeSqliteAdapter = class extends DatabaseAdapter {
|
|
|
2896
3020
|
this.ensureConnected();
|
|
2897
3021
|
this.ensureDb().exec(sql);
|
|
2898
3022
|
this.clearSchemaCache();
|
|
3023
|
+
this.emit("schemaChanged");
|
|
2899
3024
|
return Promise.resolve();
|
|
2900
3025
|
}
|
|
2901
3026
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"legacy-sse.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/legacy-sse.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAStD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"legacy-sse.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/legacy-sse.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAStD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAiLvE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateful.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/stateful.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAUtD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAOT;AAYD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"stateful.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/stateful.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAUtD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAOT;AAYD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAuRtE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/transports/http/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,OAAgC,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE,OAAO,EAKL,KAAK,mBAAmB,EAEzB,MAAM,YAAY,CAAC;AAgBpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/transports/http/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,OAAgC,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE,OAAO,EAKL,KAAK,mBAAmB,EAEzB,MAAM,YAAY,CAAC;AAgBpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAW/E;;;;;;;;;GASG;AACH,qBAAa,aAAa;IACxB,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;gBAE/B,MAAM,EAAE,mBAAmB;IAsBvC;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA2LlD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgD5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuE3B;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI;IAIhC;;OAEG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;OAEG;IACH,iBAAiB,IAAI,mBAAmB,GAAG,IAAI;CAGhD;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,mBAAmB,GAC1B,aAAa,CAEf"}
|
|
@@ -40,6 +40,8 @@ export interface HttpTransportConfig {
|
|
|
40
40
|
stateless?: boolean;
|
|
41
41
|
/** Explicitly bypass auth requirement */
|
|
42
42
|
noAuthEnforcement?: boolean;
|
|
43
|
+
/** Enable Prometheus metrics export at /metrics */
|
|
44
|
+
metricsExport?: "prometheus";
|
|
43
45
|
/** OAuth 2.1 configuration */
|
|
44
46
|
oauth: {
|
|
45
47
|
/** Enable OAuth authentication */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/transports/http/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/transports/http/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types/server.d.ts
CHANGED
|
@@ -44,5 +44,7 @@ export interface McpServerConfig {
|
|
|
44
44
|
audit?: AuditConfig;
|
|
45
45
|
/** Explicitly bypass auth requirement for HTTP transport */
|
|
46
46
|
noAuthEnforcement?: boolean;
|
|
47
|
+
/** Enable Prometheus metrics export at /metrics */
|
|
48
|
+
metricsExport?: "prometheus";
|
|
47
49
|
}
|
|
48
50
|
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/types/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IAEb,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAEhB,8BAA8B;IAC9B,SAAS,EAAE,aAAa,CAAC;IAEzB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,8BAA8B;IAC9B,SAAS,EAAE,cAAc,EAAE,CAAC;IAE5B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,kCAAkC;IAClC,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/types/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IAEb,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAEhB,8BAA8B;IAC9B,SAAS,EAAE,aAAa,CAAC;IAEzB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,8BAA8B;IAC9B,SAAS,EAAE,cAAc,EAAE,CAAC;IAE5B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,kCAAkC;IAClC,KAAK,CAAC,EAAE,WAAW,CAAC;IAEpB,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,mDAAmD;IACnD,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -6,4 +6,5 @@ export { UnsafeWhereClauseError, sanitizeWhereClause } from "./where-clause.js";
|
|
|
6
6
|
export { InvalidIdentifierError, validateIdentifier, sanitizeIdentifier, sanitizeTableName, sanitizeColumnRef, sanitizeIdentifiers, createColumnList, sanitizeIndexName, quoteIdentifier, needsQuoting, } from "./identifiers.js";
|
|
7
7
|
export { validateSameDirPath } from "./validate-path.js";
|
|
8
8
|
export { validateJsonPath, validateAggregateFunction, } from "./validate-json-path.js";
|
|
9
|
+
export { estimateTokens, type ContentType } from "./tokens.js";
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,MAAM,EACN,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,MAAM,EACN,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,SAAS,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -11,7 +11,7 @@ export type LogLevel = "debug" | "info" | "notice" | "warning" | "error" | "crit
|
|
|
11
11
|
/**
|
|
12
12
|
* Module identifiers for log categorization
|
|
13
13
|
*/
|
|
14
|
-
export type LogModule = "SERVER" | "ADAPTER" | "AUTH" | "TOOLS" | "RESOURCES" | "PROMPTS" | "TRANSPORT" | "QUERY" | "POOL" | "FILTER" | "SQLITE" | "NATIVE_SQLITE" | "HTTP" | "DB" | "CLI" | "CODEMODE" | "AUDIT";
|
|
14
|
+
export type LogModule = "SERVER" | "ADAPTER" | "AUTH" | "TOOLS" | "RESOURCES" | "PROMPTS" | "TRANSPORT" | "QUERY" | "POOL" | "FILTER" | "SQLITE" | "NATIVE_SQLITE" | "HTTP" | "DB" | "CLI" | "CODEMODE" | "AUDIT" | "METRICS" | "SYSTEM_DB";
|
|
15
15
|
/**
|
|
16
16
|
* Structured log context following MCP logging standards
|
|
17
17
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/logger/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,MAAM,GACN,QAAQ,GACR,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,SAAS,GACT,MAAM,GACN,OAAO,GACP,WAAW,GACX,SAAS,GACT,WAAW,GACX,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,eAAe,GACf,MAAM,GACN,IAAI,GACJ,KAAK,GACL,UAAU,GACV,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/logger/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,MAAM,GACN,QAAQ,GACR,SAAS,GACT,OAAO,GACP,UAAU,GACV,OAAO,GACP,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,SAAS,GACT,MAAM,GACN,OAAO,GACP,WAAW,GACX,SAAS,GACT,WAAW,GACX,OAAO,GACP,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,eAAe,GACf,MAAM,GACN,IAAI,GACJ,KAAK,GACL,UAAU,GACV,OAAO,GACP,SAAS,GACT,WAAW,CAAC;AAEhB;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,wBAAwB;IACxB,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,mDAAmD;IACnD,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;IAC1B,gCAAgC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* db-mcp - Token Estimation Utility
|
|
3
|
+
*/
|
|
4
|
+
export type ContentType = "json" | "sql" | "text";
|
|
5
|
+
/**
|
|
6
|
+
* Estimates the number of tokens in a given string based on its content type.
|
|
7
|
+
* Replaces the naive Math.ceil(length / 4) heuristic which significantly
|
|
8
|
+
* underestimates JSON and SQL payloads.
|
|
9
|
+
*
|
|
10
|
+
* @param text The string content to estimate tokens for
|
|
11
|
+
* @param contentType The type of content (json, sql, or text)
|
|
12
|
+
* @returns An estimated token count
|
|
13
|
+
*/
|
|
14
|
+
export declare function estimateTokens(text: string, contentType?: ContentType): number;
|
|
15
|
+
//# sourceMappingURL=tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/utils/tokens.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;AAElD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,WAAoB,GAChC,MAAM,CAcR"}
|