db-mcp 5.0.0 → 5.0.1
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.
|
@@ -3135,7 +3135,7 @@ var DbMcpServer = class {
|
|
|
3135
3135
|
* Start server with HTTP transport (Streamable HTTP with SSE support)
|
|
3136
3136
|
*/
|
|
3137
3137
|
async startHttp() {
|
|
3138
|
-
const { HttpTransport } = await import('./http-
|
|
3138
|
+
const { HttpTransport } = await import('./http-2XDGZF4F.js');
|
|
3139
3139
|
const oauthConfig = {
|
|
3140
3140
|
enabled: this.config.oauth?.enabled ?? false,
|
|
3141
3141
|
authorizationServerUrl: this.config.oauth?.authorizationServerUrl ?? "",
|
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { DEFAULT_CONFIG, createServer } from './chunk-
|
|
2
|
+
import { DEFAULT_CONFIG, createServer } from './chunk-WYBUO4FL.js';
|
|
3
3
|
import { parseAllowedIoRoots, VERSION } from './chunk-2TYICG7B.js';
|
|
4
4
|
import { logger } from './chunk-XLIYO3YA.js';
|
|
5
5
|
import fs from 'fs';
|
|
@@ -552,11 +552,11 @@ function setupStatefulEndpoints(state) {
|
|
|
552
552
|
release();
|
|
553
553
|
}
|
|
554
554
|
});
|
|
555
|
-
const
|
|
555
|
+
const activeSid2 = newTransport.sessionId;
|
|
556
556
|
try {
|
|
557
|
-
if (
|
|
558
|
-
const count = state.sessionLocks.get(
|
|
559
|
-
state.sessionLocks.set(
|
|
557
|
+
if (activeSid2) {
|
|
558
|
+
const count = state.sessionLocks.get(activeSid2) ?? 0;
|
|
559
|
+
state.sessionLocks.set(activeSid2, count + 1);
|
|
560
560
|
}
|
|
561
561
|
await newTransport.handleRequest(
|
|
562
562
|
asIncoming(req),
|
|
@@ -564,14 +564,14 @@ function setupStatefulEndpoints(state) {
|
|
|
564
564
|
req.body
|
|
565
565
|
);
|
|
566
566
|
} finally {
|
|
567
|
-
if (
|
|
568
|
-
const count = state.sessionLocks.get(
|
|
567
|
+
if (activeSid2) {
|
|
568
|
+
const count = state.sessionLocks.get(activeSid2) ?? 0;
|
|
569
569
|
if (count > 1) {
|
|
570
|
-
state.sessionLocks.set(
|
|
570
|
+
state.sessionLocks.set(activeSid2, count - 1);
|
|
571
571
|
} else {
|
|
572
|
-
state.sessionLocks.delete(
|
|
572
|
+
state.sessionLocks.delete(activeSid2);
|
|
573
573
|
}
|
|
574
|
-
touchSession(state,
|
|
574
|
+
touchSession(state, activeSid2);
|
|
575
575
|
}
|
|
576
576
|
}
|
|
577
577
|
return;
|
|
@@ -586,28 +586,26 @@ function setupStatefulEndpoints(state) {
|
|
|
586
586
|
});
|
|
587
587
|
return;
|
|
588
588
|
}
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
state.sessionLocks.delete(activeSid);
|
|
608
|
-
}
|
|
609
|
-
touchSession(state, activeSid);
|
|
589
|
+
const activeSid = sessionId;
|
|
590
|
+
try {
|
|
591
|
+
if (activeSid) {
|
|
592
|
+
const count = state.sessionLocks.get(activeSid) ?? 0;
|
|
593
|
+
state.sessionLocks.set(activeSid, count + 1);
|
|
594
|
+
}
|
|
595
|
+
await httpTransport.handleRequest(
|
|
596
|
+
asIncoming(req),
|
|
597
|
+
asServerResponse(res),
|
|
598
|
+
req.body
|
|
599
|
+
);
|
|
600
|
+
} finally {
|
|
601
|
+
if (activeSid) {
|
|
602
|
+
const count = state.sessionLocks.get(activeSid) ?? 0;
|
|
603
|
+
if (count > 1) {
|
|
604
|
+
state.sessionLocks.set(activeSid, count - 1);
|
|
605
|
+
} else {
|
|
606
|
+
state.sessionLocks.delete(activeSid);
|
|
610
607
|
}
|
|
608
|
+
touchSession(state, activeSid);
|
|
611
609
|
}
|
|
612
610
|
}
|
|
613
611
|
} catch (error) {
|
|
@@ -657,26 +655,24 @@ function setupStatefulEndpoints(state) {
|
|
|
657
655
|
lastEventId
|
|
658
656
|
});
|
|
659
657
|
}
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
state.sessionLocks.delete(sessionId);
|
|
675
|
-
}
|
|
676
|
-
touchSession(state, sessionId);
|
|
658
|
+
void (async () => {
|
|
659
|
+
try {
|
|
660
|
+
const count = state.sessionLocks.get(sessionId) ?? 0;
|
|
661
|
+
state.sessionLocks.set(sessionId, count + 1);
|
|
662
|
+
await httpTransport.handleRequest(
|
|
663
|
+
asIncoming(req),
|
|
664
|
+
asServerResponse(res)
|
|
665
|
+
);
|
|
666
|
+
} finally {
|
|
667
|
+
const count = state.sessionLocks.get(sessionId) ?? 0;
|
|
668
|
+
if (count > 1) {
|
|
669
|
+
state.sessionLocks.set(sessionId, count - 1);
|
|
670
|
+
} else {
|
|
671
|
+
state.sessionLocks.delete(sessionId);
|
|
677
672
|
}
|
|
678
|
-
|
|
679
|
-
|
|
673
|
+
touchSession(state, sessionId);
|
|
674
|
+
}
|
|
675
|
+
})();
|
|
680
676
|
});
|
|
681
677
|
state.app.delete("/mcp", (req, res) => {
|
|
682
678
|
const sessionId = req.headers["mcp-session-id"];
|
|
@@ -697,26 +693,24 @@ function setupStatefulEndpoints(state) {
|
|
|
697
693
|
code: "HTTP_SESSION_DELETE",
|
|
698
694
|
sessionId
|
|
699
695
|
});
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
state.sessionLocks.delete(sessionId);
|
|
715
|
-
}
|
|
716
|
-
touchSession(state, sessionId);
|
|
696
|
+
void (async () => {
|
|
697
|
+
try {
|
|
698
|
+
const count = state.sessionLocks.get(sessionId) ?? 0;
|
|
699
|
+
state.sessionLocks.set(sessionId, count + 1);
|
|
700
|
+
await httpTransport.handleRequest(
|
|
701
|
+
asIncoming(req),
|
|
702
|
+
asServerResponse(res)
|
|
703
|
+
);
|
|
704
|
+
} finally {
|
|
705
|
+
const count = state.sessionLocks.get(sessionId) ?? 0;
|
|
706
|
+
if (count > 1) {
|
|
707
|
+
state.sessionLocks.set(sessionId, count - 1);
|
|
708
|
+
} else {
|
|
709
|
+
state.sessionLocks.delete(sessionId);
|
|
717
710
|
}
|
|
718
|
-
|
|
719
|
-
|
|
711
|
+
touchSession(state, sessionId);
|
|
712
|
+
}
|
|
713
|
+
})();
|
|
720
714
|
});
|
|
721
715
|
return sessionSweepTimer;
|
|
722
716
|
}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { DEFAULT_CONFIG, DbMcpServer, createServer } from './chunk-
|
|
1
|
+
export { DEFAULT_CONFIG, DbMcpServer, createServer } from './chunk-WYBUO4FL.js';
|
|
2
2
|
export { DatabaseAdapter } from './chunk-27C5EE6U.js';
|
|
3
3
|
export { NAME, VERSION } from './chunk-2TYICG7B.js';
|
|
4
4
|
export { ALL_TOOL_GROUPS, AuthenticationError, AuthorizationError, ConnectionError, DbMcpError, META_GROUPS, QueryError, TOOL_GROUPS, ValidationError, filterTools, getFilterSummary, getToolFilterFromEnv, isToolEnabled, parseToolFilter } from './chunk-XLIYO3YA.js';
|
|
@@ -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;AAgBtD;;;;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,YAAY,CAC1B,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,MAAM,GAChB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,kBAAkB,GACxB,UAAU,CAAC,OAAO,WAAW,CAAC,
|
|
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;AAgBtD;;;;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,YAAY,CAC1B,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,MAAM,GAChB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,kBAAkB,GACxB,UAAU,CAAC,OAAO,WAAW,CAAC,CA2ZhC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "db-mcp",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "SQLite MCP Server — Secure Database Administration & Observability with Code Mode. True V8 Isolate Sandbox Unifying 170+ Specialized Tools with Highly Optimized Payloads for 70–90% Token Savings. Includes Dynamic Tool Filtering, Dual-Transport HTTP/SSE, OAuth 2.1 Auth, Granular Access Control, Audit Logging, & Deterministic Error Handling.",
|
|
5
5
|
"mcpName": "io.github.neverinfamous/db-mcp",
|
|
6
6
|
"type": "module",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"@types/better-sqlite3": "^7.6.13",
|
|
56
56
|
"@types/cors": "^2.8.19",
|
|
57
57
|
"@types/express": "^5.0.6",
|
|
58
|
-
"@types/node": "^25.9.
|
|
58
|
+
"@types/node": "^25.9.3",
|
|
59
59
|
"@types/sql.js": "^1.4.11",
|
|
60
60
|
"@vitest/coverage-v8": "^4.1.8",
|
|
61
61
|
"eslint": "^10.4.1",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"tsup": "^8.5.1",
|
|
65
65
|
"tsx": "^4.22.4",
|
|
66
66
|
"typescript": "^6.0.3",
|
|
67
|
-
"typescript-eslint": "^8.
|
|
67
|
+
"typescript-eslint": "^8.61.0",
|
|
68
68
|
"vitest": "^4.1.8"
|
|
69
69
|
},
|
|
70
70
|
"optionalDependencies": {
|