@eamonboyle/mssql-mcp 1.2.0 → 1.3.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 (118) hide show
  1. package/README.md +42 -7
  2. package/dist/config.d.ts +8 -0
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +40 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/db.d.ts +1 -0
  7. package/dist/db.d.ts.map +1 -1
  8. package/dist/db.js +1 -1
  9. package/dist/db.js.map +1 -1
  10. package/dist/index.js +356 -44
  11. package/dist/index.js.map +1 -1
  12. package/dist/mcpResults.d.ts +49 -0
  13. package/dist/mcpResults.d.ts.map +1 -0
  14. package/dist/mcpResults.js +246 -0
  15. package/dist/mcpResults.js.map +1 -0
  16. package/dist/promptRegistry.d.ts.map +1 -1
  17. package/dist/promptRegistry.js +6 -1
  18. package/dist/promptRegistry.js.map +1 -1
  19. package/dist/resourceRegistry.d.ts +2 -0
  20. package/dist/resourceRegistry.d.ts.map +1 -1
  21. package/dist/resourceRegistry.js +149 -10
  22. package/dist/resourceRegistry.js.map +1 -1
  23. package/dist/schema.d.ts +16 -0
  24. package/dist/schema.d.ts.map +1 -1
  25. package/dist/schema.js +180 -1
  26. package/dist/schema.js.map +1 -1
  27. package/dist/serverState.d.ts +28 -0
  28. package/dist/serverState.d.ts.map +1 -0
  29. package/dist/serverState.js +99 -0
  30. package/dist/serverState.js.map +1 -0
  31. package/dist/toolRegistry.d.ts +4 -0
  32. package/dist/toolRegistry.d.ts.map +1 -1
  33. package/dist/toolRegistry.js +210 -64
  34. package/dist/toolRegistry.js.map +1 -1
  35. package/dist/tools/AnalyzeTableTool.d.ts +37 -0
  36. package/dist/tools/AnalyzeTableTool.d.ts.map +1 -0
  37. package/dist/tools/AnalyzeTableTool.js +81 -0
  38. package/dist/tools/AnalyzeTableTool.js.map +1 -0
  39. package/dist/tools/DeleteDataTool.d.ts.map +1 -1
  40. package/dist/tools/DeleteDataTool.js +4 -1
  41. package/dist/tools/DeleteDataTool.js.map +1 -1
  42. package/dist/tools/DescribeRelationshipsTool.d.ts +20 -0
  43. package/dist/tools/DescribeRelationshipsTool.d.ts.map +1 -0
  44. package/dist/tools/DescribeRelationshipsTool.js +24 -0
  45. package/dist/tools/DescribeRelationshipsTool.js.map +1 -0
  46. package/dist/tools/ListDatabasesTool.d.ts +16 -0
  47. package/dist/tools/ListDatabasesTool.d.ts.map +1 -0
  48. package/dist/tools/ListDatabasesTool.js +26 -0
  49. package/dist/tools/ListDatabasesTool.js.map +1 -0
  50. package/dist/tools/ListForeignKeysTool.d.ts +19 -0
  51. package/dist/tools/ListForeignKeysTool.d.ts.map +1 -0
  52. package/dist/tools/ListForeignKeysTool.js +24 -0
  53. package/dist/tools/ListForeignKeysTool.js.map +1 -0
  54. package/dist/tools/PreviewDeleteTool.d.ts +28 -0
  55. package/dist/tools/PreviewDeleteTool.d.ts.map +1 -0
  56. package/dist/tools/PreviewDeleteTool.js +31 -0
  57. package/dist/tools/PreviewDeleteTool.js.map +1 -0
  58. package/dist/tools/PreviewUpdateTool.d.ts +30 -0
  59. package/dist/tools/PreviewUpdateTool.d.ts.map +1 -0
  60. package/dist/tools/PreviewUpdateTool.js +34 -0
  61. package/dist/tools/PreviewUpdateTool.js.map +1 -0
  62. package/dist/tools/UpdateDataTool.d.ts +1 -0
  63. package/dist/tools/UpdateDataTool.d.ts.map +1 -1
  64. package/dist/tools/UpdateDataTool.js +6 -3
  65. package/dist/tools/UpdateDataTool.js.map +1 -1
  66. package/dist/writePreview.d.ts +20 -0
  67. package/dist/writePreview.d.ts.map +1 -0
  68. package/dist/writePreview.js +27 -0
  69. package/dist/writePreview.js.map +1 -0
  70. package/dist/writePreviewGrant.d.ts +18 -0
  71. package/dist/writePreviewGrant.d.ts.map +1 -0
  72. package/dist/writePreviewGrant.js +71 -0
  73. package/dist/writePreviewGrant.js.map +1 -0
  74. package/dist/writePreviewGrantStore.d.ts +10 -0
  75. package/dist/writePreviewGrantStore.d.ts.map +1 -0
  76. package/dist/writePreviewGrantStore.js +47 -0
  77. package/dist/writePreviewGrantStore.js.map +1 -0
  78. package/package.json +2 -2
  79. package/dist/__tests__/ExplainQueryTool.test.d.ts +0 -2
  80. package/dist/__tests__/ExplainQueryTool.test.d.ts.map +0 -1
  81. package/dist/__tests__/ExplainQueryTool.test.js +0 -96
  82. package/dist/__tests__/ExplainQueryTool.test.js.map +0 -1
  83. package/dist/__tests__/config.test.d.ts +0 -2
  84. package/dist/__tests__/config.test.d.ts.map +0 -1
  85. package/dist/__tests__/config.test.js +0 -29
  86. package/dist/__tests__/config.test.js.map +0 -1
  87. package/dist/__tests__/db.test.d.ts +0 -2
  88. package/dist/__tests__/db.test.d.ts.map +0 -1
  89. package/dist/__tests__/db.test.js +0 -204
  90. package/dist/__tests__/db.test.js.map +0 -1
  91. package/dist/__tests__/promptRegistry.test.d.ts +0 -2
  92. package/dist/__tests__/promptRegistry.test.d.ts.map +0 -1
  93. package/dist/__tests__/promptRegistry.test.js +0 -40
  94. package/dist/__tests__/promptRegistry.test.js.map +0 -1
  95. package/dist/__tests__/resourceRegistry.test.d.ts +0 -2
  96. package/dist/__tests__/resourceRegistry.test.d.ts.map +0 -1
  97. package/dist/__tests__/resourceRegistry.test.js +0 -40
  98. package/dist/__tests__/resourceRegistry.test.js.map +0 -1
  99. package/dist/__tests__/schema.test.d.ts +0 -2
  100. package/dist/__tests__/schema.test.d.ts.map +0 -1
  101. package/dist/__tests__/schema.test.js +0 -130
  102. package/dist/__tests__/schema.test.js.map +0 -1
  103. package/dist/__tests__/sql.test.d.ts +0 -2
  104. package/dist/__tests__/sql.test.d.ts.map +0 -1
  105. package/dist/__tests__/sql.test.js +0 -35
  106. package/dist/__tests__/sql.test.js.map +0 -1
  107. package/dist/__tests__/toolRegistry.test.d.ts +0 -2
  108. package/dist/__tests__/toolRegistry.test.d.ts.map +0 -1
  109. package/dist/__tests__/toolRegistry.test.js +0 -47
  110. package/dist/__tests__/toolRegistry.test.js.map +0 -1
  111. package/dist/__tests__/validation.test.d.ts +0 -2
  112. package/dist/__tests__/validation.test.d.ts.map +0 -1
  113. package/dist/__tests__/validation.test.js +0 -111
  114. package/dist/__tests__/validation.test.js.map +0 -1
  115. package/dist/__tests__/writeTools.test.d.ts +0 -2
  116. package/dist/__tests__/writeTools.test.d.ts.map +0 -1
  117. package/dist/__tests__/writeTools.test.js +0 -115
  118. package/dist/__tests__/writeTools.test.js.map +0 -1
@@ -1,18 +1,28 @@
1
+ import { completable } from "@modelcontextprotocol/sdk/server/completable.js";
1
2
  import { z } from "zod";
3
+ import { toolResultOutputSchema } from "./mcpResults.js";
4
+ import { AnalyzeTableTool } from "./tools/AnalyzeTableTool.js";
2
5
  import { CreateIndexTool } from "./tools/CreateIndexTool.js";
3
6
  import { CreateTableTool } from "./tools/CreateTableTool.js";
4
7
  import { DeleteDataTool } from "./tools/DeleteDataTool.js";
8
+ import { DescribeRelationshipsTool } from "./tools/DescribeRelationshipsTool.js";
5
9
  import { DescribeObjectTool } from "./tools/DescribeObjectTool.js";
6
10
  import { DescribeTableTool } from "./tools/DescribeTableTool.js";
7
11
  import { DropTableTool } from "./tools/DropTableTool.js";
8
12
  import { ExplainQueryTool } from "./tools/ExplainQueryTool.js";
9
13
  import { InsertDataTool } from "./tools/InsertDataTool.js";
14
+ import { ListDatabasesTool } from "./tools/ListDatabasesTool.js";
15
+ import { ListForeignKeysTool } from "./tools/ListForeignKeysTool.js";
10
16
  import { ListObjectsTool } from "./tools/ListObjectsTool.js";
11
17
  import { ListTableTool } from "./tools/ListTableTool.js";
18
+ import { PreviewDeleteTool } from "./tools/PreviewDeleteTool.js";
19
+ import { PreviewUpdateTool } from "./tools/PreviewUpdateTool.js";
12
20
  import { ReadDataTool } from "./tools/ReadDataTool.js";
13
21
  import { SearchDataTool } from "./tools/SearchDataTool.js";
14
22
  import { UpdateDataTool } from "./tools/UpdateDataTool.js";
15
23
  import { SQL_FILTER_OPERATORS } from "./writeSafety.js";
24
+ import { getAllowedDatabases } from "./db.js";
25
+ import { listDatabaseObjects, listDatabaseTables } from "./schema.js";
16
26
  const recordSchema = z.record(z.string(), z.unknown());
17
27
  const filterSchema = z
18
28
  .object({
@@ -56,19 +66,61 @@ const listTableTool = new ListTableTool();
56
66
  const describeTableTool = new DescribeTableTool();
57
67
  const listObjectsTool = new ListObjectsTool();
58
68
  const describeObjectTool = new DescribeObjectTool();
69
+ const listDatabasesTool = new ListDatabasesTool();
70
+ const listForeignKeysTool = new ListForeignKeysTool();
71
+ const describeRelationshipsTool = new DescribeRelationshipsTool();
72
+ const analyzeTableTool = new AnalyzeTableTool();
59
73
  const readDataTool = new ReadDataTool();
60
74
  const searchDataTool = new SearchDataTool();
61
75
  const explainQueryTool = new ExplainQueryTool();
76
+ const previewUpdateTool = new PreviewUpdateTool();
77
+ const previewDeleteTool = new PreviewDeleteTool();
62
78
  const insertDataTool = new InsertDataTool();
63
79
  const updateDataTool = new UpdateDataTool();
64
80
  const deleteDataTool = new DeleteDataTool();
65
81
  const createTableTool = new CreateTableTool();
66
82
  const createIndexTool = new CreateIndexTool();
67
83
  const dropTableTool = new DropTableTool();
84
+ const databaseNameSchema = completable(z
85
+ .string()
86
+ .describe("Name of the database to use (optional). Omit to use the default configured database."), async (value) => getAllowedDatabases().filter((database) => database.toLowerCase().startsWith(String(value ?? "").toLowerCase())));
87
+ const schemaNameSchema = completable(z.string().describe("Schema name."), async (value, context) => {
88
+ const databaseName = context?.arguments?.databaseName;
89
+ const tables = await listDatabaseTables(databaseName);
90
+ const schemas = [...new Set(tables.map((table) => table.schemaName))];
91
+ return schemas.filter((schema) => schema.toLowerCase().startsWith(String(value ?? "").toLowerCase()));
92
+ });
93
+ const tableNameSchema = completable(z.string().describe("Table name."), async (value, context) => {
94
+ const databaseName = context?.arguments?.databaseName;
95
+ const schemaName = context?.arguments?.schemaName;
96
+ const tables = await listDatabaseTables(databaseName, schemaName);
97
+ return tables
98
+ .map((table) => table.tableName)
99
+ .filter((table) => table.toLowerCase().startsWith(String(value ?? "").toLowerCase()));
100
+ });
101
+ const objectNameSchema = completable(z.string().describe("Object name."), async (value, context) => {
102
+ const databaseName = context?.arguments?.databaseName;
103
+ const schemaName = context?.arguments?.schemaName;
104
+ const objects = await listDatabaseObjects(databaseName, undefined, schemaName);
105
+ return objects
106
+ .map((object) => object.name)
107
+ .filter((name) => name.toLowerCase().startsWith(String(value ?? "").toLowerCase()));
108
+ });
68
109
  export const toolDefinitions = [
110
+ {
111
+ tool: listDatabasesTool,
112
+ readOnly: true,
113
+ outputSchema: toolResultOutputSchema,
114
+ annotations: {
115
+ readOnlyHint: true,
116
+ idempotentHint: true,
117
+ },
118
+ inputSchema: z.object({}).strict(),
119
+ },
69
120
  {
70
121
  tool: listTableTool,
71
122
  readOnly: true,
123
+ outputSchema: toolResultOutputSchema,
72
124
  annotations: {
73
125
  readOnlyHint: true,
74
126
  idempotentHint: true,
@@ -79,36 +131,31 @@ export const toolDefinitions = [
79
131
  .array(z.string().describe("Schema name to filter by"))
80
132
  .optional()
81
133
  .describe("Schemas to filter by (optional)"),
82
- databaseName: z
83
- .string()
84
- .optional()
85
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
134
+ databaseName: databaseNameSchema.optional(),
86
135
  })
87
136
  .passthrough(),
88
137
  },
89
138
  {
90
139
  tool: describeTableTool,
91
140
  readOnly: true,
141
+ outputSchema: toolResultOutputSchema,
92
142
  annotations: {
93
143
  readOnlyHint: true,
94
144
  },
95
145
  inputSchema: z
96
146
  .object({
97
- tableName: z.string().describe("Name of the table to describe"),
98
- schemaName: z
99
- .string()
147
+ tableName: tableNameSchema.describe("Name of the table to describe"),
148
+ schemaName: schemaNameSchema
100
149
  .optional()
101
150
  .describe("Schema containing the table (optional). Omit to search across schemas."),
102
- databaseName: z
103
- .string()
104
- .optional()
105
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
151
+ databaseName: databaseNameSchema.optional(),
106
152
  })
107
153
  .passthrough(),
108
154
  },
109
155
  {
110
156
  tool: listObjectsTool,
111
157
  readOnly: true,
158
+ outputSchema: toolResultOutputSchema,
112
159
  annotations: {
113
160
  readOnlyHint: true,
114
161
  idempotentHint: true,
@@ -119,44 +166,85 @@ export const toolDefinitions = [
119
166
  .array(z.enum(["table", "view", "procedure", "function", "trigger"]))
120
167
  .optional()
121
168
  .describe("Optional object types to include. Omit to list tables, views, procedures, functions, and triggers."),
122
- schemaName: z
123
- .string()
169
+ schemaName: schemaNameSchema
124
170
  .optional()
125
171
  .describe("Schema to filter by (optional)."),
126
- databaseName: z
127
- .string()
128
- .optional()
129
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
172
+ databaseName: databaseNameSchema.optional(),
130
173
  })
131
174
  .passthrough(),
132
175
  },
133
176
  {
134
177
  tool: describeObjectTool,
135
178
  readOnly: true,
179
+ outputSchema: toolResultOutputSchema,
136
180
  annotations: {
137
181
  readOnlyHint: true,
138
182
  },
139
183
  inputSchema: z
140
184
  .object({
141
- objectName: z.string().describe("Object name to describe."),
185
+ objectName: objectNameSchema.describe("Object name to describe."),
142
186
  objectTypes: z
143
187
  .array(z.enum(["table", "view", "procedure", "function", "trigger"]))
144
188
  .optional()
145
189
  .describe("Optional object types to narrow the lookup. Omit to search across supported object types."),
146
- schemaName: z
147
- .string()
190
+ schemaName: schemaNameSchema
148
191
  .optional()
149
192
  .describe("Schema containing the object (optional)."),
150
- databaseName: z
151
- .string()
152
- .optional()
153
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
193
+ databaseName: databaseNameSchema.optional(),
154
194
  })
155
195
  .passthrough(),
156
196
  },
197
+ {
198
+ tool: listForeignKeysTool,
199
+ readOnly: true,
200
+ outputSchema: toolResultOutputSchema,
201
+ annotations: {
202
+ readOnlyHint: true,
203
+ idempotentHint: true,
204
+ },
205
+ inputSchema: z
206
+ .object({
207
+ schemaName: schemaNameSchema
208
+ .optional()
209
+ .describe("Schema to filter by (optional)."),
210
+ databaseName: databaseNameSchema.optional(),
211
+ })
212
+ .strict(),
213
+ },
214
+ {
215
+ tool: describeRelationshipsTool,
216
+ readOnly: true,
217
+ outputSchema: toolResultOutputSchema,
218
+ annotations: {
219
+ readOnlyHint: true,
220
+ },
221
+ inputSchema: z
222
+ .object({
223
+ tableName: tableNameSchema,
224
+ schemaName: schemaNameSchema.optional(),
225
+ databaseName: databaseNameSchema.optional(),
226
+ })
227
+ .strict(),
228
+ },
229
+ {
230
+ tool: analyzeTableTool,
231
+ readOnly: true,
232
+ outputSchema: toolResultOutputSchema,
233
+ annotations: {
234
+ readOnlyHint: true,
235
+ },
236
+ inputSchema: z
237
+ .object({
238
+ tableName: tableNameSchema,
239
+ schemaName: schemaNameSchema.optional(),
240
+ databaseName: databaseNameSchema.optional(),
241
+ })
242
+ .strict(),
243
+ },
157
244
  {
158
245
  tool: readDataTool,
159
246
  readOnly: true,
247
+ outputSchema: toolResultOutputSchema,
160
248
  annotations: {
161
249
  readOnlyHint: true,
162
250
  },
@@ -165,24 +253,21 @@ export const toolDefinitions = [
165
253
  query: z
166
254
  .string()
167
255
  .describe("SQL SELECT query to execute (must start with SELECT and cannot contain destructive operations). Example: SELECT * FROM movies WHERE genre = 'comedy'"),
168
- databaseName: z
169
- .string()
170
- .optional()
171
- .describe("Name of the database to query (optional). Omit to use the default configured database."),
256
+ databaseName: databaseNameSchema.optional(),
172
257
  })
173
258
  .passthrough(),
174
259
  },
175
260
  {
176
261
  tool: searchDataTool,
177
262
  readOnly: true,
263
+ outputSchema: toolResultOutputSchema,
178
264
  annotations: {
179
265
  readOnlyHint: true,
180
266
  },
181
267
  inputSchema: z
182
268
  .object({
183
- tableName: z.string().describe("Name of the table to search"),
184
- schemaName: z
185
- .string()
269
+ tableName: tableNameSchema.describe("Name of the table to search"),
270
+ schemaName: schemaNameSchema
186
271
  .optional()
187
272
  .describe("Schema containing the table (optional). Omit to use the default schema resolution."),
188
273
  columns: z
@@ -195,16 +280,14 @@ export const toolDefinitions = [
195
280
  .number()
196
281
  .optional()
197
282
  .describe("Maximum number of rows to return (optional). Clamped to MAX_ROWS."),
198
- databaseName: z
199
- .string()
200
- .optional()
201
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
283
+ databaseName: databaseNameSchema.optional(),
202
284
  })
203
285
  .passthrough(),
204
286
  },
205
287
  {
206
288
  tool: explainQueryTool,
207
289
  readOnly: true,
290
+ outputSchema: toolResultOutputSchema,
208
291
  annotations: {
209
292
  readOnlyHint: true,
210
293
  },
@@ -213,16 +296,49 @@ export const toolDefinitions = [
213
296
  query: z
214
297
  .string()
215
298
  .describe("SQL SELECT query to analyze. The query must pass the same safety checks as read_data."),
216
- databaseName: z
217
- .string()
218
- .optional()
219
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
299
+ databaseName: databaseNameSchema.optional(),
220
300
  })
221
301
  .passthrough(),
222
302
  },
303
+ {
304
+ tool: previewUpdateTool,
305
+ readOnly: true,
306
+ outputSchema: toolResultOutputSchema,
307
+ annotations: {
308
+ readOnlyHint: true,
309
+ },
310
+ inputSchema: z
311
+ .object({
312
+ tableName: tableNameSchema,
313
+ schemaName: schemaNameSchema.optional(),
314
+ updates: recordSchema.describe("Key-value pairs of columns to update. Example: { status: 'active' }"),
315
+ filters: z.array(filterSchema),
316
+ previewLimit: z.number().optional(),
317
+ databaseName: databaseNameSchema.optional(),
318
+ })
319
+ .strict(),
320
+ },
321
+ {
322
+ tool: previewDeleteTool,
323
+ readOnly: true,
324
+ outputSchema: toolResultOutputSchema,
325
+ annotations: {
326
+ readOnlyHint: true,
327
+ },
328
+ inputSchema: z
329
+ .object({
330
+ tableName: tableNameSchema,
331
+ schemaName: schemaNameSchema.optional(),
332
+ filters: z.array(filterSchema),
333
+ previewLimit: z.number().optional(),
334
+ databaseName: databaseNameSchema.optional(),
335
+ })
336
+ .strict(),
337
+ },
223
338
  {
224
339
  tool: insertDataTool,
225
340
  readOnly: false,
341
+ outputSchema: toolResultOutputSchema,
226
342
  annotations: {
227
343
  destructiveHint: true,
228
344
  },
@@ -234,61 +350,80 @@ export const toolDefinitions = [
234
350
  data: z
235
351
  .union([recordSchema, z.array(recordSchema)])
236
352
  .describe("Single row object or array of row objects to insert. All rows in an array must share the same columns."),
237
- databaseName: z
238
- .string()
353
+ databaseName: databaseNameSchema.optional(),
354
+ confirmed: z
355
+ .boolean()
239
356
  .optional()
240
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
357
+ .describe("Set to true after reviewing the planned write."),
241
358
  })
242
359
  .strict(),
360
+ requiresConfirmation: true,
243
361
  },
244
362
  {
245
363
  tool: updateDataTool,
246
364
  readOnly: false,
365
+ outputSchema: toolResultOutputSchema,
247
366
  annotations: {
248
367
  destructiveHint: true,
249
368
  },
250
369
  inputSchema: z
251
370
  .object({
252
- tableName: z.string().describe("Name of the table to update"),
371
+ tableName: tableNameSchema.describe("Name of the table to update"),
372
+ schemaName: schemaNameSchema
373
+ .optional()
374
+ .describe("Schema containing the table (optional)."),
253
375
  updates: recordSchema.describe("Key-value pairs of columns to update. Example: { status: 'active' }"),
254
376
  filters: z
255
377
  .array(filterSchema)
256
378
  .describe("Structured filters combined with AND to identify which rows to update."),
257
- databaseName: z
379
+ databaseName: databaseNameSchema.optional(),
380
+ previewToken: z
258
381
  .string()
259
382
  .optional()
260
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
383
+ .describe("Token from preview_update (required when REQUIRE_WRITE_PREVIEW=true, default)."),
384
+ confirmed: z
385
+ .boolean()
386
+ .optional()
387
+ .describe("Set to true after reviewing preview_update."),
261
388
  })
262
389
  .strict(),
390
+ requiresConfirmation: true,
391
+ writePreviewTool: "preview_update",
263
392
  },
264
393
  {
265
394
  tool: deleteDataTool,
266
395
  readOnly: false,
396
+ outputSchema: toolResultOutputSchema,
267
397
  annotations: {
268
398
  destructiveHint: true,
269
399
  },
270
400
  inputSchema: z
271
401
  .object({
272
- tableName: z
273
- .string()
274
- .describe("Name of the table to delete rows from."),
275
- schemaName: z
276
- .string()
402
+ tableName: tableNameSchema.describe("Name of the table to delete rows from."),
403
+ schemaName: schemaNameSchema
277
404
  .optional()
278
405
  .describe("Schema containing the table (optional)."),
279
406
  filters: z
280
407
  .array(filterSchema)
281
408
  .describe("Structured filters combined with AND to target rows for deletion."),
282
- databaseName: z
409
+ databaseName: databaseNameSchema.optional(),
410
+ previewToken: z
283
411
  .string()
284
412
  .optional()
285
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
413
+ .describe("Token from preview_delete (required when REQUIRE_WRITE_PREVIEW=true, default)."),
414
+ confirmed: z
415
+ .boolean()
416
+ .optional()
417
+ .describe("Set to true after reviewing preview_delete."),
286
418
  })
287
419
  .strict(),
420
+ requiresConfirmation: true,
421
+ writePreviewTool: "preview_delete",
288
422
  },
289
423
  {
290
424
  tool: createTableTool,
291
425
  readOnly: false,
426
+ outputSchema: toolResultOutputSchema,
292
427
  annotations: {
293
428
  destructiveHint: true,
294
429
  },
@@ -298,7 +433,7 @@ export const toolDefinitions = [
298
433
  .string()
299
434
  .optional()
300
435
  .describe("Name of the schema for the new table (optional)."),
301
- tableName: z.string().describe("Name of the table to create"),
436
+ tableName: tableNameSchema.describe("Name of the table to create"),
302
437
  columns: z
303
438
  .array(z
304
439
  .object({
@@ -337,16 +472,20 @@ export const toolDefinitions = [
337
472
  })
338
473
  .strict())
339
474
  .describe("Array of validated column definitions."),
340
- databaseName: z
341
- .string()
475
+ databaseName: databaseNameSchema.optional(),
476
+ confirmed: z
477
+ .boolean()
342
478
  .optional()
343
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
479
+ .describe("Set to true after reviewing the planned DDL change."),
344
480
  })
345
481
  .strict(),
482
+ requiresConfirmation: true,
483
+ requiresDdl: true,
346
484
  },
347
485
  {
348
486
  tool: createIndexTool,
349
487
  readOnly: false,
488
+ outputSchema: toolResultOutputSchema,
350
489
  annotations: {
351
490
  destructiveHint: true,
352
491
  },
@@ -356,7 +495,7 @@ export const toolDefinitions = [
356
495
  .string()
357
496
  .optional()
358
497
  .describe("Name of the schema containing the table"),
359
- tableName: z.string().describe("Name of the table to create index on"),
498
+ tableName: tableNameSchema.describe("Name of the table to create index on"),
360
499
  indexName: z.string().describe("Name for the new index"),
361
500
  columns: z
362
501
  .array(z.string())
@@ -369,28 +508,35 @@ export const toolDefinitions = [
369
508
  .boolean()
370
509
  .optional()
371
510
  .describe("Whether the index should be clustered"),
372
- databaseName: z
373
- .string()
511
+ databaseName: databaseNameSchema.optional(),
512
+ confirmed: z
513
+ .boolean()
374
514
  .optional()
375
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
515
+ .describe("Set to true after reviewing the planned DDL change."),
376
516
  })
377
517
  .strict(),
518
+ requiresConfirmation: true,
519
+ requiresDdl: true,
378
520
  },
379
521
  {
380
522
  tool: dropTableTool,
381
523
  readOnly: false,
524
+ outputSchema: toolResultOutputSchema,
382
525
  annotations: {
383
526
  destructiveHint: true,
384
527
  },
385
528
  inputSchema: z
386
529
  .object({
387
- tableName: z.string().describe("Name of the table to drop"),
388
- databaseName: z
389
- .string()
530
+ tableName: tableNameSchema.describe("Name of the table to drop"),
531
+ databaseName: databaseNameSchema.optional(),
532
+ confirmed: z
533
+ .boolean()
390
534
  .optional()
391
- .describe("Name of the database to use (optional). Omit to use the default configured database."),
535
+ .describe("Set to true after reviewing the planned DDL change."),
392
536
  })
393
537
  .strict(),
538
+ requiresConfirmation: true,
539
+ requiresDdl: true,
394
540
  },
395
541
  ];
396
542
  export function getAvailableTools(isReadOnly) {
@@ -1 +1 @@
1
- {"version":3,"file":"toolRegistry.js","sourceRoot":"","sources":["../src/toolRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolRegistry.js","sourceRoot":"","sources":["../src/toolRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ interface AnalyzeTableParams {
2
+ tableName: string;
3
+ schemaName?: string;
4
+ databaseName?: string;
5
+ }
6
+ type AnalyzeRow = {
7
+ schemaName?: unknown;
8
+ tableName?: unknown;
9
+ rowCount?: unknown;
10
+ reservedMB?: unknown;
11
+ usedMB?: unknown;
12
+ };
13
+ type IndexRow = {
14
+ name?: unknown;
15
+ type?: unknown;
16
+ isUnique?: unknown;
17
+ isPrimaryKey?: unknown;
18
+ };
19
+ export declare function formatAnalyzeTableText(data: {
20
+ summary: AnalyzeRow | null;
21
+ indexes: IndexRow[];
22
+ }): string;
23
+ export declare class AnalyzeTableTool {
24
+ name: string;
25
+ description: string;
26
+ run(params: AnalyzeTableParams): Promise<{
27
+ success: boolean;
28
+ message: string;
29
+ data: import("../schema.js").AnalyzeTableResult;
30
+ } | {
31
+ success: boolean;
32
+ message: string;
33
+ data?: undefined;
34
+ }>;
35
+ }
36
+ export {};
37
+ //# sourceMappingURL=AnalyzeTableTool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AnalyzeTableTool.d.ts","sourceRoot":"","sources":["../../src/tools/AnalyzeTableTool.ts"],"names":[],"mappings":"AAEA,UAAU,kBAAkB;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,UAAU,GAAG;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAiBF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,QAAQ,EAAE,CAAC;CACrB,GAAG,MAAM,CAoCT;AAED,qBAAa,gBAAgB;IAC3B,IAAI,SAAmB;IACvB,WAAW,SACkD;IAEvD,GAAG,CAAC,MAAM,EAAE,kBAAkB;;;;;;;;;CA6BrC"}