db-mcp 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/.gitattributes +2 -0
  2. package/LICENSE +1 -1
  3. package/README.md +244 -518
  4. package/dist/chunk-4IA3DB5C.js +135 -0
  5. package/dist/chunk-AOUL5SHS.js +930 -0
  6. package/dist/chunk-DWJXQEFA.js +13759 -0
  7. package/dist/chunk-DZQLDEQS.js +879 -0
  8. package/dist/chunk-S5IDDSSB.js +74 -0
  9. package/dist/chunk-Z2GFQU3G.js +363 -0
  10. package/dist/cli.d.ts +0 -7
  11. package/dist/cli.js +227 -183
  12. package/dist/http-VSB7DBJR.js +1541 -0
  13. package/dist/index.d.ts +842 -10
  14. package/dist/index.js +5 -17
  15. package/dist/sqlite-VHBA4ABV.js +600 -0
  16. package/dist/sqlite-native-D2LH5ZT7.js +2498 -0
  17. package/dist/worker-script.d.ts +2 -0
  18. package/dist/worker-script.js +126 -0
  19. package/package.json +26 -16
  20. package/playwright.config.ts +101 -0
  21. package/scripts/generate-server-instructions.ts +111 -0
  22. package/server.json +5 -6
  23. package/test-server/README.md +118 -0
  24. package/test-server/code-map.md +409 -0
  25. package/test-server/fixtures/sample.csv +6 -0
  26. package/test-server/reset-database.ps1 +373 -0
  27. package/test-server/sample.csv +11 -0
  28. package/test-server/test-agent-experience.md +243 -0
  29. package/test-server/test-database.sql +388 -0
  30. package/test-server/test-group-tools.md +861 -0
  31. package/test-server/test-help-resources.mjs +238 -0
  32. package/test-server/test-preflight.md +53 -0
  33. package/test-server/test-prompts.md +354 -0
  34. package/test-server/test-resources.md +245 -0
  35. package/test-server/test-tool-annotations.mjs +157 -0
  36. package/test-server/test-tools-advanced-1.md +517 -0
  37. package/test-server/test-tools-advanced-2.md +487 -0
  38. package/test-server/test-tools-codemode.md +629 -0
  39. package/test-server/test-tools.md +176 -0
  40. package/test-server/tool-reference.md +236 -0
  41. package/tsconfig.test.json +9 -0
  42. package/dist/adapters/DatabaseAdapter.d.ts +0 -141
  43. package/dist/adapters/DatabaseAdapter.d.ts.map +0 -1
  44. package/dist/adapters/DatabaseAdapter.js +0 -131
  45. package/dist/adapters/DatabaseAdapter.js.map +0 -1
  46. package/dist/adapters/sqlite/SchemaManager.d.ts +0 -58
  47. package/dist/adapters/sqlite/SchemaManager.d.ts.map +0 -1
  48. package/dist/adapters/sqlite/SchemaManager.js +0 -187
  49. package/dist/adapters/sqlite/SchemaManager.js.map +0 -1
  50. package/dist/adapters/sqlite/SqliteAdapter.d.ts +0 -161
  51. package/dist/adapters/sqlite/SqliteAdapter.d.ts.map +0 -1
  52. package/dist/adapters/sqlite/SqliteAdapter.js +0 -741
  53. package/dist/adapters/sqlite/SqliteAdapter.js.map +0 -1
  54. package/dist/adapters/sqlite/index.d.ts +0 -9
  55. package/dist/adapters/sqlite/index.d.ts.map +0 -1
  56. package/dist/adapters/sqlite/index.js +0 -8
  57. package/dist/adapters/sqlite/index.js.map +0 -1
  58. package/dist/adapters/sqlite/json-utils.d.ts +0 -100
  59. package/dist/adapters/sqlite/json-utils.d.ts.map +0 -1
  60. package/dist/adapters/sqlite/json-utils.js +0 -274
  61. package/dist/adapters/sqlite/json-utils.js.map +0 -1
  62. package/dist/adapters/sqlite/output-schemas.d.ts +0 -1187
  63. package/dist/adapters/sqlite/output-schemas.d.ts.map +0 -1
  64. package/dist/adapters/sqlite/output-schemas.js +0 -1337
  65. package/dist/adapters/sqlite/output-schemas.js.map +0 -1
  66. package/dist/adapters/sqlite/prompts.d.ts +0 -13
  67. package/dist/adapters/sqlite/prompts.d.ts.map +0 -1
  68. package/dist/adapters/sqlite/prompts.js +0 -605
  69. package/dist/adapters/sqlite/prompts.js.map +0 -1
  70. package/dist/adapters/sqlite/resources.d.ts +0 -13
  71. package/dist/adapters/sqlite/resources.d.ts.map +0 -1
  72. package/dist/adapters/sqlite/resources.js +0 -251
  73. package/dist/adapters/sqlite/resources.js.map +0 -1
  74. package/dist/adapters/sqlite/tools/admin.d.ts +0 -14
  75. package/dist/adapters/sqlite/tools/admin.d.ts.map +0 -1
  76. package/dist/adapters/sqlite/tools/admin.js +0 -788
  77. package/dist/adapters/sqlite/tools/admin.js.map +0 -1
  78. package/dist/adapters/sqlite/tools/core.d.ts +0 -25
  79. package/dist/adapters/sqlite/tools/core.d.ts.map +0 -1
  80. package/dist/adapters/sqlite/tools/core.js +0 -359
  81. package/dist/adapters/sqlite/tools/core.js.map +0 -1
  82. package/dist/adapters/sqlite/tools/fts.d.ts +0 -13
  83. package/dist/adapters/sqlite/tools/fts.d.ts.map +0 -1
  84. package/dist/adapters/sqlite/tools/fts.js +0 -347
  85. package/dist/adapters/sqlite/tools/fts.js.map +0 -1
  86. package/dist/adapters/sqlite/tools/geo.d.ts +0 -14
  87. package/dist/adapters/sqlite/tools/geo.d.ts.map +0 -1
  88. package/dist/adapters/sqlite/tools/geo.js +0 -252
  89. package/dist/adapters/sqlite/tools/geo.js.map +0 -1
  90. package/dist/adapters/sqlite/tools/index.d.ts +0 -30
  91. package/dist/adapters/sqlite/tools/index.d.ts.map +0 -1
  92. package/dist/adapters/sqlite/tools/index.js +0 -61
  93. package/dist/adapters/sqlite/tools/index.js.map +0 -1
  94. package/dist/adapters/sqlite/tools/json-helpers.d.ts +0 -14
  95. package/dist/adapters/sqlite/tools/json-helpers.d.ts.map +0 -1
  96. package/dist/adapters/sqlite/tools/json-helpers.js +0 -477
  97. package/dist/adapters/sqlite/tools/json-helpers.js.map +0 -1
  98. package/dist/adapters/sqlite/tools/json-operations.d.ts +0 -14
  99. package/dist/adapters/sqlite/tools/json-operations.d.ts.map +0 -1
  100. package/dist/adapters/sqlite/tools/json-operations.js +0 -839
  101. package/dist/adapters/sqlite/tools/json-operations.js.map +0 -1
  102. package/dist/adapters/sqlite/tools/stats.d.ts +0 -15
  103. package/dist/adapters/sqlite/tools/stats.d.ts.map +0 -1
  104. package/dist/adapters/sqlite/tools/stats.js +0 -1219
  105. package/dist/adapters/sqlite/tools/stats.js.map +0 -1
  106. package/dist/adapters/sqlite/tools/text.d.ts +0 -14
  107. package/dist/adapters/sqlite/tools/text.d.ts.map +0 -1
  108. package/dist/adapters/sqlite/tools/text.js +0 -1141
  109. package/dist/adapters/sqlite/tools/text.js.map +0 -1
  110. package/dist/adapters/sqlite/tools/vector.d.ts +0 -14
  111. package/dist/adapters/sqlite/tools/vector.d.ts.map +0 -1
  112. package/dist/adapters/sqlite/tools/vector.js +0 -613
  113. package/dist/adapters/sqlite/tools/vector.js.map +0 -1
  114. package/dist/adapters/sqlite/tools/virtual.d.ts +0 -13
  115. package/dist/adapters/sqlite/tools/virtual.d.ts.map +0 -1
  116. package/dist/adapters/sqlite/tools/virtual.js +0 -930
  117. package/dist/adapters/sqlite/tools/virtual.js.map +0 -1
  118. package/dist/adapters/sqlite/types.d.ts +0 -207
  119. package/dist/adapters/sqlite/types.d.ts.map +0 -1
  120. package/dist/adapters/sqlite/types.js +0 -186
  121. package/dist/adapters/sqlite/types.js.map +0 -1
  122. package/dist/adapters/sqlite-native/NativeSqliteAdapter.d.ts +0 -163
  123. package/dist/adapters/sqlite-native/NativeSqliteAdapter.d.ts.map +0 -1
  124. package/dist/adapters/sqlite-native/NativeSqliteAdapter.js +0 -748
  125. package/dist/adapters/sqlite-native/NativeSqliteAdapter.js.map +0 -1
  126. package/dist/adapters/sqlite-native/index.d.ts +0 -11
  127. package/dist/adapters/sqlite-native/index.d.ts.map +0 -1
  128. package/dist/adapters/sqlite-native/index.js +0 -11
  129. package/dist/adapters/sqlite-native/index.js.map +0 -1
  130. package/dist/adapters/sqlite-native/tools/spatialite.d.ts +0 -19
  131. package/dist/adapters/sqlite-native/tools/spatialite.d.ts.map +0 -1
  132. package/dist/adapters/sqlite-native/tools/spatialite.js +0 -628
  133. package/dist/adapters/sqlite-native/tools/spatialite.js.map +0 -1
  134. package/dist/adapters/sqlite-native/tools/transactions.d.ts +0 -12
  135. package/dist/adapters/sqlite-native/tools/transactions.d.ts.map +0 -1
  136. package/dist/adapters/sqlite-native/tools/transactions.js +0 -255
  137. package/dist/adapters/sqlite-native/tools/transactions.js.map +0 -1
  138. package/dist/adapters/sqlite-native/tools/window.d.ts +0 -12
  139. package/dist/adapters/sqlite-native/tools/window.d.ts.map +0 -1
  140. package/dist/adapters/sqlite-native/tools/window.js +0 -370
  141. package/dist/adapters/sqlite-native/tools/window.js.map +0 -1
  142. package/dist/auth/AuthorizationServerDiscovery.d.ts +0 -90
  143. package/dist/auth/AuthorizationServerDiscovery.d.ts.map +0 -1
  144. package/dist/auth/AuthorizationServerDiscovery.js +0 -204
  145. package/dist/auth/AuthorizationServerDiscovery.js.map +0 -1
  146. package/dist/auth/OAuthResourceServer.d.ts +0 -65
  147. package/dist/auth/OAuthResourceServer.d.ts.map +0 -1
  148. package/dist/auth/OAuthResourceServer.js +0 -121
  149. package/dist/auth/OAuthResourceServer.js.map +0 -1
  150. package/dist/auth/TokenValidator.d.ts +0 -60
  151. package/dist/auth/TokenValidator.d.ts.map +0 -1
  152. package/dist/auth/TokenValidator.js +0 -235
  153. package/dist/auth/TokenValidator.js.map +0 -1
  154. package/dist/auth/errors.d.ts +0 -74
  155. package/dist/auth/errors.d.ts.map +0 -1
  156. package/dist/auth/errors.js +0 -133
  157. package/dist/auth/errors.js.map +0 -1
  158. package/dist/auth/index.d.ts +0 -13
  159. package/dist/auth/index.d.ts.map +0 -1
  160. package/dist/auth/index.js +0 -15
  161. package/dist/auth/index.js.map +0 -1
  162. package/dist/auth/middleware.d.ts +0 -81
  163. package/dist/auth/middleware.d.ts.map +0 -1
  164. package/dist/auth/middleware.js +0 -291
  165. package/dist/auth/middleware.js.map +0 -1
  166. package/dist/auth/scopes.d.ts +0 -136
  167. package/dist/auth/scopes.d.ts.map +0 -1
  168. package/dist/auth/scopes.js +0 -349
  169. package/dist/auth/scopes.js.map +0 -1
  170. package/dist/auth/types.d.ts +0 -257
  171. package/dist/auth/types.d.ts.map +0 -1
  172. package/dist/auth/types.js +0 -8
  173. package/dist/auth/types.js.map +0 -1
  174. package/dist/cli.d.ts.map +0 -1
  175. package/dist/cli.js.map +0 -1
  176. package/dist/constants/ServerInstructions.d.ts +0 -45
  177. package/dist/constants/ServerInstructions.d.ts.map +0 -1
  178. package/dist/constants/ServerInstructions.js +0 -356
  179. package/dist/constants/ServerInstructions.js.map +0 -1
  180. package/dist/filtering/ToolConstants.d.ts +0 -34
  181. package/dist/filtering/ToolConstants.d.ts.map +0 -1
  182. package/dist/filtering/ToolConstants.js +0 -174
  183. package/dist/filtering/ToolConstants.js.map +0 -1
  184. package/dist/filtering/ToolFilter.d.ts +0 -82
  185. package/dist/filtering/ToolFilter.d.ts.map +0 -1
  186. package/dist/filtering/ToolFilter.js +0 -296
  187. package/dist/filtering/ToolFilter.js.map +0 -1
  188. package/dist/index.d.ts.map +0 -1
  189. package/dist/index.js.map +0 -1
  190. package/dist/server/McpServer.d.ts +0 -61
  191. package/dist/server/McpServer.d.ts.map +0 -1
  192. package/dist/server/McpServer.js +0 -270
  193. package/dist/server/McpServer.js.map +0 -1
  194. package/dist/transports/http.d.ts +0 -134
  195. package/dist/transports/http.d.ts.map +0 -1
  196. package/dist/transports/http.js +0 -516
  197. package/dist/transports/http.js.map +0 -1
  198. package/dist/transports/index.d.ts +0 -5
  199. package/dist/transports/index.d.ts.map +0 -1
  200. package/dist/transports/index.js +0 -5
  201. package/dist/transports/index.js.map +0 -1
  202. package/dist/types/index.d.ts +0 -380
  203. package/dist/types/index.d.ts.map +0 -1
  204. package/dist/types/index.js +0 -68
  205. package/dist/types/index.js.map +0 -1
  206. package/dist/utils/annotations.d.ts +0 -44
  207. package/dist/utils/annotations.d.ts.map +0 -1
  208. package/dist/utils/annotations.js +0 -77
  209. package/dist/utils/annotations.js.map +0 -1
  210. package/dist/utils/errors.d.ts +0 -155
  211. package/dist/utils/errors.d.ts.map +0 -1
  212. package/dist/utils/errors.js +0 -329
  213. package/dist/utils/errors.js.map +0 -1
  214. package/dist/utils/identifiers.d.ts +0 -121
  215. package/dist/utils/identifiers.d.ts.map +0 -1
  216. package/dist/utils/identifiers.js +0 -319
  217. package/dist/utils/identifiers.js.map +0 -1
  218. package/dist/utils/index.d.ts +0 -7
  219. package/dist/utils/index.d.ts.map +0 -1
  220. package/dist/utils/index.js +0 -7
  221. package/dist/utils/index.js.map +0 -1
  222. package/dist/utils/insightsManager.d.ts +0 -39
  223. package/dist/utils/insightsManager.d.ts.map +0 -1
  224. package/dist/utils/insightsManager.js +0 -63
  225. package/dist/utils/insightsManager.js.map +0 -1
  226. package/dist/utils/logger.d.ts +0 -189
  227. package/dist/utils/logger.d.ts.map +0 -1
  228. package/dist/utils/logger.js +0 -394
  229. package/dist/utils/logger.js.map +0 -1
  230. package/dist/utils/progress-utils.d.ts +0 -54
  231. package/dist/utils/progress-utils.d.ts.map +0 -1
  232. package/dist/utils/progress-utils.js +0 -74
  233. package/dist/utils/progress-utils.js.map +0 -1
  234. package/dist/utils/resourceAnnotations.d.ts +0 -36
  235. package/dist/utils/resourceAnnotations.d.ts.map +0 -1
  236. package/dist/utils/resourceAnnotations.js +0 -57
  237. package/dist/utils/resourceAnnotations.js.map +0 -1
  238. package/dist/utils/where-clause.d.ts +0 -41
  239. package/dist/utils/where-clause.d.ts.map +0 -1
  240. package/dist/utils/where-clause.js +0 -116
  241. package/dist/utils/where-clause.js.map +0 -1
@@ -1,82 +0,0 @@
1
- /**
2
- * db-mcp - Tool Filtering System
3
- *
4
- * Parses and applies tool filter rules from environment variables.
5
- * Compatible with postgres-mcp-server filtering syntax.
6
- *
7
- * Syntax:
8
- * groupName → Enable only this group (whitelist mode)
9
- * shortcut → Use a preset (starter, analytics, search, etc.)
10
- * -group → Disable all tools in a group
11
- * +group → Enable all tools in a group
12
- * -tool → Disable a specific tool
13
- * +tool → Enable a specific tool
14
- *
15
- * Mode Detection:
16
- * - If first token starts with '-', start with ALL groups enabled (exclusion mode)
17
- * - Otherwise, start with NO groups enabled (whitelist mode)
18
- *
19
- * Examples:
20
- * "core,json" → Whitelist: only core and json groups
21
- * "starter" → Preset: core + json + text groups
22
- * "starter,-fts5" → Preset minus fts5 group
23
- * "-vector,-geo" → Legacy: all groups except vector and geo
24
- */
25
- import type { ToolGroup, MetaGroup, ToolFilterConfig, ToolDefinition } from "../types/index.js";
26
- export { META_GROUPS, TOOL_GROUPS, ALL_TOOL_GROUPS } from "./ToolConstants.js";
27
- /**
28
- * Get all tool names from all groups (cached)
29
- */
30
- export declare function getAllToolNames(): string[];
31
- /**
32
- * Get the group for a specific tool (O(1) lookup)
33
- */
34
- export declare function getToolGroup(toolName: string): ToolGroup | undefined;
35
- /**
36
- * Clear all caches - useful for testing
37
- */
38
- export declare function clearToolFilterCaches(): void;
39
- /**
40
- * Check if a name is a valid tool group
41
- */
42
- export declare function isToolGroup(name: string): name is ToolGroup;
43
- /**
44
- * Check if a name is a valid meta-group
45
- */
46
- export declare function isMetaGroup(name: string): name is MetaGroup;
47
- /**
48
- * Get tool groups from a meta-group
49
- */
50
- export declare function getMetaGroupGroups(metaGroup: MetaGroup): ToolGroup[];
51
- /**
52
- * Parse a tool filter string into structured rules
53
- *
54
- * @param filterString - The filter string (e.g., "starter" or "-vector,-geo")
55
- * @returns Parsed filter configuration with enabled groups
56
- */
57
- export declare function parseToolFilter(filterString: string | undefined): ToolFilterConfig;
58
- /**
59
- * Check if a tool is enabled based on filter configuration
60
- * Uses the tool's group property for matching
61
- */
62
- export declare function isToolEnabled(tool: ToolDefinition, config: ToolFilterConfig): boolean;
63
- /**
64
- * Filter a list of tool definitions based on filter configuration
65
- */
66
- export declare function filterTools(tools: ToolDefinition[], config: ToolFilterConfig): ToolDefinition[];
67
- /**
68
- * Get the tool filter from environment variable
69
- */
70
- export declare function getToolFilterFromEnv(): ToolFilterConfig;
71
- /**
72
- * Generate a summary of the current filter configuration
73
- */
74
- export declare function getFilterSummary(config: ToolFilterConfig): string;
75
- /**
76
- * Get a list of all meta-groups with their expanded groups
77
- */
78
- export declare function getMetaGroupInfo(): {
79
- metaGroup: MetaGroup;
80
- groups: ToolGroup[];
81
- }[];
82
- //# sourceMappingURL=ToolFilter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAK3B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAc/E;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAM1C;AAkBD;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEpE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAG5C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAE3D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,SAAS,CAE3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,EAAE,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,gBAAgB,CA+HlB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAwBT;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,cAAc,EAAE,EACvB,MAAM,EAAE,gBAAgB,GACvB,cAAc,EAAE,CAElB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,CAIvD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAiCjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB,EAAE,CAKF"}
@@ -1,296 +0,0 @@
1
- /**
2
- * db-mcp - Tool Filtering System
3
- *
4
- * Parses and applies tool filter rules from environment variables.
5
- * Compatible with postgres-mcp-server filtering syntax.
6
- *
7
- * Syntax:
8
- * groupName → Enable only this group (whitelist mode)
9
- * shortcut → Use a preset (starter, analytics, search, etc.)
10
- * -group → Disable all tools in a group
11
- * +group → Enable all tools in a group
12
- * -tool → Disable a specific tool
13
- * +tool → Enable a specific tool
14
- *
15
- * Mode Detection:
16
- * - If first token starts with '-', start with ALL groups enabled (exclusion mode)
17
- * - Otherwise, start with NO groups enabled (whitelist mode)
18
- *
19
- * Examples:
20
- * "core,json" → Whitelist: only core and json groups
21
- * "starter" → Preset: core + json + text groups
22
- * "starter,-fts5" → Preset minus fts5 group
23
- * "-vector,-geo" → Legacy: all groups except vector and geo
24
- */
25
- import { META_GROUPS, ALL_TOOL_GROUPS, TOOL_GROUPS } from "./ToolConstants.js";
26
- // Re-export for backwards compatibility
27
- export { META_GROUPS, TOOL_GROUPS, ALL_TOOL_GROUPS } from "./ToolConstants.js";
28
- /**
29
- * Cached list of all tool names
30
- * Lazy-initialized since TOOL_GROUPS is immutable
31
- */
32
- let cachedAllToolNames = null;
33
- /**
34
- * Reverse lookup map: tool name -> group
35
- * Lazy-initialized for O(1) tool group lookups
36
- */
37
- let toolToGroupMap = null;
38
- /**
39
- * Get all tool names from all groups (cached)
40
- */
41
- export function getAllToolNames() {
42
- if (cachedAllToolNames) {
43
- return cachedAllToolNames;
44
- }
45
- cachedAllToolNames = ALL_TOOL_GROUPS.flatMap((group) => TOOL_GROUPS[group]);
46
- return cachedAllToolNames;
47
- }
48
- /**
49
- * Get or initialize the tool-to-group reverse lookup map
50
- */
51
- function getToolToGroupMap() {
52
- if (toolToGroupMap) {
53
- return toolToGroupMap;
54
- }
55
- toolToGroupMap = new Map();
56
- for (const group of ALL_TOOL_GROUPS) {
57
- for (const tool of TOOL_GROUPS[group]) {
58
- toolToGroupMap.set(tool, group);
59
- }
60
- }
61
- return toolToGroupMap;
62
- }
63
- /**
64
- * Get the group for a specific tool (O(1) lookup)
65
- */
66
- export function getToolGroup(toolName) {
67
- return getToolToGroupMap().get(toolName);
68
- }
69
- /**
70
- * Clear all caches - useful for testing
71
- */
72
- export function clearToolFilterCaches() {
73
- cachedAllToolNames = null;
74
- toolToGroupMap = null;
75
- }
76
- /**
77
- * Check if a name is a valid tool group
78
- */
79
- export function isToolGroup(name) {
80
- return ALL_TOOL_GROUPS.includes(name);
81
- }
82
- /**
83
- * Check if a name is a valid meta-group
84
- */
85
- export function isMetaGroup(name) {
86
- return name in META_GROUPS;
87
- }
88
- /**
89
- * Get tool groups from a meta-group
90
- */
91
- export function getMetaGroupGroups(metaGroup) {
92
- return META_GROUPS[metaGroup];
93
- }
94
- /**
95
- * Parse a tool filter string into structured rules
96
- *
97
- * @param filterString - The filter string (e.g., "starter" or "-vector,-geo")
98
- * @returns Parsed filter configuration with enabled groups
99
- */
100
- export function parseToolFilter(filterString) {
101
- // Default: all groups enabled, no specific tool exclusions
102
- const enabledGroups = new Set(ALL_TOOL_GROUPS);
103
- const excludedTools = new Set();
104
- const includedTools = new Set();
105
- if (!filterString || filterString.trim() === "") {
106
- return {
107
- raw: "",
108
- rules: [],
109
- enabledGroups,
110
- excludedTools,
111
- includedTools,
112
- };
113
- }
114
- const rules = [];
115
- const parts = filterString
116
- .split(",")
117
- .map((p) => p.trim())
118
- .filter((p) => p);
119
- if (parts.length === 0) {
120
- return {
121
- raw: filterString,
122
- rules: [],
123
- enabledGroups,
124
- excludedTools,
125
- includedTools,
126
- };
127
- }
128
- // Mode detection: if first token starts with '-', exclusion mode (legacy)
129
- // Otherwise, whitelist mode (new) - start with empty groups
130
- const firstPart = parts[0];
131
- if (!firstPart) {
132
- return {
133
- raw: filterString,
134
- rules: [],
135
- enabledGroups,
136
- excludedTools,
137
- includedTools,
138
- };
139
- }
140
- const startsWithExclude = firstPart.startsWith("-");
141
- if (!startsWithExclude) {
142
- enabledGroups.clear();
143
- }
144
- for (const part of parts) {
145
- if (!part)
146
- continue;
147
- let isInclude = true; // Default to include (whitelist mode)
148
- let isExclude = false;
149
- let target = part;
150
- if (part.startsWith("+")) {
151
- isInclude = true;
152
- target = part.substring(1);
153
- }
154
- else if (part.startsWith("-")) {
155
- isInclude = false;
156
- isExclude = true;
157
- target = part.substring(1);
158
- }
159
- // No prefix = include (whitelist mode)
160
- // Special case: 'all'
161
- if (target === "all") {
162
- if (isExclude) {
163
- enabledGroups.clear();
164
- }
165
- else {
166
- for (const group of ALL_TOOL_GROUPS) {
167
- enabledGroups.add(group);
168
- }
169
- }
170
- continue;
171
- }
172
- const targetIsMetaGroup = isMetaGroup(target);
173
- const targetIsGroup = isToolGroup(target);
174
- rules.push({
175
- type: isInclude ? "include" : "exclude",
176
- target,
177
- isGroup: targetIsGroup || targetIsMetaGroup,
178
- });
179
- // Apply rule - check meta-groups first, then regular groups, then individual tools
180
- if (targetIsMetaGroup) {
181
- // Expand meta-group to its constituent groups
182
- const groupsInMeta = getMetaGroupGroups(target);
183
- if (isExclude) {
184
- for (const group of groupsInMeta) {
185
- enabledGroups.delete(group);
186
- }
187
- }
188
- else {
189
- for (const group of groupsInMeta) {
190
- enabledGroups.add(group);
191
- }
192
- }
193
- }
194
- else if (targetIsGroup) {
195
- // Add/remove a single group
196
- if (isExclude) {
197
- enabledGroups.delete(target);
198
- }
199
- else {
200
- enabledGroups.add(target);
201
- }
202
- }
203
- else {
204
- // Individual tool - track in include/exclude sets
205
- if (isExclude) {
206
- excludedTools.add(target);
207
- includedTools.delete(target);
208
- }
209
- else {
210
- includedTools.add(target);
211
- excludedTools.delete(target);
212
- }
213
- }
214
- }
215
- return {
216
- raw: filterString,
217
- rules,
218
- enabledGroups,
219
- excludedTools,
220
- includedTools,
221
- };
222
- }
223
- /**
224
- * Check if a tool is enabled based on filter configuration
225
- * Uses the tool's group property for matching
226
- */
227
- export function isToolEnabled(tool, config) {
228
- const baseName = tool.name.replace(/^(sqlite|mysql|postgres|mongodb|redis|sqlserver)_/, "");
229
- // Check explicit tool exclusion
230
- if (config.excludedTools.has(tool.name) ||
231
- config.excludedTools.has(baseName)) {
232
- return false;
233
- }
234
- // Check explicit tool inclusion
235
- if (config.includedTools.has(tool.name) ||
236
- config.includedTools.has(baseName)) {
237
- return true;
238
- }
239
- // Check if tool's group is enabled
240
- return config.enabledGroups.has(tool.group);
241
- }
242
- /**
243
- * Filter a list of tool definitions based on filter configuration
244
- */
245
- export function filterTools(tools, config) {
246
- return tools.filter((tool) => isToolEnabled(tool, config));
247
- }
248
- /**
249
- * Get the tool filter from environment variable
250
- */
251
- export function getToolFilterFromEnv() {
252
- const filterString = process.env["DB_MCP_TOOL_FILTER"] ?? process.env["TOOL_FILTER"] ?? "";
253
- return parseToolFilter(filterString);
254
- }
255
- /**
256
- * Generate a summary of the current filter configuration
257
- */
258
- export function getFilterSummary(config) {
259
- const lines = [
260
- `Tool Filter Summary:`,
261
- ` Filter: ${config.raw || "(none)"}`,
262
- ` Enabled groups: ${config.enabledGroups.size}/${ALL_TOOL_GROUPS.length}`,
263
- ];
264
- if (config.enabledGroups.size > 0) {
265
- lines.push(` Groups: ${[...config.enabledGroups].join(", ")}`);
266
- }
267
- if (config.excludedTools.size > 0) {
268
- lines.push(` Excluded tools: ${[...config.excludedTools].join(", ")}`);
269
- }
270
- if (config.includedTools.size > 0) {
271
- lines.push(` Included tools: ${[...config.includedTools].join(", ")}`);
272
- }
273
- if (config.rules.length > 0) {
274
- lines.push(` Rules applied: ${config.rules.length}`);
275
- for (const rule of config.rules) {
276
- const prefix = rule.type === "include" ? "+" : "-";
277
- const type = isMetaGroup(rule.target)
278
- ? "meta-group"
279
- : rule.isGroup
280
- ? "group"
281
- : "tool";
282
- lines.push(` ${prefix}${rule.target} (${type})`);
283
- }
284
- }
285
- return lines.join("\n");
286
- }
287
- /**
288
- * Get a list of all meta-groups with their expanded groups
289
- */
290
- export function getMetaGroupInfo() {
291
- return Object.entries(META_GROUPS).map(([metaGroup, groups]) => ({
292
- metaGroup: metaGroup,
293
- groups,
294
- }));
295
- }
296
- //# sourceMappingURL=ToolFilter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolFilter.js","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,uBAAuB,CAAC;AAG/B,YAAY,EAEV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,cAAc,EAGd,aAAa,EACb,eAAe,EAGf,WAAW,EACX,UAAU,EACV,WAAW,EACX,cAAc,EAGd,SAAS,EACT,cAAc,EACd,gBAAgB,EAGhB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EACL,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,EACf,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAGnC,eAAO,MAAM,OAAO,UAAU,CAAC;AAC/B,eAAO,MAAM,IAAI,WAAW,CAAC"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc;AACd,OAAO,EACL,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,uBAAuB,CAAC;AAqC/B,gBAAgB;AAChB,OAAO,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAE1B,qBAAqB;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,2BAA2B;AAC3B,OAAO,EACL,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,EACf,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAEnC,eAAe;AACf,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAC/B,MAAM,CAAC,MAAM,IAAI,GAAG,QAAQ,CAAC"}
@@ -1,61 +0,0 @@
1
- /**
2
- * db-mcp - Main MCP Server
3
- *
4
- * SQLite MCP server with OAuth 2.1 authentication,
5
- * HTTP/SSE transport, and dynamic tool filtering.
6
- */
7
- import type { McpServerConfig, DatabaseConfig } from "../types/index.js";
8
- import { type DatabaseAdapter } from "../adapters/DatabaseAdapter.js";
9
- /**
10
- * Main db-mcp server class
11
- *
12
- * Manages database adapters, tool registration, and MCP protocol handling.
13
- */
14
- export declare class DbMcpServer {
15
- private server;
16
- private adapters;
17
- private toolFilter;
18
- private config;
19
- constructor(config: McpServerConfig);
20
- /**
21
- * Register a database adapter
22
- */
23
- registerAdapter(adapter: DatabaseAdapter, config: DatabaseConfig): Promise<void>;
24
- /**
25
- * Get an adapter by ID
26
- */
27
- getAdapter(adapterId: string): DatabaseAdapter | undefined;
28
- /**
29
- * Get all registered adapters
30
- */
31
- getAdapters(): Map<string, DatabaseAdapter>;
32
- /**
33
- * Register built-in server tools (health, info, etc.)
34
- */
35
- private registerBuiltInTools;
36
- /**
37
- * Start the server with the configured transport
38
- */
39
- start(): Promise<void>;
40
- /**
41
- * Start server with stdio transport
42
- */
43
- private startStdio;
44
- /**
45
- * Start server with HTTP transport (Streamable HTTP with SSE support)
46
- */
47
- private startHttp;
48
- /**
49
- * Gracefully shut down the server
50
- */
51
- shutdown(): Promise<void>;
52
- }
53
- /**
54
- * Create and configure a db-mcp server instance
55
- */
56
- export declare function createServer(config: McpServerConfig): DbMcpServer;
57
- /**
58
- * Default server configuration
59
- */
60
- export declare const DEFAULT_CONFIG: Partial<McpServerConfig>;
61
- //# sourceMappingURL=McpServer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"McpServer.d.ts","sourceRoot":"","sources":["../../src/server/McpServer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAStE;;;;GAIG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,EAAE,eAAe;IA8CnC;;OAEG;IACG,eAAe,CACnB,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI1D;;OAEG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAI3C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuG5B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAa5B;;OAEG;YACW,UAAU;IAQxB;;OAEG;YACW,SAAS;IAmDvB;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAoBhC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,WAAW,CAEjE;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,eAAe,CAKnD,CAAC"}