@neverinfamous/postgres-mcp 2.0.0 → 2.2.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 (518) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +119 -46
  3. package/dist/__tests__/benchmarks/codemode.bench.js +3 -3
  4. package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -1
  5. package/dist/__tests__/benchmarks/connection-pool.bench.js +3 -3
  6. package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -1
  7. package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts +11 -0
  8. package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts.map +1 -0
  9. package/dist/__tests__/benchmarks/introspection-migration.bench.js +143 -0
  10. package/dist/__tests__/benchmarks/introspection-migration.bench.js.map +1 -0
  11. package/dist/__tests__/benchmarks/resource-prompts.bench.js +0 -64
  12. package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -1
  13. package/dist/__tests__/benchmarks/schema-parsing.bench.js +5 -5
  14. package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -1
  15. package/dist/__tests__/benchmarks/tool-filtering.bench.js +17 -8
  16. package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -1
  17. package/dist/__tests__/mocks/adapter.d.ts.map +1 -1
  18. package/dist/__tests__/mocks/adapter.js +2 -1
  19. package/dist/__tests__/mocks/adapter.js.map +1 -1
  20. package/dist/adapters/DatabaseAdapter.d.ts +6 -5
  21. package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
  22. package/dist/adapters/DatabaseAdapter.js +11 -20
  23. package/dist/adapters/DatabaseAdapter.js.map +1 -1
  24. package/dist/adapters/postgresql/PostgresAdapter.d.ts +5 -26
  25. package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
  26. package/dist/adapters/postgresql/PostgresAdapter.js +31 -526
  27. package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
  28. package/dist/adapters/postgresql/prompts/index.js +1 -1
  29. package/dist/adapters/postgresql/prompts/index.js.map +1 -1
  30. package/dist/adapters/postgresql/resources/index.d.ts +1 -1
  31. package/dist/adapters/postgresql/resources/index.js +3 -3
  32. package/dist/adapters/postgresql/resources/index.js.map +1 -1
  33. package/dist/adapters/postgresql/schema-operations.d.ts +71 -0
  34. package/dist/adapters/postgresql/schema-operations.d.ts.map +1 -0
  35. package/dist/adapters/postgresql/schema-operations.js +561 -0
  36. package/dist/adapters/postgresql/schema-operations.js.map +1 -0
  37. package/dist/adapters/postgresql/schemas/admin.d.ts +4 -4
  38. package/dist/adapters/postgresql/schemas/admin.js +4 -4
  39. package/dist/adapters/postgresql/schemas/admin.js.map +1 -1
  40. package/dist/adapters/postgresql/schemas/backup.d.ts +2 -2
  41. package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
  42. package/dist/adapters/postgresql/schemas/backup.js +1 -3
  43. package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
  44. package/dist/adapters/postgresql/schemas/core/index.d.ts +6 -0
  45. package/dist/adapters/postgresql/schemas/core/index.d.ts.map +1 -0
  46. package/dist/adapters/postgresql/schemas/core/index.js +6 -0
  47. package/dist/adapters/postgresql/schemas/core/index.js.map +1 -0
  48. package/dist/adapters/postgresql/schemas/{core.d.ts → core/queries.d.ts} +16 -171
  49. package/dist/adapters/postgresql/schemas/core/queries.d.ts.map +1 -0
  50. package/dist/adapters/postgresql/schemas/{core.js → core/queries.js} +5 -213
  51. package/dist/adapters/postgresql/schemas/core/queries.js.map +1 -0
  52. package/dist/adapters/postgresql/schemas/core/transactions.d.ts +149 -0
  53. package/dist/adapters/postgresql/schemas/core/transactions.d.ts.map +1 -0
  54. package/dist/adapters/postgresql/schemas/core/transactions.js +239 -0
  55. package/dist/adapters/postgresql/schemas/core/transactions.js.map +1 -0
  56. package/dist/adapters/postgresql/schemas/cron.d.ts +12 -12
  57. package/dist/adapters/postgresql/schemas/cron.d.ts.map +1 -1
  58. package/dist/adapters/postgresql/schemas/cron.js +38 -10
  59. package/dist/adapters/postgresql/schemas/cron.js.map +1 -1
  60. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts +222 -0
  61. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts.map +1 -0
  62. package/dist/adapters/postgresql/schemas/extensions/citext.js +306 -0
  63. package/dist/adapters/postgresql/schemas/extensions/citext.js.map +1 -0
  64. package/dist/adapters/postgresql/schemas/extensions/index.d.ts +15 -0
  65. package/dist/adapters/postgresql/schemas/extensions/index.d.ts.map +1 -0
  66. package/dist/adapters/postgresql/schemas/extensions/index.js +20 -0
  67. package/dist/adapters/postgresql/schemas/extensions/index.js.map +1 -0
  68. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts +164 -0
  69. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts.map +1 -0
  70. package/dist/adapters/postgresql/schemas/extensions/kcache.js +225 -0
  71. package/dist/adapters/postgresql/schemas/extensions/kcache.js.map +1 -0
  72. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts +253 -0
  73. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts.map +1 -0
  74. package/dist/adapters/postgresql/schemas/extensions/ltree.js +430 -0
  75. package/dist/adapters/postgresql/schemas/extensions/ltree.js.map +1 -0
  76. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts +251 -0
  77. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts.map +1 -0
  78. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js +294 -0
  79. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js.map +1 -0
  80. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts +10 -0
  81. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts.map +1 -0
  82. package/dist/adapters/postgresql/schemas/extensions/shared.js +15 -0
  83. package/dist/adapters/postgresql/schemas/extensions/shared.js.map +1 -0
  84. package/dist/adapters/postgresql/schemas/index.d.ts +6 -6
  85. package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
  86. package/dist/adapters/postgresql/schemas/index.js +8 -8
  87. package/dist/adapters/postgresql/schemas/index.js.map +1 -1
  88. package/dist/adapters/postgresql/schemas/introspection.d.ts +19 -42
  89. package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -1
  90. package/dist/adapters/postgresql/schemas/introspection.js +72 -27
  91. package/dist/adapters/postgresql/schemas/introspection.js.map +1 -1
  92. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts +270 -0
  93. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts.map +1 -0
  94. package/dist/adapters/postgresql/schemas/jsonb/advanced.js +371 -0
  95. package/dist/adapters/postgresql/schemas/jsonb/advanced.js.map +1 -0
  96. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts +283 -0
  97. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts.map +1 -0
  98. package/dist/adapters/postgresql/schemas/jsonb/basic.js +456 -0
  99. package/dist/adapters/postgresql/schemas/jsonb/basic.js.map +1 -0
  100. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts +6 -0
  101. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts.map +1 -0
  102. package/dist/adapters/postgresql/schemas/jsonb/index.js +6 -0
  103. package/dist/adapters/postgresql/schemas/jsonb/index.js.map +1 -0
  104. package/dist/adapters/postgresql/schemas/monitoring.d.ts +4 -4
  105. package/dist/adapters/postgresql/schemas/monitoring.js +2 -2
  106. package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
  107. package/dist/adapters/postgresql/schemas/partitioning.d.ts +14 -14
  108. package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
  109. package/dist/adapters/postgresql/schemas/partitioning.js +64 -46
  110. package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
  111. package/dist/adapters/postgresql/schemas/partman.d.ts +16 -14
  112. package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
  113. package/dist/adapters/postgresql/schemas/partman.js +9 -9
  114. package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
  115. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts +429 -0
  116. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts.map +1 -0
  117. package/dist/adapters/postgresql/schemas/postgis/advanced.js +495 -0
  118. package/dist/adapters/postgresql/schemas/postgis/advanced.js.map +1 -0
  119. package/dist/adapters/postgresql/schemas/{postgis.d.ts → postgis/basic.d.ts} +1 -423
  120. package/dist/adapters/postgresql/schemas/postgis/basic.d.ts.map +1 -0
  121. package/dist/adapters/postgresql/schemas/{postgis.js → postgis/basic.js} +1 -486
  122. package/dist/adapters/postgresql/schemas/postgis/basic.js.map +1 -0
  123. package/dist/adapters/postgresql/schemas/postgis/index.d.ts +6 -0
  124. package/dist/adapters/postgresql/schemas/postgis/index.d.ts.map +1 -0
  125. package/dist/adapters/postgresql/schemas/postgis/index.js +6 -0
  126. package/dist/adapters/postgresql/schemas/postgis/index.js.map +1 -0
  127. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +35 -25
  128. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
  129. package/dist/adapters/postgresql/schemas/schema-mgmt.js +57 -19
  130. package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
  131. package/dist/adapters/postgresql/schemas/stats/index.d.ts +6 -0
  132. package/dist/adapters/postgresql/schemas/stats/index.d.ts.map +1 -0
  133. package/dist/adapters/postgresql/schemas/stats/index.js +6 -0
  134. package/dist/adapters/postgresql/schemas/stats/index.js.map +1 -0
  135. package/dist/adapters/postgresql/schemas/stats/input.d.ts +260 -0
  136. package/dist/adapters/postgresql/schemas/stats/input.d.ts.map +1 -0
  137. package/dist/adapters/postgresql/schemas/{stats.js → stats/input.js} +2 -331
  138. package/dist/adapters/postgresql/schemas/stats/input.js.map +1 -0
  139. package/dist/adapters/postgresql/schemas/{stats.d.ts → stats/output.d.ts} +3 -246
  140. package/dist/adapters/postgresql/schemas/stats/output.d.ts.map +1 -0
  141. package/dist/adapters/postgresql/schemas/stats/output.js +334 -0
  142. package/dist/adapters/postgresql/schemas/stats/output.js.map +1 -0
  143. package/dist/adapters/postgresql/schemas/text-search.d.ts +18 -18
  144. package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
  145. package/dist/adapters/postgresql/schemas/text-search.js +12 -27
  146. package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
  147. package/dist/adapters/postgresql/schemas/vector.d.ts +10 -10
  148. package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -1
  149. package/dist/adapters/postgresql/schemas/vector.js +9 -15
  150. package/dist/adapters/postgresql/schemas/vector.js.map +1 -1
  151. package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
  152. package/dist/adapters/postgresql/tools/backup/dump.js +95 -76
  153. package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
  154. package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -1
  155. package/dist/adapters/postgresql/tools/backup/planning.js +345 -287
  156. package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -1
  157. package/dist/adapters/postgresql/tools/citext/analysis.d.ts +24 -0
  158. package/dist/adapters/postgresql/tools/citext/analysis.d.ts.map +1 -0
  159. package/dist/adapters/postgresql/tools/{citext.js → citext/analysis.js} +50 -232
  160. package/dist/adapters/postgresql/tools/citext/analysis.js.map +1 -0
  161. package/dist/adapters/postgresql/tools/citext/index.d.ts +15 -0
  162. package/dist/adapters/postgresql/tools/citext/index.d.ts.map +1 -0
  163. package/dist/adapters/postgresql/tools/citext/index.js +23 -0
  164. package/dist/adapters/postgresql/tools/citext/index.js.map +1 -0
  165. package/dist/adapters/postgresql/tools/citext/setup.d.ts +16 -0
  166. package/dist/adapters/postgresql/tools/citext/setup.d.ts.map +1 -0
  167. package/dist/adapters/postgresql/tools/citext/setup.js +193 -0
  168. package/dist/adapters/postgresql/tools/citext/setup.js.map +1 -0
  169. package/dist/adapters/postgresql/tools/codemode/index.js +1 -1
  170. package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
  171. package/dist/adapters/postgresql/tools/core/convenience.d.ts +12 -22
  172. package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
  173. package/dist/adapters/postgresql/tools/core/convenience.js +100 -210
  174. package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
  175. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts +1 -0
  176. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts.map +1 -1
  177. package/dist/adapters/postgresql/tools/core/error-helpers.js +8 -1
  178. package/dist/adapters/postgresql/tools/core/error-helpers.js.map +1 -1
  179. package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -1
  180. package/dist/adapters/postgresql/tools/core/health.js +124 -114
  181. package/dist/adapters/postgresql/tools/core/health.js.map +1 -1
  182. package/dist/adapters/postgresql/tools/core/index.d.ts +2 -1
  183. package/dist/adapters/postgresql/tools/core/index.d.ts.map +1 -1
  184. package/dist/adapters/postgresql/tools/core/index.js +3 -2
  185. package/dist/adapters/postgresql/tools/core/index.js.map +1 -1
  186. package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
  187. package/dist/adapters/postgresql/tools/core/indexes.js +151 -127
  188. package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
  189. package/dist/adapters/postgresql/tools/core/objects.d.ts.map +1 -1
  190. package/dist/adapters/postgresql/tools/core/objects.js +186 -161
  191. package/dist/adapters/postgresql/tools/core/objects.js.map +1 -1
  192. package/dist/adapters/postgresql/tools/core/query.d.ts.map +1 -1
  193. package/dist/adapters/postgresql/tools/core/query.js +37 -25
  194. package/dist/adapters/postgresql/tools/core/query.js.map +1 -1
  195. package/dist/adapters/postgresql/tools/core/schemas.d.ts +6 -3
  196. package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -1
  197. package/dist/adapters/postgresql/tools/core/schemas.js +11 -2
  198. package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -1
  199. package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
  200. package/dist/adapters/postgresql/tools/core/tables.js +156 -129
  201. package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
  202. package/dist/adapters/postgresql/tools/core/utility.d.ts +26 -0
  203. package/dist/adapters/postgresql/tools/core/utility.d.ts.map +1 -0
  204. package/dist/adapters/postgresql/tools/core/utility.js +174 -0
  205. package/dist/adapters/postgresql/tools/core/utility.js.map +1 -0
  206. package/dist/adapters/postgresql/tools/cron.js +90 -43
  207. package/dist/adapters/postgresql/tools/cron.js.map +1 -1
  208. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts +12 -0
  209. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts.map +1 -0
  210. package/dist/adapters/postgresql/tools/introspection/analysis.js +605 -0
  211. package/dist/adapters/postgresql/tools/introspection/analysis.js.map +1 -0
  212. package/dist/adapters/postgresql/tools/introspection/graph.d.ts +55 -0
  213. package/dist/adapters/postgresql/tools/introspection/graph.d.ts.map +1 -0
  214. package/dist/adapters/postgresql/tools/introspection/graph.js +621 -0
  215. package/dist/adapters/postgresql/tools/introspection/graph.js.map +1 -0
  216. package/dist/adapters/postgresql/tools/introspection/index.d.ts +21 -0
  217. package/dist/adapters/postgresql/tools/introspection/index.d.ts.map +1 -0
  218. package/dist/adapters/postgresql/tools/introspection/index.js +31 -0
  219. package/dist/adapters/postgresql/tools/introspection/index.js.map +1 -0
  220. package/dist/adapters/postgresql/tools/introspection/migration.d.ts +15 -0
  221. package/dist/adapters/postgresql/tools/introspection/migration.d.ts.map +1 -0
  222. package/dist/adapters/postgresql/tools/introspection/migration.js +575 -0
  223. package/dist/adapters/postgresql/tools/introspection/migration.js.map +1 -0
  224. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts +20 -0
  225. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts.map +1 -0
  226. package/dist/adapters/postgresql/tools/jsonb/analytics.js +367 -0
  227. package/dist/adapters/postgresql/tools/jsonb/analytics.js.map +1 -0
  228. package/dist/adapters/postgresql/tools/jsonb/index.d.ts +4 -2
  229. package/dist/adapters/postgresql/tools/jsonb/index.d.ts.map +1 -1
  230. package/dist/adapters/postgresql/tools/jsonb/index.js +8 -4
  231. package/dist/adapters/postgresql/tools/jsonb/index.js.map +1 -1
  232. package/dist/adapters/postgresql/tools/jsonb/read.d.ts +38 -0
  233. package/dist/adapters/postgresql/tools/jsonb/read.d.ts.map +1 -0
  234. package/dist/adapters/postgresql/tools/jsonb/{basic.js → read.js} +41 -482
  235. package/dist/adapters/postgresql/tools/jsonb/read.js.map +1 -0
  236. package/dist/adapters/postgresql/tools/jsonb/{advanced.d.ts → transform.d.ts} +1 -13
  237. package/dist/adapters/postgresql/tools/jsonb/transform.d.ts.map +1 -0
  238. package/dist/adapters/postgresql/tools/jsonb/{advanced.js → transform.js} +26 -357
  239. package/dist/adapters/postgresql/tools/jsonb/transform.js.map +1 -0
  240. package/dist/adapters/postgresql/tools/jsonb/write.d.ts +14 -0
  241. package/dist/adapters/postgresql/tools/jsonb/write.d.ts.map +1 -0
  242. package/dist/adapters/postgresql/tools/jsonb/write.js +468 -0
  243. package/dist/adapters/postgresql/tools/jsonb/write.js.map +1 -0
  244. package/dist/adapters/postgresql/tools/kcache.d.ts.map +1 -1
  245. package/dist/adapters/postgresql/tools/kcache.js +116 -51
  246. package/dist/adapters/postgresql/tools/kcache.js.map +1 -1
  247. package/dist/adapters/postgresql/tools/ltree.js +346 -260
  248. package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
  249. package/dist/adapters/postgresql/tools/migration/index.d.ts +15 -0
  250. package/dist/adapters/postgresql/tools/migration/index.d.ts.map +1 -0
  251. package/dist/adapters/postgresql/tools/migration/index.js +23 -0
  252. package/dist/adapters/postgresql/tools/migration/index.js.map +1 -0
  253. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts +15 -0
  254. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts.map +1 -0
  255. package/dist/adapters/postgresql/tools/{monitoring.js → monitoring/analysis.js} +24 -359
  256. package/dist/adapters/postgresql/tools/monitoring/analysis.js.map +1 -0
  257. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts +17 -0
  258. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts.map +1 -0
  259. package/dist/adapters/postgresql/tools/monitoring/basic.js +432 -0
  260. package/dist/adapters/postgresql/tools/monitoring/basic.js.map +1 -0
  261. package/dist/adapters/postgresql/tools/monitoring/index.d.ts +16 -0
  262. package/dist/adapters/postgresql/tools/monitoring/index.d.ts.map +1 -0
  263. package/dist/adapters/postgresql/tools/monitoring/index.js +31 -0
  264. package/dist/adapters/postgresql/tools/monitoring/index.js.map +1 -0
  265. package/dist/adapters/postgresql/tools/partitioning/index.d.ts +15 -0
  266. package/dist/adapters/postgresql/tools/partitioning/index.d.ts.map +1 -0
  267. package/dist/adapters/postgresql/tools/partitioning/index.js +23 -0
  268. package/dist/adapters/postgresql/tools/partitioning/index.js.map +1 -0
  269. package/dist/adapters/postgresql/tools/partitioning/info.d.ts +11 -0
  270. package/dist/adapters/postgresql/tools/partitioning/info.d.ts.map +1 -0
  271. package/dist/adapters/postgresql/tools/partitioning/info.js +302 -0
  272. package/dist/adapters/postgresql/tools/partitioning/info.js.map +1 -0
  273. package/dist/adapters/postgresql/tools/partitioning/management.d.ts +28 -0
  274. package/dist/adapters/postgresql/tools/partitioning/management.d.ts.map +1 -0
  275. package/dist/adapters/postgresql/tools/{partitioning.js → partitioning/management.js} +48 -307
  276. package/dist/adapters/postgresql/tools/partitioning/management.js.map +1 -0
  277. package/dist/adapters/postgresql/tools/partman/helpers.d.ts +29 -0
  278. package/dist/adapters/postgresql/tools/partman/helpers.d.ts.map +1 -0
  279. package/dist/adapters/postgresql/tools/partman/helpers.js +59 -0
  280. package/dist/adapters/postgresql/tools/partman/helpers.js.map +1 -0
  281. package/dist/adapters/postgresql/tools/partman/index.d.ts +2 -1
  282. package/dist/adapters/postgresql/tools/partman/index.d.ts.map +1 -1
  283. package/dist/adapters/postgresql/tools/partman/index.js +4 -2
  284. package/dist/adapters/postgresql/tools/partman/index.js.map +1 -1
  285. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts +20 -0
  286. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts.map +1 -0
  287. package/dist/adapters/postgresql/tools/partman/maintenance.js +496 -0
  288. package/dist/adapters/postgresql/tools/partman/maintenance.js.map +1 -0
  289. package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
  290. package/dist/adapters/postgresql/tools/partman/management.js +438 -383
  291. package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
  292. package/dist/adapters/postgresql/tools/partman/operations.d.ts +1 -13
  293. package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
  294. package/dist/adapters/postgresql/tools/partman/operations.js +171 -652
  295. package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
  296. package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
  297. package/dist/adapters/postgresql/tools/performance/analysis.js +69 -42
  298. package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
  299. package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts +18 -0
  300. package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts.map +1 -0
  301. package/dist/adapters/postgresql/tools/performance/anomaly-detection.js +533 -0
  302. package/dist/adapters/postgresql/tools/performance/anomaly-detection.js.map +1 -0
  303. package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts +11 -0
  304. package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts.map +1 -0
  305. package/dist/adapters/postgresql/tools/performance/diagnostics.js +332 -0
  306. package/dist/adapters/postgresql/tools/performance/diagnostics.js.map +1 -0
  307. package/dist/adapters/postgresql/tools/performance/index.d.ts +1 -1
  308. package/dist/adapters/postgresql/tools/performance/index.d.ts.map +1 -1
  309. package/dist/adapters/postgresql/tools/performance/index.js +7 -1
  310. package/dist/adapters/postgresql/tools/performance/index.js.map +1 -1
  311. package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
  312. package/dist/adapters/postgresql/tools/performance/monitoring.js +80 -55
  313. package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
  314. package/dist/adapters/postgresql/tools/performance/optimization.d.ts.map +1 -1
  315. package/dist/adapters/postgresql/tools/performance/optimization.js +18 -11
  316. package/dist/adapters/postgresql/tools/performance/optimization.js.map +1 -1
  317. package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
  318. package/dist/adapters/postgresql/tools/performance/stats.js +439 -318
  319. package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
  320. package/dist/adapters/postgresql/tools/pgcrypto.d.ts.map +1 -1
  321. package/dist/adapters/postgresql/tools/pgcrypto.js +45 -77
  322. package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
  323. package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
  324. package/dist/adapters/postgresql/tools/postgis/basic.js +121 -93
  325. package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
  326. package/dist/adapters/postgresql/tools/schema/index.d.ts +16 -0
  327. package/dist/adapters/postgresql/tools/schema/index.d.ts.map +1 -0
  328. package/dist/adapters/postgresql/tools/schema/index.js +32 -0
  329. package/dist/adapters/postgresql/tools/schema/index.js.map +1 -0
  330. package/dist/adapters/postgresql/tools/schema/objects.d.ts +15 -0
  331. package/dist/adapters/postgresql/tools/schema/objects.d.ts.map +1 -0
  332. package/dist/adapters/postgresql/tools/schema/objects.js +378 -0
  333. package/dist/adapters/postgresql/tools/schema/objects.js.map +1 -0
  334. package/dist/adapters/postgresql/tools/schema/views.d.ts +15 -0
  335. package/dist/adapters/postgresql/tools/schema/views.d.ts.map +1 -0
  336. package/dist/adapters/postgresql/tools/{schema.js → schema/views.js} +64 -386
  337. package/dist/adapters/postgresql/tools/schema/views.js.map +1 -0
  338. package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
  339. package/dist/adapters/postgresql/tools/stats/advanced.js +1 -218
  340. package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
  341. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts +33 -0
  342. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts.map +1 -0
  343. package/dist/adapters/postgresql/tools/stats/math-utils.js +225 -0
  344. package/dist/adapters/postgresql/tools/stats/math-utils.js.map +1 -0
  345. package/dist/adapters/postgresql/tools/text/index.d.ts +16 -0
  346. package/dist/adapters/postgresql/tools/text/index.d.ts.map +1 -0
  347. package/dist/adapters/postgresql/tools/text/index.js +33 -0
  348. package/dist/adapters/postgresql/tools/text/index.js.map +1 -0
  349. package/dist/adapters/postgresql/tools/text/matching.d.ts +17 -0
  350. package/dist/adapters/postgresql/tools/text/matching.d.ts.map +1 -0
  351. package/dist/adapters/postgresql/tools/text/matching.js +565 -0
  352. package/dist/adapters/postgresql/tools/text/matching.js.map +1 -0
  353. package/dist/adapters/postgresql/tools/text/search.d.ts +17 -0
  354. package/dist/adapters/postgresql/tools/text/search.d.ts.map +1 -0
  355. package/dist/adapters/postgresql/tools/text/search.js +653 -0
  356. package/dist/adapters/postgresql/tools/text/search.js.map +1 -0
  357. package/dist/adapters/postgresql/tools/transactions.d.ts.map +1 -1
  358. package/dist/adapters/postgresql/tools/transactions.js +11 -27
  359. package/dist/adapters/postgresql/tools/transactions.js.map +1 -1
  360. package/dist/adapters/postgresql/tools/vector/{basic.d.ts → data.d.ts} +10 -8
  361. package/dist/adapters/postgresql/tools/vector/data.d.ts.map +1 -0
  362. package/dist/adapters/postgresql/tools/vector/data.js +540 -0
  363. package/dist/adapters/postgresql/tools/vector/data.js.map +1 -0
  364. package/dist/adapters/postgresql/tools/vector/index.d.ts.map +1 -1
  365. package/dist/adapters/postgresql/tools/vector/index.js +6 -2
  366. package/dist/adapters/postgresql/tools/vector/index.js.map +1 -1
  367. package/dist/adapters/postgresql/tools/vector/management.d.ts +11 -0
  368. package/dist/adapters/postgresql/tools/vector/management.d.ts.map +1 -0
  369. package/dist/adapters/postgresql/tools/vector/management.js +425 -0
  370. package/dist/adapters/postgresql/tools/vector/management.js.map +1 -0
  371. package/dist/adapters/postgresql/tools/vector/query.d.ts +14 -0
  372. package/dist/adapters/postgresql/tools/vector/query.d.ts.map +1 -0
  373. package/dist/adapters/postgresql/tools/vector/query.js +767 -0
  374. package/dist/adapters/postgresql/tools/vector/query.js.map +1 -0
  375. package/dist/adapters/postgresql/tools/vector/{advanced.d.ts → search-advanced.d.ts} +4 -5
  376. package/dist/adapters/postgresql/tools/vector/search-advanced.d.ts.map +1 -0
  377. package/dist/adapters/postgresql/tools/vector/search-advanced.js +626 -0
  378. package/dist/adapters/postgresql/tools/vector/search-advanced.js.map +1 -0
  379. package/dist/auth/scopes.d.ts.map +1 -1
  380. package/dist/auth/scopes.js +3 -1
  381. package/dist/auth/scopes.js.map +1 -1
  382. package/dist/cli/args.d.ts +3 -2
  383. package/dist/cli/args.d.ts.map +1 -1
  384. package/dist/cli/args.js +4 -3
  385. package/dist/cli/args.js.map +1 -1
  386. package/dist/cli.js +16 -4
  387. package/dist/cli.js.map +1 -1
  388. package/dist/codemode/api/aliases.d.ts +14 -0
  389. package/dist/codemode/api/aliases.d.ts.map +1 -0
  390. package/dist/codemode/api/aliases.js +503 -0
  391. package/dist/codemode/api/aliases.js.map +1 -0
  392. package/dist/codemode/api/group-api.d.ts +23 -0
  393. package/dist/codemode/api/group-api.d.ts.map +1 -0
  394. package/dist/codemode/api/group-api.js +179 -0
  395. package/dist/codemode/api/group-api.js.map +1 -0
  396. package/dist/codemode/{api.d.ts → api/index.d.ts} +5 -4
  397. package/dist/codemode/api/index.d.ts.map +1 -0
  398. package/dist/codemode/api/index.js +195 -0
  399. package/dist/codemode/api/index.js.map +1 -0
  400. package/dist/codemode/api/maps.d.ts +47 -0
  401. package/dist/codemode/api/maps.d.ts.map +1 -0
  402. package/dist/codemode/api/maps.js +529 -0
  403. package/dist/codemode/api/maps.js.map +1 -0
  404. package/dist/codemode/api/normalize.d.ts +13 -0
  405. package/dist/codemode/api/normalize.d.ts.map +1 -0
  406. package/dist/codemode/api/normalize.js +120 -0
  407. package/dist/codemode/api/normalize.js.map +1 -0
  408. package/dist/codemode/index.d.ts +1 -1
  409. package/dist/codemode/index.d.ts.map +1 -1
  410. package/dist/codemode/index.js +1 -1
  411. package/dist/codemode/index.js.map +1 -1
  412. package/dist/codemode/sandbox.d.ts.map +1 -1
  413. package/dist/codemode/sandbox.js +8 -25
  414. package/dist/codemode/sandbox.js.map +1 -1
  415. package/dist/filtering/ToolConstants.d.ts +11 -11
  416. package/dist/filtering/ToolConstants.d.ts.map +1 -1
  417. package/dist/filtering/ToolConstants.js +28 -15
  418. package/dist/filtering/ToolConstants.js.map +1 -1
  419. package/dist/filtering/ToolFilter.d.ts +0 -32
  420. package/dist/filtering/ToolFilter.d.ts.map +1 -1
  421. package/dist/filtering/ToolFilter.js +0 -43
  422. package/dist/filtering/ToolFilter.js.map +1 -1
  423. package/dist/server/McpServer.d.ts +1 -1
  424. package/dist/server/McpServer.d.ts.map +1 -1
  425. package/dist/server/McpServer.js +1 -2
  426. package/dist/server/McpServer.js.map +1 -1
  427. package/dist/transports/http.d.ts +55 -10
  428. package/dist/transports/http.d.ts.map +1 -1
  429. package/dist/transports/http.js +301 -50
  430. package/dist/transports/http.js.map +1 -1
  431. package/dist/types/filtering.d.ts +1 -1
  432. package/dist/types/filtering.d.ts.map +1 -1
  433. package/dist/types/index.d.ts +2 -2
  434. package/dist/types/index.d.ts.map +1 -1
  435. package/dist/types/index.js.map +1 -1
  436. package/dist/types/mcp.d.ts +0 -21
  437. package/dist/types/mcp.d.ts.map +1 -1
  438. package/dist/types/schema.d.ts +0 -79
  439. package/dist/types/schema.d.ts.map +1 -1
  440. package/dist/utils/fts-config.d.ts +0 -6
  441. package/dist/utils/fts-config.d.ts.map +1 -1
  442. package/dist/utils/fts-config.js +1 -1
  443. package/dist/utils/fts-config.js.map +1 -1
  444. package/dist/utils/icons.d.ts.map +1 -1
  445. package/dist/utils/icons.js +5 -0
  446. package/dist/utils/icons.js.map +1 -1
  447. package/dist/utils/identifiers.d.ts.map +1 -1
  448. package/dist/utils/identifiers.js +6 -6
  449. package/dist/utils/identifiers.js.map +1 -1
  450. package/dist/utils/logger.d.ts +6 -6
  451. package/dist/utils/logger.d.ts.map +1 -1
  452. package/dist/utils/logger.js +18 -15
  453. package/dist/utils/logger.js.map +1 -1
  454. package/dist/utils/progress-utils.d.ts +3 -14
  455. package/dist/utils/progress-utils.d.ts.map +1 -1
  456. package/dist/utils/progress-utils.js +2 -21
  457. package/dist/utils/progress-utils.js.map +1 -1
  458. package/dist/utils/version.d.ts +9 -0
  459. package/dist/utils/version.d.ts.map +1 -0
  460. package/dist/utils/version.js +12 -0
  461. package/dist/utils/version.js.map +1 -0
  462. package/dist/utils/where-clause.d.ts +4 -0
  463. package/dist/utils/where-clause.d.ts.map +1 -1
  464. package/dist/utils/where-clause.js +16 -0
  465. package/dist/utils/where-clause.js.map +1 -1
  466. package/package.json +6 -4
  467. package/dist/adapters/postgresql/schemas/core.d.ts.map +0 -1
  468. package/dist/adapters/postgresql/schemas/core.js.map +0 -1
  469. package/dist/adapters/postgresql/schemas/extensions.d.ts +0 -852
  470. package/dist/adapters/postgresql/schemas/extensions.d.ts.map +0 -1
  471. package/dist/adapters/postgresql/schemas/extensions.js +0 -1202
  472. package/dist/adapters/postgresql/schemas/extensions.js.map +0 -1
  473. package/dist/adapters/postgresql/schemas/jsonb.d.ts +0 -541
  474. package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +0 -1
  475. package/dist/adapters/postgresql/schemas/jsonb.js +0 -814
  476. package/dist/adapters/postgresql/schemas/jsonb.js.map +0 -1
  477. package/dist/adapters/postgresql/schemas/postgis.d.ts.map +0 -1
  478. package/dist/adapters/postgresql/schemas/postgis.js.map +0 -1
  479. package/dist/adapters/postgresql/schemas/stats.d.ts.map +0 -1
  480. package/dist/adapters/postgresql/schemas/stats.js.map +0 -1
  481. package/dist/adapters/postgresql/tools/citext.d.ts +0 -18
  482. package/dist/adapters/postgresql/tools/citext.d.ts.map +0 -1
  483. package/dist/adapters/postgresql/tools/citext.js.map +0 -1
  484. package/dist/adapters/postgresql/tools/introspection.d.ts +0 -15
  485. package/dist/adapters/postgresql/tools/introspection.d.ts.map +0 -1
  486. package/dist/adapters/postgresql/tools/introspection.js +0 -1682
  487. package/dist/adapters/postgresql/tools/introspection.js.map +0 -1
  488. package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +0 -1
  489. package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +0 -1
  490. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts +0 -20
  491. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +0 -1
  492. package/dist/adapters/postgresql/tools/jsonb/basic.js.map +0 -1
  493. package/dist/adapters/postgresql/tools/monitoring.d.ts +0 -13
  494. package/dist/adapters/postgresql/tools/monitoring.d.ts.map +0 -1
  495. package/dist/adapters/postgresql/tools/monitoring.js.map +0 -1
  496. package/dist/adapters/postgresql/tools/partitioning.d.ts +0 -13
  497. package/dist/adapters/postgresql/tools/partitioning.d.ts.map +0 -1
  498. package/dist/adapters/postgresql/tools/partitioning.js.map +0 -1
  499. package/dist/adapters/postgresql/tools/schema.d.ts +0 -13
  500. package/dist/adapters/postgresql/tools/schema.d.ts.map +0 -1
  501. package/dist/adapters/postgresql/tools/schema.js.map +0 -1
  502. package/dist/adapters/postgresql/tools/text.d.ts +0 -13
  503. package/dist/adapters/postgresql/tools/text.d.ts.map +0 -1
  504. package/dist/adapters/postgresql/tools/text.js +0 -1082
  505. package/dist/adapters/postgresql/tools/text.js.map +0 -1
  506. package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +0 -1
  507. package/dist/adapters/postgresql/tools/vector/advanced.js +0 -958
  508. package/dist/adapters/postgresql/tools/vector/advanced.js.map +0 -1
  509. package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +0 -1
  510. package/dist/adapters/postgresql/tools/vector/basic.js +0 -1165
  511. package/dist/adapters/postgresql/tools/vector/basic.js.map +0 -1
  512. package/dist/codemode/api.d.ts.map +0 -1
  513. package/dist/codemode/api.js +0 -1544
  514. package/dist/codemode/api.js.map +0 -1
  515. package/dist/utils/promptGenerator.d.ts +0 -20
  516. package/dist/utils/promptGenerator.d.ts.map +0 -1
  517. package/dist/utils/promptGenerator.js +0 -81
  518. package/dist/utils/promptGenerator.js.map +0 -1
@@ -1,17 +1,17 @@
1
1
  /**
2
- * PostgreSQL Schema Management Tools
2
+ * PostgreSQL Schema Tools - Views, Functions, Triggers & Constraints
3
3
  *
4
- * Schema DDL operations: schemas, sequences, views, functions, triggers.
5
- * 12 tools total.
4
+ * Listing and CRUD for views, functions, triggers, and constraints.
5
+ * 6 tools total.
6
6
  */
7
7
  import { z } from "zod";
8
- import { readOnly, write, destructive } from "../../../utils/annotations.js";
9
- import { getToolIcons } from "../../../utils/icons.js";
10
- import { sanitizeIdentifier } from "../../../utils/identifiers.js";
11
- import { formatPostgresError } from "./core/error-helpers.js";
12
- import { CreateSchemaSchema, DropSchemaSchema, CreateSequenceSchemaBase, CreateSequenceSchema, DropSequenceSchemaBase, DropSequenceSchema, CreateViewSchemaBase, CreateViewSchema, DropViewSchemaBase, DropViewSchema, ListFunctionsSchemaBase, ListFunctionsSchema,
8
+ import { readOnly, write, destructive } from "../../../../utils/annotations.js";
9
+ import { getToolIcons } from "../../../../utils/icons.js";
10
+ import { sanitizeIdentifier } from "../../../../utils/identifiers.js";
11
+ import { formatPostgresError } from "../core/error-helpers.js";
12
+ import { CreateViewSchemaBase, CreateViewSchema, DropViewSchemaBase, DropViewSchema, ListFunctionsSchemaBase, ListFunctionsSchema,
13
13
  // Output schemas
14
- ListSchemasOutputSchema, CreateSchemaOutputSchema, DropSchemaOutputSchema, ListSequencesOutputSchema, CreateSequenceOutputSchema, DropSequenceOutputSchema, ListViewsOutputSchema, CreateViewOutputSchema, DropViewOutputSchema, ListFunctionsOutputSchema, ListTriggersOutputSchema, ListConstraintsOutputSchema, } from "../schemas/index.js";
14
+ ListViewsOutputSchema, CreateViewOutputSchema, DropViewOutputSchema, ListFunctionsOutputSchema, ListTriggersOutputSchema, ListConstraintsOutputSchema, } from "../../schemas/index.js";
15
15
  /**
16
16
  * Well-known aliases for PostgreSQL extension names.
17
17
  * Users naturally write "pgvector" but the extension registers as "vector".
@@ -24,367 +24,10 @@ const EXTENSION_ALIASES = {
24
24
  fuzzymatch: "fuzzystrmatch",
25
25
  fuzzy: "fuzzystrmatch",
26
26
  };
27
- /**
28
- * Get all schema management tools
29
- */
30
- export function getSchemaTools(adapter) {
31
- return [
32
- createListSchemasTool(adapter),
33
- createCreateSchemaTool(adapter),
34
- createDropSchemaTool(adapter),
35
- createListSequencesTool(adapter),
36
- createCreateSequenceTool(adapter),
37
- createDropSequenceTool(adapter),
38
- createListViewsTool(adapter),
39
- createCreateViewTool(adapter),
40
- createDropViewTool(adapter),
41
- createListFunctionsTool(adapter),
42
- createListTriggersTool(adapter),
43
- createListConstraintsTool(adapter),
44
- ];
45
- }
46
- function createListSchemasTool(adapter) {
47
- return {
48
- name: "pg_list_schemas",
49
- description: "List all schemas in the database.",
50
- group: "schema",
51
- inputSchema: z.object({}),
52
- outputSchema: ListSchemasOutputSchema,
53
- annotations: readOnly("List Schemas"),
54
- icons: getToolIcons("schema", readOnly("List Schemas")),
55
- handler: async (_params, _context) => {
56
- const schemas = await adapter.listSchemas();
57
- return { schemas, count: schemas.length };
58
- },
59
- };
60
- }
61
- function createCreateSchemaTool(adapter) {
62
- return {
63
- name: "pg_create_schema",
64
- description: "Create a new schema.",
65
- group: "schema",
66
- inputSchema: CreateSchemaSchema,
67
- outputSchema: CreateSchemaOutputSchema,
68
- annotations: write("Create Schema"),
69
- icons: getToolIcons("schema", write("Create Schema")),
70
- handler: async (params, _context) => {
71
- try {
72
- const { name, authorization, ifNotExists } = CreateSchemaSchema.parse(params);
73
- // Check if schema already exists when ifNotExists is true
74
- let alreadyExisted;
75
- if (ifNotExists === true) {
76
- const existsResult = await adapter.executeQuery(`SELECT 1 FROM pg_namespace WHERE nspname = $1`, [name]);
77
- alreadyExisted = (existsResult.rows?.length ?? 0) > 0;
78
- }
79
- const ifNotExistsClause = ifNotExists ? "IF NOT EXISTS " : "";
80
- const schemaName = sanitizeIdentifier(name);
81
- const authClause = authorization
82
- ? ` AUTHORIZATION ${sanitizeIdentifier(authorization)}`
83
- : "";
84
- const sql = `CREATE SCHEMA ${ifNotExistsClause}${schemaName}${authClause}`;
85
- try {
86
- await adapter.executeQuery(sql);
87
- }
88
- catch (error) {
89
- return {
90
- success: false,
91
- error: formatPostgresError(error, {
92
- tool: "pg_create_schema",
93
- schema: name,
94
- objectType: "schema",
95
- }),
96
- };
97
- }
98
- const result = { success: true, schema: name };
99
- if (alreadyExisted !== undefined) {
100
- result["alreadyExisted"] = alreadyExisted;
101
- }
102
- return result;
103
- }
104
- catch (error) {
105
- return {
106
- success: false,
107
- error: error instanceof z.ZodError
108
- ? error.issues.map((i) => i.message).join("; ")
109
- : formatPostgresError(error, { tool: "pg_create_schema" }),
110
- };
111
- }
112
- },
113
- };
114
- }
115
- function createDropSchemaTool(adapter) {
116
- return {
117
- name: "pg_drop_schema",
118
- description: "Drop a schema (optionally with all objects).",
119
- group: "schema",
120
- inputSchema: DropSchemaSchema,
121
- outputSchema: DropSchemaOutputSchema,
122
- annotations: destructive("Drop Schema"),
123
- icons: getToolIcons("schema", destructive("Drop Schema")),
124
- handler: async (params, _context) => {
125
- try {
126
- const { name, cascade, ifExists } = DropSchemaSchema.parse(params);
127
- // Check if schema exists before dropping (for accurate response)
128
- const existsResult = await adapter.executeQuery(`SELECT 1 FROM pg_namespace WHERE nspname = $1`, [name]);
129
- const existed = (existsResult.rows?.length ?? 0) > 0;
130
- const ifExistsClause = ifExists === true ? "IF EXISTS " : "";
131
- const cascadeClause = cascade === true ? " CASCADE" : "";
132
- const schemaName = sanitizeIdentifier(name);
133
- const sql = `DROP SCHEMA ${ifExistsClause}${schemaName}${cascadeClause}`;
134
- try {
135
- await adapter.executeQuery(sql);
136
- }
137
- catch (error) {
138
- return {
139
- success: false,
140
- error: formatPostgresError(error, {
141
- tool: "pg_drop_schema",
142
- schema: name,
143
- }),
144
- };
145
- }
146
- return {
147
- success: true,
148
- schema: name,
149
- existed,
150
- note: existed
151
- ? undefined
152
- : `Schema '${name}' did not exist (ifExists: true)`,
153
- };
154
- }
155
- catch (error) {
156
- return {
157
- success: false,
158
- error: error instanceof z.ZodError
159
- ? error.issues.map((i) => i.message).join("; ")
160
- : formatPostgresError(error, { tool: "pg_drop_schema" }),
161
- };
162
- }
163
- },
164
- };
165
- }
166
- function createListSequencesTool(adapter) {
167
- return {
168
- name: "pg_list_sequences",
169
- description: "List all sequences in the database.",
170
- group: "schema",
171
- inputSchema: z
172
- .object({
173
- schema: z.string().optional(),
174
- limit: z
175
- .number()
176
- .optional()
177
- .describe("Maximum number of sequences to return (default: 50). Use 0 for all."),
178
- })
179
- .default({}),
180
- outputSchema: ListSequencesOutputSchema,
181
- annotations: readOnly("List Sequences"),
182
- icons: getToolIcons("schema", readOnly("List Sequences")),
183
- handler: async (params, _context) => {
184
- const parsed = (params ?? {});
185
- const queryParams = [];
186
- // Validate schema existence when filtering by schema
187
- if (parsed.schema) {
188
- const schemaCheck = await adapter.executeQuery(`SELECT 1 FROM pg_namespace WHERE nspname = $1`, [parsed.schema]);
189
- if ((schemaCheck.rows?.length ?? 0) === 0) {
190
- return {
191
- success: false,
192
- error: `Schema '${parsed.schema}' does not exist. Use pg_list_schemas to see available schemas.`,
193
- };
194
- }
195
- }
196
- const schemaClause = parsed.schema
197
- ? (queryParams.push(parsed.schema),
198
- `AND n.nspname = $${String(queryParams.length)}`)
199
- : "";
200
- // Default limit: 50, 0 = no limit
201
- const limitVal = parsed.limit ?? 50;
202
- const limitClause = limitVal > 0 ? `LIMIT ${String(limitVal + 1)}` : "";
203
- // Use subquery for owned_by to avoid duplicate rows from JOINs
204
- const sql = `SELECT n.nspname as schema, c.relname as name,
205
- (SELECT tc.relname || '.' || a.attname
206
- FROM pg_depend d
207
- JOIN pg_class tc ON tc.oid = d.refobjid
208
- JOIN pg_attribute a ON a.attrelid = tc.oid AND a.attnum = d.refobjsubid
209
- WHERE d.objid = c.oid AND d.classid = 'pg_class'::regclass AND d.deptype = 'a'
210
- LIMIT 1) as owned_by
211
- FROM pg_class c
212
- JOIN pg_namespace n ON n.oid = c.relnamespace
213
- WHERE c.relkind = 'S'
214
- AND n.nspname NOT IN ('pg_catalog', 'information_schema')
215
- ${schemaClause}
216
- ORDER BY n.nspname, c.relname
217
- ${limitClause}`;
218
- const result = queryParams.length > 0
219
- ? await adapter.executeQuery(sql, queryParams)
220
- : await adapter.executeQuery(sql);
221
- let sequences = result.rows ?? [];
222
- // Check if there are more results than the limit
223
- const hasMore = limitVal > 0 && sequences.length > limitVal;
224
- if (hasMore) {
225
- sequences = sequences.slice(0, limitVal);
226
- }
227
- const response = {
228
- sequences,
229
- count: sequences.length,
230
- };
231
- // Always include truncated field for consistent response structure
232
- response["truncated"] = hasMore;
233
- if (hasMore) {
234
- // Get total count
235
- const countParams = [];
236
- const countSchemaClause = parsed.schema
237
- ? (countParams.push(parsed.schema),
238
- `AND n.nspname = $${String(countParams.length)}`)
239
- : "";
240
- const countSql = `SELECT COUNT(*)::int as total FROM pg_class c
241
- JOIN pg_namespace n ON n.oid = c.relnamespace
242
- WHERE c.relkind = 'S'
243
- AND n.nspname NOT IN ('pg_catalog', 'information_schema')
244
- ${countSchemaClause}`;
245
- const countResult = countParams.length > 0
246
- ? await adapter.executeQuery(countSql, countParams)
247
- : await adapter.executeQuery(countSql);
248
- response["totalCount"] =
249
- countResult.rows?.[0]?.["total"] ?? sequences.length;
250
- response["note"] =
251
- `Results limited to ${String(limitVal)}. Use 'limit: 0' for all sequences.`;
252
- }
253
- return response;
254
- },
255
- };
256
- }
257
- function createCreateSequenceTool(adapter) {
258
- return {
259
- name: "pg_create_sequence",
260
- description: "Create a new sequence with optional START, INCREMENT, MIN/MAX, CACHE, CYCLE, and OWNED BY.",
261
- group: "schema",
262
- inputSchema: CreateSequenceSchemaBase,
263
- outputSchema: CreateSequenceOutputSchema,
264
- annotations: write("Create Sequence"),
265
- icons: getToolIcons("schema", write("Create Sequence")),
266
- handler: async (params, _context) => {
267
- try {
268
- const { name, schema, start, increment, minValue, maxValue, cache, cycle, ownedBy, ifNotExists, } = CreateSequenceSchema.parse(params);
269
- const schemaName = schema ?? "public";
270
- // Check if sequence already exists when ifNotExists is true
271
- let alreadyExisted;
272
- if (ifNotExists === true) {
273
- const existsResult = await adapter.executeQuery(`SELECT 1 FROM pg_class c JOIN pg_namespace n ON n.oid = c.relnamespace WHERE c.relkind = 'S' AND n.nspname = $1 AND c.relname = $2`, [schemaName, name]);
274
- alreadyExisted = (existsResult.rows?.length ?? 0) > 0;
275
- }
276
- const schemaPrefix = schema ? `${sanitizeIdentifier(schema)}.` : "";
277
- const ifNotExistsClause = ifNotExists === true ? "IF NOT EXISTS " : "";
278
- const parts = [
279
- `CREATE SEQUENCE ${ifNotExistsClause}${schemaPrefix}${sanitizeIdentifier(name)}`,
280
- ];
281
- if (start !== undefined)
282
- parts.push(`START WITH ${String(start)}`);
283
- if (increment !== undefined)
284
- parts.push(`INCREMENT BY ${String(increment)}`);
285
- if (minValue !== undefined)
286
- parts.push(`MINVALUE ${String(minValue)}`);
287
- if (maxValue !== undefined)
288
- parts.push(`MAXVALUE ${String(maxValue)}`);
289
- if (cache !== undefined)
290
- parts.push(`CACHE ${String(cache)}`);
291
- if (cycle)
292
- parts.push("CYCLE");
293
- if (ownedBy !== undefined) {
294
- // Validate and sanitize ownedBy: table.column or schema.table.column
295
- const ownedByParts = ownedBy.split(".");
296
- if (ownedByParts.length < 2 || ownedByParts.length > 3) {
297
- return {
298
- success: false,
299
- error: `Invalid ownedBy format: '${ownedBy}'. Expected 'table.column' or 'schema.table.column'.`,
300
- };
301
- }
302
- const sanitizedOwnedBy = ownedByParts
303
- .map((p) => sanitizeIdentifier(p))
304
- .join(".");
305
- parts.push(`OWNED BY ${sanitizedOwnedBy}`);
306
- }
307
- const sql = parts.join(" ");
308
- try {
309
- await adapter.executeQuery(sql);
310
- }
311
- catch (error) {
312
- return {
313
- success: false,
314
- error: formatPostgresError(error, {
315
- tool: "pg_create_sequence",
316
- objectType: "sequence",
317
- ...(schema !== undefined && { schema }),
318
- }),
319
- };
320
- }
321
- const result = {
322
- success: true,
323
- sequence: `${schemaName}.${name}`,
324
- ifNotExists: ifNotExists ?? false,
325
- };
326
- if (alreadyExisted !== undefined) {
327
- result["alreadyExisted"] = alreadyExisted;
328
- }
329
- return result;
330
- }
331
- catch (error) {
332
- return {
333
- success: false,
334
- error: error instanceof z.ZodError
335
- ? error.issues.map((i) => i.message).join("; ")
336
- : formatPostgresError(error, { tool: "pg_create_sequence" }),
337
- };
338
- }
339
- },
340
- };
341
- }
342
- // DropSequenceSchema is now imported from schemas/schema-mgmt.js
343
- function createDropSequenceTool(adapter) {
344
- return {
345
- name: "pg_drop_sequence",
346
- description: "Drop a sequence. Supports IF EXISTS and CASCADE options.",
347
- group: "schema",
348
- inputSchema: DropSequenceSchemaBase,
349
- outputSchema: DropSequenceOutputSchema,
350
- annotations: destructive("Drop Sequence"),
351
- icons: getToolIcons("schema", destructive("Drop Sequence")),
352
- handler: async (params, _context) => {
353
- try {
354
- const { name, schema, ifExists, cascade } = DropSequenceSchema.parse(params);
355
- const schemaName = schema ?? "public";
356
- // Check if sequence exists before dropping (for accurate response)
357
- const existsResult = await adapter.executeQuery(`SELECT 1 FROM pg_class c JOIN pg_namespace n ON n.oid = c.relnamespace WHERE c.relkind = 'S' AND n.nspname = $1 AND c.relname = $2`, [schemaName, name]);
358
- const existed = (existsResult.rows?.length ?? 0) > 0;
359
- const ifExistsClause = ifExists === true ? "IF EXISTS " : "";
360
- const cascadeClause = cascade === true ? " CASCADE" : "";
361
- const sql = `DROP SEQUENCE ${ifExistsClause}"${schemaName}"."${name}"${cascadeClause}`;
362
- try {
363
- await adapter.executeQuery(sql);
364
- }
365
- catch (error) {
366
- return {
367
- success: false,
368
- error: formatPostgresError(error, {
369
- tool: "pg_drop_sequence",
370
- ...(schema !== undefined && { schema }),
371
- }),
372
- };
373
- }
374
- return { success: true, sequence: `${schemaName}.${name}`, existed };
375
- }
376
- catch (error) {
377
- return {
378
- success: false,
379
- error: error instanceof z.ZodError
380
- ? error.issues.map((i) => i.message).join("; ")
381
- : formatPostgresError(error, { tool: "pg_drop_sequence" }),
382
- };
383
- }
384
- },
385
- };
386
- }
387
- function createListViewsTool(adapter) {
27
+ // =============================================================================
28
+ // pg_list_views
29
+ // =============================================================================
30
+ export function createListViewsTool(adapter) {
388
31
  return {
389
32
  name: "pg_list_views",
390
33
  description: "List all views and materialized views.",
@@ -393,11 +36,11 @@ function createListViewsTool(adapter) {
393
36
  schema: z.string().optional(),
394
37
  includeMaterialized: z.boolean().optional(),
395
38
  truncateDefinition: z
396
- .number()
39
+ .any()
397
40
  .optional()
398
41
  .describe("Max length for view definitions (default: 500). Use 0 for no truncation."),
399
42
  limit: z
400
- .number()
43
+ .any()
401
44
  .optional()
402
45
  .describe("Maximum number of views to return (default: 50). Use 0 for all views."),
403
46
  }),
@@ -422,10 +65,12 @@ function createListViewsTool(adapter) {
422
65
  `AND n.nspname = $${String(queryParams.length)}`)
423
66
  : "";
424
67
  const kindClause = parsed.includeMaterialized !== false ? "IN ('v', 'm')" : "= 'v'";
425
- // Default truncation: 500 chars, 0 = no truncation
426
- const truncateLimit = parsed.truncateDefinition ?? 500;
427
- // Default limit: 50, 0 = no limit
428
- const limitVal = parsed.limit ?? 50;
68
+ // Default truncation: 500 chars, 0 = no truncation (safe coercion)
69
+ const rawTruncate = Number(parsed.truncateDefinition);
70
+ const truncateLimit = Number.isFinite(rawTruncate) ? rawTruncate : 500;
71
+ // Default limit: 50, 0 = no limit (safe coercion)
72
+ const rawLimit = Number(parsed.limit);
73
+ const limitVal = Number.isFinite(rawLimit) ? rawLimit : 50;
429
74
  const limitClause = limitVal > 0 ? `LIMIT ${String(limitVal + 1)}` : "";
430
75
  const sql = `SELECT n.nspname as schema, c.relname as name,
431
76
  CASE c.relkind WHEN 'v' THEN 'view' WHEN 'm' THEN 'materialized_view' END as type,
@@ -497,7 +142,10 @@ function createListViewsTool(adapter) {
497
142
  },
498
143
  };
499
144
  }
500
- function createCreateViewTool(adapter) {
145
+ // =============================================================================
146
+ // pg_create_view
147
+ // =============================================================================
148
+ export function createCreateViewTool(adapter) {
501
149
  return {
502
150
  name: "pg_create_view",
503
151
  description: "Create a view or materialized view.",
@@ -561,8 +209,11 @@ function createCreateViewTool(adapter) {
561
209
  },
562
210
  };
563
211
  }
212
+ // =============================================================================
213
+ // pg_drop_view
214
+ // =============================================================================
564
215
  // DropViewSchema is now imported from schemas/schema-mgmt.js
565
- function createDropViewTool(adapter) {
216
+ export function createDropViewTool(adapter) {
566
217
  return {
567
218
  name: "pg_drop_view",
568
219
  description: "Drop a view or materialized view. Supports IF EXISTS and CASCADE options.",
@@ -573,7 +224,8 @@ function createDropViewTool(adapter) {
573
224
  icons: getToolIcons("schema", destructive("Drop View")),
574
225
  handler: async (params, _context) => {
575
226
  try {
576
- const { name, schema, materialized, ifExists, cascade } = DropViewSchema.parse(params);
227
+ const { name: rawName, schema, materialized, ifExists, cascade, } = DropViewSchema.parse(params);
228
+ const name = rawName ?? "";
577
229
  const schemaName = schema ?? "public";
578
230
  // Check if view exists before dropping (for accurate response)
579
231
  const relkind = materialized === true ? "m" : "v";
@@ -613,7 +265,10 @@ function createDropViewTool(adapter) {
613
265
  },
614
266
  };
615
267
  }
616
- function createListFunctionsTool(adapter) {
268
+ // =============================================================================
269
+ // pg_list_functions
270
+ // =============================================================================
271
+ export function createListFunctionsTool(adapter) {
617
272
  return {
618
273
  name: "pg_list_functions",
619
274
  description: "List user-defined functions with optional filtering. Use exclude (array) to filter out extension functions. Default limit=500 may need increasing for busy databases.",
@@ -671,7 +326,9 @@ function createListFunctionsTool(adapter) {
671
326
  queryParams.push(parsed.language);
672
327
  conditions.push(`l.lanname = $${String(queryParams.length)}`);
673
328
  }
674
- const limitVal = parsed.limit ?? 500;
329
+ // Safe coercion for limit (z.any() in base schema)
330
+ const rawLimit = Number(parsed.limit);
331
+ const limitVal = Number.isFinite(rawLimit) ? rawLimit : 500;
675
332
  const sql = `SELECT n.nspname as schema, p.proname as name,
676
333
  pg_get_function_arguments(p.oid) as arguments,
677
334
  pg_get_function_result(p.oid) as returns,
@@ -706,7 +363,10 @@ function createListFunctionsTool(adapter) {
706
363
  },
707
364
  };
708
365
  }
709
- function createListTriggersTool(adapter) {
366
+ // =============================================================================
367
+ // pg_list_triggers
368
+ // =============================================================================
369
+ export function createListTriggersTool(adapter) {
710
370
  return {
711
371
  name: "pg_list_triggers",
712
372
  description: "List all triggers.",
@@ -793,7 +453,10 @@ function createListTriggersTool(adapter) {
793
453
  },
794
454
  };
795
455
  }
796
- function createListConstraintsTool(adapter) {
456
+ // =============================================================================
457
+ // pg_list_constraints
458
+ // =============================================================================
459
+ export function createListConstraintsTool(adapter) {
797
460
  return {
798
461
  name: "pg_list_constraints",
799
462
  description: "List table constraints (primary keys, foreign keys, unique, check).",
@@ -802,8 +465,9 @@ function createListConstraintsTool(adapter) {
802
465
  table: z.string().optional(),
803
466
  schema: z.string().optional(),
804
467
  type: z
805
- .enum(["primary_key", "foreign_key", "unique", "check"])
806
- .optional(),
468
+ .string()
469
+ .optional()
470
+ .describe("Constraint type filter: 'primary_key', 'foreign_key', 'unique', 'check'"),
807
471
  }),
808
472
  outputSchema: ListConstraintsOutputSchema,
809
473
  annotations: readOnly("List Constraints"),
@@ -811,6 +475,20 @@ function createListConstraintsTool(adapter) {
811
475
  handler: async (params, _context) => {
812
476
  try {
813
477
  const parsed = (params ?? {});
478
+ // Validate type enum value if provided
479
+ const validTypes = [
480
+ "primary_key",
481
+ "foreign_key",
482
+ "unique",
483
+ "check",
484
+ ];
485
+ if (parsed.type !== undefined &&
486
+ !validTypes.includes(parsed.type)) {
487
+ return {
488
+ success: false,
489
+ error: `Validation error: type must be one of: ${validTypes.join(", ")}`,
490
+ };
491
+ }
814
492
  // Parse schema.table format
815
493
  if (typeof parsed.table === "string" &&
816
494
  parsed.table.includes(".") &&
@@ -889,4 +567,4 @@ function createListConstraintsTool(adapter) {
889
567
  },
890
568
  };
891
569
  }
892
- //# sourceMappingURL=schema.js.map
570
+ //# sourceMappingURL=views.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"views.js","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/schema/views.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/stats/advanced.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AAyRpC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CA0VhB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,GACvB,cAAc,CAmRhB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CAyOhB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,eAAe,GACvB,cAAc,CAkKhB"}
1
+ {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/tools/stats/advanced.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,4BAA4B,CAAC;AAiCpC;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CA0VhB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,eAAe,GACvB,cAAc,CAmRhB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,eAAe,GACvB,cAAc,CAyOhB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,eAAe,GACvB,cAAc,CAkKhB"}