@neverinfamous/postgres-mcp 1.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/README.md +177 -129
  2. package/dist/__tests__/benchmarks/codemode.bench.d.ts +10 -0
  3. package/dist/__tests__/benchmarks/codemode.bench.d.ts.map +1 -0
  4. package/dist/__tests__/benchmarks/codemode.bench.js +159 -0
  5. package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -0
  6. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts +10 -0
  7. package/dist/__tests__/benchmarks/connection-pool.bench.d.ts.map +1 -0
  8. package/dist/__tests__/benchmarks/connection-pool.bench.js +123 -0
  9. package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -0
  10. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts +11 -0
  11. package/dist/__tests__/benchmarks/handler-dispatch.bench.d.ts.map +1 -0
  12. package/dist/__tests__/benchmarks/handler-dispatch.bench.js +199 -0
  13. package/dist/__tests__/benchmarks/handler-dispatch.bench.js.map +1 -0
  14. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts +15 -0
  15. package/dist/__tests__/benchmarks/logger-sanitization.bench.d.ts.map +1 -0
  16. package/dist/__tests__/benchmarks/logger-sanitization.bench.js +155 -0
  17. package/dist/__tests__/benchmarks/logger-sanitization.bench.js.map +1 -0
  18. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts +10 -0
  19. package/dist/__tests__/benchmarks/resource-prompts.bench.d.ts.map +1 -0
  20. package/dist/__tests__/benchmarks/resource-prompts.bench.js +181 -0
  21. package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -0
  22. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts +11 -0
  23. package/dist/__tests__/benchmarks/schema-parsing.bench.d.ts.map +1 -0
  24. package/dist/__tests__/benchmarks/schema-parsing.bench.js +209 -0
  25. package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -0
  26. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts +9 -0
  27. package/dist/__tests__/benchmarks/tool-filtering.bench.d.ts.map +1 -0
  28. package/dist/__tests__/benchmarks/tool-filtering.bench.js +83 -0
  29. package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -0
  30. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts +10 -0
  31. package/dist/__tests__/benchmarks/transport-auth.bench.d.ts.map +1 -0
  32. package/dist/__tests__/benchmarks/transport-auth.bench.js +128 -0
  33. package/dist/__tests__/benchmarks/transport-auth.bench.js.map +1 -0
  34. package/dist/__tests__/benchmarks/utilities.bench.d.ts +10 -0
  35. package/dist/__tests__/benchmarks/utilities.bench.d.ts.map +1 -0
  36. package/dist/__tests__/benchmarks/utilities.bench.js +164 -0
  37. package/dist/__tests__/benchmarks/utilities.bench.js.map +1 -0
  38. package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
  39. package/dist/adapters/DatabaseAdapter.js +12 -0
  40. package/dist/adapters/DatabaseAdapter.js.map +1 -1
  41. package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
  42. package/dist/adapters/postgresql/PostgresAdapter.js +3 -0
  43. package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
  44. package/dist/adapters/postgresql/schemas/backup.d.ts +37 -23
  45. package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
  46. package/dist/adapters/postgresql/schemas/backup.js +53 -22
  47. package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
  48. package/dist/adapters/postgresql/schemas/extensions.d.ts +56 -37
  49. package/dist/adapters/postgresql/schemas/extensions.d.ts.map +1 -1
  50. package/dist/adapters/postgresql/schemas/extensions.js +68 -36
  51. package/dist/adapters/postgresql/schemas/extensions.js.map +1 -1
  52. package/dist/adapters/postgresql/schemas/index.d.ts +3 -2
  53. package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
  54. package/dist/adapters/postgresql/schemas/index.js +8 -2
  55. package/dist/adapters/postgresql/schemas/index.js.map +1 -1
  56. package/dist/adapters/postgresql/schemas/introspection.d.ts +445 -0
  57. package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -0
  58. package/dist/adapters/postgresql/schemas/introspection.js +478 -0
  59. package/dist/adapters/postgresql/schemas/introspection.js.map +1 -0
  60. package/dist/adapters/postgresql/schemas/jsonb.d.ts +8 -0
  61. package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +1 -1
  62. package/dist/adapters/postgresql/schemas/jsonb.js +26 -2
  63. package/dist/adapters/postgresql/schemas/jsonb.js.map +1 -1
  64. package/dist/adapters/postgresql/schemas/monitoring.d.ts +41 -25
  65. package/dist/adapters/postgresql/schemas/monitoring.d.ts.map +1 -1
  66. package/dist/adapters/postgresql/schemas/monitoring.js +49 -16
  67. package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
  68. package/dist/adapters/postgresql/schemas/partitioning.d.ts +16 -20
  69. package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
  70. package/dist/adapters/postgresql/schemas/partitioning.js +21 -10
  71. package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
  72. package/dist/adapters/postgresql/schemas/partman.d.ts +69 -0
  73. package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
  74. package/dist/adapters/postgresql/schemas/partman.js +46 -33
  75. package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
  76. package/dist/adapters/postgresql/schemas/performance.d.ts +37 -19
  77. package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -1
  78. package/dist/adapters/postgresql/schemas/performance.js +54 -12
  79. package/dist/adapters/postgresql/schemas/performance.js.map +1 -1
  80. package/dist/adapters/postgresql/schemas/postgis.d.ts.map +1 -1
  81. package/dist/adapters/postgresql/schemas/postgis.js +20 -0
  82. package/dist/adapters/postgresql/schemas/postgis.js.map +1 -1
  83. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +15 -7
  84. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
  85. package/dist/adapters/postgresql/schemas/schema-mgmt.js +36 -7
  86. package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
  87. package/dist/adapters/postgresql/schemas/text-search.d.ts +26 -14
  88. package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
  89. package/dist/adapters/postgresql/schemas/text-search.js +41 -9
  90. package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
  91. package/dist/adapters/postgresql/tools/admin.d.ts.map +1 -1
  92. package/dist/adapters/postgresql/tools/admin.js +82 -67
  93. package/dist/adapters/postgresql/tools/admin.js.map +1 -1
  94. package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
  95. package/dist/adapters/postgresql/tools/backup/dump.js +27 -24
  96. package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
  97. package/dist/adapters/postgresql/tools/citext.js +114 -82
  98. package/dist/adapters/postgresql/tools/citext.js.map +1 -1
  99. package/dist/adapters/postgresql/tools/codemode/index.d.ts.map +1 -1
  100. package/dist/adapters/postgresql/tools/codemode/index.js +2 -11
  101. package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
  102. package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
  103. package/dist/adapters/postgresql/tools/core/convenience.js +23 -8
  104. package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
  105. package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
  106. package/dist/adapters/postgresql/tools/core/indexes.js +3 -2
  107. package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
  108. package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
  109. package/dist/adapters/postgresql/tools/core/tables.js +4 -4
  110. package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
  111. package/dist/adapters/postgresql/tools/cron.js +59 -27
  112. package/dist/adapters/postgresql/tools/cron.js.map +1 -1
  113. package/dist/adapters/postgresql/tools/introspection.d.ts +15 -0
  114. package/dist/adapters/postgresql/tools/introspection.d.ts.map +1 -0
  115. package/dist/adapters/postgresql/tools/introspection.js +1682 -0
  116. package/dist/adapters/postgresql/tools/introspection.js.map +1 -0
  117. package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +1 -1
  118. package/dist/adapters/postgresql/tools/jsonb/advanced.js +26 -17
  119. package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +1 -1
  120. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +1 -1
  121. package/dist/adapters/postgresql/tools/jsonb/basic.js +92 -23
  122. package/dist/adapters/postgresql/tools/jsonb/basic.js.map +1 -1
  123. package/dist/adapters/postgresql/tools/ltree.d.ts.map +1 -1
  124. package/dist/adapters/postgresql/tools/ltree.js +17 -4
  125. package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
  126. package/dist/adapters/postgresql/tools/monitoring.js +32 -21
  127. package/dist/adapters/postgresql/tools/monitoring.js.map +1 -1
  128. package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
  129. package/dist/adapters/postgresql/tools/partman/management.js +32 -52
  130. package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
  131. package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
  132. package/dist/adapters/postgresql/tools/partman/operations.js +5 -5
  133. package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
  134. package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
  135. package/dist/adapters/postgresql/tools/performance/analysis.js +15 -8
  136. package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
  137. package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
  138. package/dist/adapters/postgresql/tools/performance/monitoring.js +10 -7
  139. package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
  140. package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
  141. package/dist/adapters/postgresql/tools/performance/stats.js +62 -28
  142. package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
  143. package/dist/adapters/postgresql/tools/pgcrypto.js +31 -11
  144. package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
  145. package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -1
  146. package/dist/adapters/postgresql/tools/postgis/advanced.js +30 -25
  147. package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -1
  148. package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
  149. package/dist/adapters/postgresql/tools/postgis/basic.js +24 -15
  150. package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
  151. package/dist/adapters/postgresql/tools/schema.js +79 -5
  152. package/dist/adapters/postgresql/tools/schema.js.map +1 -1
  153. package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
  154. package/dist/adapters/postgresql/tools/stats/advanced.js +61 -39
  155. package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
  156. package/dist/adapters/postgresql/tools/stats/basic.d.ts.map +1 -1
  157. package/dist/adapters/postgresql/tools/stats/basic.js +45 -30
  158. package/dist/adapters/postgresql/tools/stats/basic.js.map +1 -1
  159. package/dist/adapters/postgresql/tools/text.js +327 -148
  160. package/dist/adapters/postgresql/tools/text.js.map +1 -1
  161. package/dist/auth/auth-context.d.ts +28 -0
  162. package/dist/auth/auth-context.d.ts.map +1 -0
  163. package/dist/auth/auth-context.js +37 -0
  164. package/dist/auth/auth-context.js.map +1 -0
  165. package/dist/auth/scope-map.d.ts +20 -0
  166. package/dist/auth/scope-map.d.ts.map +1 -0
  167. package/dist/auth/scope-map.js +40 -0
  168. package/dist/auth/scope-map.js.map +1 -0
  169. package/dist/auth/scopes.d.ts.map +1 -1
  170. package/dist/auth/scopes.js +2 -0
  171. package/dist/auth/scopes.js.map +1 -1
  172. package/dist/cli.js +1 -1
  173. package/dist/cli.js.map +1 -1
  174. package/dist/codemode/api.d.ts +1 -0
  175. package/dist/codemode/api.d.ts.map +1 -1
  176. package/dist/codemode/api.js +34 -0
  177. package/dist/codemode/api.js.map +1 -1
  178. package/dist/codemode/index.d.ts +0 -2
  179. package/dist/codemode/index.d.ts.map +1 -1
  180. package/dist/codemode/index.js +0 -4
  181. package/dist/codemode/index.js.map +1 -1
  182. package/dist/codemode/sandbox.d.ts +14 -1
  183. package/dist/codemode/sandbox.d.ts.map +1 -1
  184. package/dist/codemode/sandbox.js +58 -19
  185. package/dist/codemode/sandbox.js.map +1 -1
  186. package/dist/codemode/types.d.ts.map +1 -1
  187. package/dist/codemode/types.js +3 -0
  188. package/dist/codemode/types.js.map +1 -1
  189. package/dist/constants/ServerInstructions.d.ts +5 -1
  190. package/dist/constants/ServerInstructions.d.ts.map +1 -1
  191. package/dist/constants/ServerInstructions.js +91 -43
  192. package/dist/constants/ServerInstructions.js.map +1 -1
  193. package/dist/filtering/ToolConstants.d.ts +22 -19
  194. package/dist/filtering/ToolConstants.d.ts.map +1 -1
  195. package/dist/filtering/ToolConstants.js +48 -37
  196. package/dist/filtering/ToolConstants.js.map +1 -1
  197. package/dist/filtering/ToolFilter.d.ts.map +1 -1
  198. package/dist/filtering/ToolFilter.js +10 -13
  199. package/dist/filtering/ToolFilter.js.map +1 -1
  200. package/dist/pool/ConnectionPool.js +1 -1
  201. package/dist/pool/ConnectionPool.js.map +1 -1
  202. package/dist/transports/http.d.ts +1 -0
  203. package/dist/transports/http.d.ts.map +1 -1
  204. package/dist/transports/http.js +75 -21
  205. package/dist/transports/http.js.map +1 -1
  206. package/dist/types/filtering.d.ts +2 -2
  207. package/dist/types/filtering.d.ts.map +1 -1
  208. package/dist/utils/icons.d.ts.map +1 -1
  209. package/dist/utils/icons.js +5 -0
  210. package/dist/utils/icons.js.map +1 -1
  211. package/dist/utils/where-clause.d.ts.map +1 -1
  212. package/dist/utils/where-clause.js +24 -0
  213. package/dist/utils/where-clause.js.map +1 -1
  214. package/package.json +15 -12
  215. package/dist/codemode/sandbox-factory.d.ts +0 -72
  216. package/dist/codemode/sandbox-factory.d.ts.map +0 -1
  217. package/dist/codemode/sandbox-factory.js +0 -88
  218. package/dist/codemode/sandbox-factory.js.map +0 -1
  219. package/dist/codemode/worker-sandbox.d.ts +0 -82
  220. package/dist/codemode/worker-sandbox.d.ts.map +0 -1
  221. package/dist/codemode/worker-sandbox.js +0 -244
  222. package/dist/codemode/worker-sandbox.js.map +0 -1
  223. package/dist/codemode/worker-script.d.ts +0 -8
  224. package/dist/codemode/worker-script.d.ts.map +0 -1
  225. package/dist/codemode/worker-script.js +0 -113
  226. package/dist/codemode/worker-script.js.map +0 -1
@@ -1,6 +1,10 @@
1
1
  /**
2
2
  * Server instructions for Code Mode usage.
3
3
  *
4
+ * ⚠️ AUTO-GENERATED — DO NOT EDIT THIS FILE DIRECTLY
5
+ * Edit src/constants/server-instructions.md instead,
6
+ * then run: npm run generate:instructions
7
+ *
4
8
  * These instructions are automatically sent to MCP clients during initialization,
5
9
  * eliminating the need for users to manually provide agent instructions.
6
10
  *
@@ -30,44 +34,44 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
30
34
 
31
35
  ## 🔄 Response Structures
32
36
 
33
- | Tool | Returns | Notes |
34
- |------|---------|-------|
35
- | \`pg_read_query\` | \`{rows, rowCount, fields?}\` | \`fields\` contains column metadata (name, dataTypeID) |
36
- | \`pg_write_query\` | \`{rowsAffected, affectedRows, rows?}\` | \`rows\` only with RETURNING clause. DDL statements return \`rowsAffected: 0\`. ⛔ Throws for SELECT |
37
- | \`pg_upsert\` | \`{success, operation, rowsAffected, rowCount, rows?}\` | \`operation: 'insert'|'update'\`. \`rows\` only with RETURNING clause |
38
- | \`pg_batch_insert\` | \`{success, rowsAffected, affectedRows, insertedCount, rowCount, rows?}\` | Empty objects use DEFAULT VALUES. ⚠️ BIGINT > 2^53 loses precision |
39
- | \`pg_create_table\` | \`{success, table, sql, compositePrimaryKey?}\` | \`table\` = schema-qualified name. \`compositePrimaryKey\` only when composite PK used |
40
- | \`pg_drop_table\` | \`{success, dropped, existed}\` | \`existed\` indicates whether table was present before drop |
41
- | \`pg_create_index\` | \`{success, index, indexName, table, sql, ifNotExists?, alreadyExists?, message?}\` | \`alreadyExists\`/\`message\` only with \`ifNotExists: true\` when index pre-exists |
42
- | \`pg_drop_index\` | \`{success, index, existed, sql}\` | \`existed\` indicates whether index was present before drop |
43
- | \`pg_truncate\` | \`{success, table, cascade, restartIdentity}\` | \`cascade\`/\`restartIdentity\` reflect the options used |
44
- | \`pg_count\` | \`{count: N}\` | Use \`params\` for placeholders: \`where: 'id=$1', params: [5]\`. DISTINCT: use \`pg_read_query\` |
45
- | \`pg_exists\` | \`{exists: bool, mode, hint?}\` | \`params\` for placeholders. \`mode: 'filtered'|'any_rows'\` |
46
- | \`pg_get_indexes\` | \`{indexes, count, totalCount?}\` | Default \`limit: 100\` without \`table\`. Use \`schema\`/\`limit\` to filter. Index objects have \`name\`, \`type\`, \`columns\` |
47
- | \`pg_list_objects\` | \`{objects, count, totalCount, byType}\` | Use \`limit\` to cap results, \`type\`/\`types\` to filter |
48
- | \`pg_object_details\` | \`{name, schema, type, returnType?, ...}\` | Functions: \`returnType\` alias. Views/Mat. views: \`definition\`. Tables: equivalent to \`pg_describe_table\` (columns, primaryKey, indexes, constraints, foreignKeys) |
49
- | \`pg_analyze_db_health\` | \`{cacheHitRatio, databaseSize, tableStats, unusedIndexes, tablesNeedingVacuum, connections, bloat, isReplica, overallScore, overallStatus}\` | \`cacheHitRatio\`: \`{ratio, heap, index, status}\`. \`overallStatus\`: \`healthy|needs_attention|critical\`. Optional sections via \`includeIndexes\`, \`includeVacuum\`, \`includeConnections\` |
50
- | \`pg_describe_table\` | \`{name, schema, type, owner, rowCount, columns, primaryKey, indexes, constraints, foreignKeys}\` | Columns include \`notNull\` (alias for \`!nullable\`), \`foreignKey\`. \`constraints\` includes PK, UNIQUE, CHECK, NOT NULL. ⚠️ \`rowCount: -1\` = stale/missing statistics (run ANALYZE on the table). Small tables (<~50 rows) may show -1 until first ANALYZE |
51
- | \`pg_analyze_query_indexes\` | \`{plan, issues, recommendations}\` | \`verbosity\`: 'summary' (default) or 'full'. Summary mode returns condensed plan |
52
- | \`pg_list_tables\` | \`{tables, count, totalCount, truncated?, hint?}\` | Use \`schema\` to filter, \`limit\` to cap results, \`exclude\` to hide extension schemas (e.g., \`['cron', 'topology', 'partman']\`) |
53
- | List operations | \`{items, count}\` | Access via \`result.tables\`, \`result.views\`, etc. |
54
- | \`pg_jsonb_agg groupBy\` | \`{result: [{group_key, items}], count, grouped: true}\` | Without groupBy: \`{result: [...], count, grouped: false}\` |
55
- | \`pg_vector_aggregate\` | \`{average_vector, count}\` or \`{groups: [{group_key, average_vector, count}]}\` | Without/with \`groupBy\` |
56
- | \`pg_index_stats\` | \`{indexes, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
57
- | \`pg_table_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
58
- | \`pg_vacuum_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
59
- | \`pg_stat_statements\` | \`{statements, count, truncated?, totalCount?}\` | Default 20 rows. \`orderBy\` supported |
60
- | \`pg_query_plan_stats\` | \`{queryPlanStats, count, truncated?, totalCount?}\` | Default 20 rows. \`truncateQuery: 0\` for full text |
61
- | \`pg_stat_activity\` | \`{connections, count}\` | \`includeIdle: true\` to include idle connections |
62
- | \`pg_locks\` | \`{locks}\` | \`showBlocked: true\` switches to blocked/blocking pid format |
63
- | \`pg_bloat_check\` | \`{tables, count}\` | Tables with \`live_tuples\`, \`dead_tuples\`, \`dead_pct\` |
64
- | \`pg_cache_hit_ratio\` | \`{heap_read, heap_hit, cache_hit_ratio}\` | All fields nullable (0 tables = null). Flat response, differs from \`pg_analyze_db_health.cacheHitRatio\` |
65
- | \`pg_seq_scan_tables\` | \`{tables, count, minScans, hint, truncated?, totalCount?}\` | Default 50 rows. \`minScans\` default: 10 |
66
- | \`pg_connection_pool_optimize\` | \`{current, config, waitEvents, recommendations}\` | No params needed |
67
- | \`pg_performance_baseline\` | \`{name, timestamp, metrics}\` | \`metrics\`: \`cache\`, \`tables\`, \`indexes\`, \`connections\`, \`databaseSize\` |
68
- | \`pg_duplicate_indexes\` | \`{duplicateIndexes, count, hint, truncated?, totalCount?}\` | Default 50 rows. \`duplicate_type\`: EXACT_DUPLICATE, OVERLAPPING, SUBSET |
69
- | \`pg_query_plan_compare\` | \`{query1, query2, analysis, fullPlans}\` | \`analysis.costDifference\` + \`recommendation\` |
70
- | \`pg_unused_indexes\` | \`{unusedIndexes, count, hint, truncated?, totalCount?}\` | Default 20 rows. \`summary: true\` → \`{summary, bySchema, totalCount}\` |
37
+ | Tool | Returns | Notes |
38
+ | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------- | ---------------------------------------------------------------------------------------- |
39
+ | \`pg_read_query\` | \`{rows, rowCount, fields?}\` | \`fields\` contains column metadata (name, dataTypeID) |
40
+ | \`pg_write_query\` | \`{rowsAffected, affectedRows, rows?}\` | \`rows\` only with RETURNING clause. DDL statements return \`rowsAffected: 0\`. ⛔ Throws for SELECT |
41
+ | \`pg_upsert\` | \`{success, operation, rowsAffected, rowCount, rows?}\` | \`operation: 'insert' | 'update'\`. \`rows\` only with RETURNING clause |
42
+ | \`pg_batch_insert\` | \`{success, rowsAffected, affectedRows, insertedCount, rowCount, rows?}\` | Empty objects use DEFAULT VALUES. ⚠️ BIGINT > 2^53 loses precision |
43
+ | \`pg_create_table\` | \`{success, table, sql, compositePrimaryKey?}\` | \`table\` = schema-qualified name. \`compositePrimaryKey\` only when composite PK used |
44
+ | \`pg_drop_table\` | \`{success, dropped, existed}\` | \`existed\` indicates whether table was present before drop |
45
+ | \`pg_create_index\` | \`{success, index, indexName, table, sql, ifNotExists?, alreadyExists?, message?}\` | \`alreadyExists\`/\`message\` only with \`ifNotExists: true\` when index pre-exists |
46
+ | \`pg_drop_index\` | \`{success, index, existed, sql}\` | \`existed\` indicates whether index was present before drop |
47
+ | \`pg_truncate\` | \`{success, table, cascade, restartIdentity}\` | \`cascade\`/\`restartIdentity\` reflect the options used |
48
+ | \`pg_count\` | \`{count: N}\` | Use \`params\` for placeholders: \`where: 'id=$1', params: [5]\`. DISTINCT: use \`pg_read_query\` |
49
+ | \`pg_exists\` | \`{exists: bool, mode, hint?}\` | \`params\` for placeholders. \`mode: 'filtered' | 'any_rows'\` |
50
+ | \`pg_get_indexes\` | \`{indexes, count, totalCount?}\` | Default \`limit: 100\` without \`table\`. Use \`schema\`/\`limit\` to filter. Index objects have \`name\`, \`type\`, \`columns\` |
51
+ | \`pg_list_objects\` | \`{objects, count, totalCount, byType}\` | Use \`limit\` to cap results, \`type\`/\`types\` to filter |
52
+ | \`pg_object_details\` | \`{name, schema, type, returnType?, ...}\` | Functions: \`returnType\` alias. Views/Mat. views: \`definition\`. Tables: equivalent to \`pg_describe_table\` (columns, primaryKey, indexes, constraints, foreignKeys) |
53
+ | \`pg_analyze_db_health\` | \`{cacheHitRatio, databaseSize, tableStats, unusedIndexes, tablesNeedingVacuum, connections, bloat, isReplica, overallScore, overallStatus}\` | \`cacheHitRatio\`: \`{ratio, heap, index, status}\`. \`overallStatus\`: \`healthy | needs_attention | critical\`. Optional sections via \`includeIndexes\`, \`includeVacuum\`, \`includeConnections\` |
54
+ | \`pg_describe_table\` | \`{name, schema, type, owner, rowCount, columns, primaryKey, indexes, constraints, foreignKeys}\` | Columns include \`notNull\` (alias for \`!nullable\`), \`foreignKey\`. \`constraints\` includes PK, UNIQUE, CHECK, NOT NULL. ⚠️ \`rowCount: -1\` = stale/missing statistics (run ANALYZE on the table). Small tables (<~50 rows) may show -1 until first ANALYZE |
55
+ | \`pg_analyze_query_indexes\` | \`{plan, issues, recommendations}\` | \`verbosity\`: 'summary' (default) or 'full'. Summary mode returns condensed plan |
56
+ | \`pg_list_tables\` | \`{tables, count, totalCount, truncated?, hint?}\` | Use \`schema\` to filter, \`limit\` to cap results, \`exclude\` to hide extension schemas (e.g., \`['cron', 'topology', 'partman']\`) |
57
+ | List operations | \`{items, count}\` | Access via \`result.tables\`, \`result.views\`, etc. |
58
+ | \`pg_jsonb_agg groupBy\` | \`{result: [{group_key, items}], count, grouped: true}\` | Without groupBy: \`{result: [...], count, grouped: false}\` |
59
+ | \`pg_vector_aggregate\` | \`{average_vector, count}\` or \`{groups: [{group_key, average_vector, count}]}\` | Without/with \`groupBy\` |
60
+ | \`pg_index_stats\` | \`{indexes, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
61
+ | \`pg_table_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
62
+ | \`pg_vacuum_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
63
+ | \`pg_stat_statements\` | \`{statements, count, truncated?, totalCount?}\` | Default 20 rows. \`orderBy\` supported |
64
+ | \`pg_query_plan_stats\` | \`{queryPlanStats, count, truncated?, totalCount?}\` | Default 20 rows. \`truncateQuery: 0\` for full text |
65
+ | \`pg_stat_activity\` | \`{connections, count, backgroundWorkers}\` | \`includeIdle: true\` to include idle connections. \`backgroundWorkers\` = count of background worker processes |
66
+ | \`pg_locks\` | \`{locks}\` | \`showBlocked: true\` switches to blocked/blocking pid format |
67
+ | \`pg_bloat_check\` | \`{tables, count}\` | Tables with \`live_tuples\`, \`dead_tuples\`, \`dead_pct\` |
68
+ | \`pg_cache_hit_ratio\` | \`{heap_read, heap_hit, cache_hit_ratio}\` | All fields nullable (0 tables = null). Flat response, differs from \`pg_analyze_db_health.cacheHitRatio\` |
69
+ | \`pg_seq_scan_tables\` | \`{tables, count, minScans, hint, truncated?, totalCount?}\` | Default 50 rows. \`minScans\` default: 10 |
70
+ | \`pg_connection_pool_optimize\` | \`{current, config, waitEvents, recommendations}\` | No params needed |
71
+ | \`pg_performance_baseline\` | \`{name, timestamp, metrics}\` | \`metrics\`: \`cache\`, \`tables\`, \`indexes\`, \`connections\`, \`databaseSize\` |
72
+ | \`pg_duplicate_indexes\` | \`{duplicateIndexes, count, hint, truncated?, totalCount?}\` | Default 50 rows. \`duplicate_type\`: EXACT_DUPLICATE, OVERLAPPING, SUBSET |
73
+ | \`pg_query_plan_compare\` | \`{query1, query2, analysis, fullPlans}\` | \`analysis.costDifference\` + \`recommendation\` |
74
+ | \`pg_unused_indexes\` | \`{unusedIndexes, count, hint, truncated?, totalCount?}\` | Default 20 rows. \`summary: true\` → \`{summary, bySchema, totalCount}\` |
71
75
 
72
76
  ## API Mapping
73
77
 
@@ -119,6 +123,7 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
119
123
  - ⛔ **Object-only tools**: \`diff\`, \`merge\`, \`keys\`, \`indexSuggest\`, \`securityScan\`, \`stats\`—topKeys require JSONB objects, throw descriptive errors for arrays
120
124
  - ⛔ **Array-only tools**: \`insert\`—requires JSONB arrays, throws errors for objects
121
125
  - 📝 \`normalize\` modes: \`pairs\`/\`keys\`/\`flatten\` for objects; \`array\` for arrays
126
+ - 📦 **AI-Optimized Payloads**: \`contains\` and \`pathQuery\` default to 100 results. Returns \`truncated\` + \`totalCount\` when capped. Use \`limit: 0\` for all rows
122
127
 
123
128
  **Top-Level Aliases**: \`pg.jsonbExtract()\`, \`pg.jsonbSet()\`, \`pg.jsonbInsert()\`, \`pg.jsonbDelete()\`, \`pg.jsonbContains()\`, \`pg.jsonbPathQuery()\`, \`pg.jsonbAgg()\`, \`pg.jsonbObject()\`, \`pg.jsonbArray()\`, \`pg.jsonbKeys()\`, \`pg.jsonbStripNulls()\`, \`pg.jsonbTypeof()\`, \`pg.jsonbValidatePath()\`, \`pg.jsonbMerge()\`, \`pg.jsonbNormalize()\`, \`pg.jsonbDiff()\`, \`pg.jsonbIndexSuggest()\`, \`pg.jsonbSecurityScan()\`, \`pg.jsonbStats()\`
124
129
 
@@ -158,6 +163,7 @@ Wrappers (3): \`blockingQueries()\`→\`locks({showBlocked:true})\`, \`longRunni
158
163
  Aliases: \`cacheStats\`→\`cacheHitRatio\`, \`queryStats\`→\`statStatements\`, \`activity\`→\`statActivity\`, \`vacuum\`→\`vacuumStats\`, \`indexUsage\`→\`indexStats\`, \`bloatEstimate\`/\`bloat\`→\`bloatCheck\`, \`runningQueries\`→\`longRunningQueries\`
159
164
 
160
165
  📦 **AI-Optimized Payloads**: Tools return limited results by default to reduce context size:
166
+
161
167
  - \`indexStats({ limit? })\`: Default 50 rows. Returns \`truncated: true\` + \`totalCount\` when limited. Use \`limit: 0\` for all
162
168
  - \`tableStats({ limit? })\`: Default 50 rows. Returns \`truncated: true\` + \`totalCount\` when limited. Use \`limit: 0\` for all
163
169
  - \`vacuumStats({ limit? })\`: Default 50 rows. Same truncation indicators. Use \`limit: 0\` for all
@@ -186,6 +192,7 @@ Core: \`databaseSize()\`, \`tableSizes()\`, \`connectionStats()\`, \`showSetting
186
192
  - \`alertThresholdSet({metric?: 'connection_usage'})\`: Returns recommended thresholds. Invalid metric returns \`{success: false, error: "..."}\`. Valid metrics: connection_usage, cache_hit_ratio, replication_lag, dead_tuples, long_running_queries, lock_wait_time
187
193
 
188
194
  📦 **AI-Optimized Payloads**: Tools return limited results by default to reduce context size:
195
+
189
196
  - \`tableSizes({ limit? })\`: Default 50 rows. Returns \`truncated: true\` + \`totalCount\` when limited. Use \`limit: 0\` for all
190
197
  - \`showSettings({ limit? })\`: Default 50 rows when no pattern specified. Use \`limit: 0\` for all or specify a pattern
191
198
 
@@ -212,6 +219,7 @@ Aliases: \`tableName\`→\`table\`, \`indexName\`→\`index\`, \`param\`/\`setti
212
219
  **Discovery**: \`pg.admin.help()\` returns \`{methods, methodAliases, examples}\` object
213
220
 
214
221
  **Response structures**:
222
+
215
223
  - \`vacuum()\` / \`vacuumAnalyze()\`: \`{success, message, table?, schema?, hint?}\` (hint present when verbose: true)
216
224
  - \`analyze()\`: \`{success, message, table?, schema?, columns?}\`
217
225
  - \`reindex()\`: \`{success, message}\`
@@ -225,6 +233,7 @@ Aliases: \`tableName\`→\`table\`, \`indexName\`→\`index\`, \`param\`/\`setti
225
233
  Core: \`dumpTable()\`, \`dumpSchema()\`, \`copyExport()\`, \`copyImport()\`, \`createBackupPlan()\`, \`restoreCommand()\`, \`physical()\`, \`restoreValidate()\`, \`scheduleOptimize()\`
226
234
 
227
235
  Response Structures:
236
+
228
237
  - \`dumpTable\`: \`{ddl, type, note, insertStatements?}\` — \`insertStatements\` only with \`includeData: true\` (separate field from \`ddl\`)
229
238
  - \`copyExport\`: \`{data, rowCount, truncated?, limit?}\` — \`data\` contains CSV/text content. \`truncated: true\` + \`limit\` when rows returned equals applied limit (indicating more rows likely exist)
230
239
  - \`copyImport\`: \`{command, stdinCommand, notes}\` — Both file and stdin COPY commands
@@ -254,7 +263,7 @@ Defaults: \`threshold\`=0.3 (use 0.1-0.2 for partial), \`maxDistance\`=3 (use 5+
254
263
 
255
264
  - All text tools support \`schema.table\` format (auto-parsed, embedded schema takes priority over explicit \`schema\` param)
256
265
  - \`pg_text_search\`: Supports both \`column\` (singular string) and \`columns\` (array). Either is valid—\`column\` auto-converts to array
257
- - \`pg_trigram_similarity\`, \`pg_fuzzy_match\`, \`pg_regexp_match\`, \`pg_like_search\`: All default to 100 results to prevent large payloads. Use \`limit: 0\` for all rows
266
+ - 📦 **AI-Optimized Payloads**: All row-returning text tools (\`pg_text_search\`, \`pg_text_rank\`, \`pg_text_headline\`, \`pg_trigram_similarity\`, \`pg_fuzzy_match\`, \`pg_regexp_match\`, \`pg_like_search\`) default to 100 results. Returns \`truncated: true\` + \`hint\` when capped. Use \`limit: 0\` for all rows
258
267
  - \`pg_fuzzy_match\`: Levenshtein returns distance (lower=better). Soundex/metaphone return phonetic codes (exact match only). ⛔ Invalid \`method\` values throw error with valid options
259
268
  - \`pg_text_normalize\`: Removes accents only (unaccent). Does NOT lowercase/trim
260
269
  - 📍 **Table vs Standalone**: \`normalize\`, \`sentiment\`, \`toVector\`, \`toQuery\`, \`searchConfig\` are standalone (text input only). For phonetic matching: use \`pg_fuzzy_match\` with \`method: 'soundex'|'metaphone'\` (direct MCP), or \`pg.text.soundex()\`/\`pg.text.metaphone()\` (Code Mode convenience wrappers that call fuzzyMatch internally)
@@ -266,12 +275,13 @@ Defaults: \`threshold\`=0.3 (use 0.1-0.2 for partial), \`maxDistance\`=3 (use 5+
266
275
  Core: \`listSchemas()\`, \`createSchema()\`, \`dropSchema()\`, \`listViews()\`, \`createView()\`, \`dropView()\`, \`listSequences()\`, \`createSequence()\`, \`dropSequence()\`, \`listFunctions()\`, \`listTriggers()\`, \`listConstraints()\`
267
276
 
268
277
  Response Structures:
278
+
269
279
  - \`listSchemas()\`: \`{schemas: string[], count}\`
270
- - \`listViews({ includeMaterialized?, truncateDefinition?, limit? })\`: \`{views: [{schema, name, type, definition, definitionTruncated?}], count, hasMatViews, truncatedDefinitions?, truncated, note?}\`. Default \`limit: 50\` (use \`0\` for all). Default \`truncateDefinition: 500\` chars (use \`0\` for full definitions). \`truncated\` always included (\`true\`/\`false\`)
271
- - \`listSequences({ schema? })\`: \`{sequences: [{schema, name, owned_by}], count}\`. Note: \`owned_by\` omits \`public.\` prefix for sequences in public schema (e.g., \`users.id\` not \`public.users.id\`)
280
+ - \`listViews({ includeMaterialized?, truncateDefinition?, limit?, schema? })\`: \`{views: [{schema, name, type, definition, definitionTruncated?}], count, hasMatViews, truncatedDefinitions?, truncated, totalCount?, note?}\`. Default \`limit: 50\` (use \`0\` for all). Default \`truncateDefinition: 500\` chars (use \`0\` for full definitions). \`truncated\` always included (\`true\`/\`false\`). \`totalCount\` included when truncated. ⚠️ Validates schema existence—nonexistent schema returns \`{success: false, error: "..."}\`
281
+ - \`listSequences({ schema?, limit? })\`: \`{sequences: [{schema, name, owned_by}], count, truncated, totalCount?, note?}\`. Default \`limit: 50\` (use \`0\` for all). Returns \`truncated: true\` + \`totalCount\` when results are limited. ⚠️ Validates schema existence—nonexistent schema returns \`{success: false, error: "..."}\`. Note: \`owned_by\` omits \`public.\` prefix for sequences in public schema (e.g., \`users.id\` not \`public.users.id\`)
272
282
  - \`listFunctions({ schema?, limit?, exclude? })\`: \`{functions: [{schema, name, arguments, returns, language, volatility}], count, limit}\`
273
283
  - \`listTriggers({ schema?, table? })\`: \`{triggers: [{schema, table_name, name, timing, events, function_name, enabled}], count}\`
274
- - \`listConstraints({ schema?, table?, type? })\`: \`{constraints: [{schema, table_name, name, type, definition}], count}\`. Type codes: \`p\`=primary_key, \`f\`=foreign_key, \`u\`=unique, \`c\`=check
284
+ - \`listConstraints({ schema?, table?, type? })\`: \`{constraints: [{schema, table_name, name, type, definition}], count}\`. Type filter values: \`primary_key\`, \`foreign_key\`, \`unique\`, \`check\`. Returned \`type\` field uses matching human-readable names
275
285
  - \`dropSchema/dropView/dropSequence\`: All return \`{existed: true/false}\` to indicate if object existed before drop
276
286
  - \`createSchema/createSequence\` (with \`ifNotExists\`) and \`createView\` (with \`orReplace\`): Return \`{alreadyExisted: true/false}\` when the flag is set. Without \`ifNotExists\`/\`orReplace\`, the field is omitted
277
287
 
@@ -279,6 +289,8 @@ Response Structures:
279
289
  - \`pg_create_sequence\`: Supports \`schema.name\` format. Parameters: \`start\`, \`increment\`, \`minValue\`, \`maxValue\`, \`cache\`, \`cycle\`, \`ownedBy\`, \`ifNotExists\`
280
290
  - \`pg_list_functions\`: Default limit=500. Use \`schema: 'public'\`, \`limit: 2000\`, or \`exclude: ['postgis', 'pg_trgm', 'ltree', 'citext', 'fuzzystrmatch', 'pg_stat_statements', 'hypopg', 'unaccent', 'pg_stat_kcache', 'pgcrypto', 'partman', 'vector', 'topology']\` to filter. ⚠️ \`exclude\` filters by **schema name** AND extension-owned functions. The \`language\` filter does NOT exclude extension functions—use \`exclude\` alongside \`language\` for clean results. Note: Aggressive \`exclude\` may return 0 results if all functions belong to excluded extensions
281
291
 
292
+ 📦 **AI-Optimized Payloads**: \`listViews({ limit? })\` and \`listSequences({ limit? })\` both default to 50 rows. Returns \`truncated: true\` + \`totalCount\` when limited. Use \`limit: 0\` for all
293
+
282
294
  **Discovery**: \`pg.schema.help()\` returns \`{methods, methodAliases, examples}\` object
283
295
 
284
296
  ## Partitioning Tools
@@ -348,27 +360,32 @@ Core: \`createExtension()\`, \`query()\`, \`match()\`, \`subpath()\`, \`lca()\`,
348
360
  ## PostGIS Tools
349
361
 
350
362
  **Geometry Creation:**
363
+
351
364
  - \`pg_geocode\`: Create point geometry from lat/lng. Returns \`{geojson, wkt}\`. ⚠️ Validates bounds: lat ±90°, lng ±180°
352
365
  - \`pg_geometry_column\`: Add geometry column to table. \`ifNotExists\` returns \`{alreadyExists: true}\`
353
366
  - \`pg_spatial_index\`: Create GiST spatial index. Auto-generates name if not provided. \`ifNotExists\` supported
354
367
 
355
368
  **Spatial Queries:**
369
+
356
370
  - \`pg_distance\`: Find geometries within distance from point. Returns \`{results, count}\` with \`distance_meters\`. ⚠️ Validates point bounds
357
371
  - \`pg_bounding_box\`: Find geometries within lat/lng bounding box. Use \`select\` array for specific columns
358
372
  - \`pg_intersection\`: Find geometries intersecting a WKT/GeoJSON geometry. Auto-detects SRID from column
359
373
  - \`pg_point_in_polygon\`: Check if point is within table polygons. Returns \`{containingPolygons, count}\`. ⚠️ Validates point bounds
360
374
 
361
375
  **Geometry Operations (Table-based):**
376
+
362
377
  - \`pg_buffer\`: Create buffer zone around table geometries. Default limit: 50 rows. Default simplify: 10m (set \`simplify: 0\` to disable). Returns \`truncated: true\` + \`totalCount\` when results are truncated. Use \`limit: 0\` for all rows
363
378
  - \`pg_geo_transform\`: Transform table geometries between SRIDs. Default limit: 50 rows. Returns \`truncated: true\` + \`totalCount\` when results are truncated. Use \`limit: 0\` for all rows. Auto-detects \`fromSrid\` from column metadata if not provided (returns \`autoDetectedSrid: true\`). \`fromSrid\`/\`sourceSrid\` and \`toSrid\`/\`targetSrid\` aliases
364
379
  - \`pg_geo_cluster\`: Spatial clustering (DBSCAN/K-Means). K-Means: If \`numClusters\` exceeds row count, automatically clamps to available rows with \`warning\` field. DBSCAN: Returns contextual \`hints\` array explaining parameter effects (e.g., "All points formed single cluster—decrease eps") and \`parameterGuide\` explaining eps/minPoints trade-offs
365
380
 
366
381
  **Geometry Operations (Standalone WKT/GeoJSON):**
382
+
367
383
  - \`pg_geometry_buffer\`: Create buffer around WKT/GeoJSON. Returns \`{buffer_geojson, buffer_wkt, distance_meters}\`. Optional \`simplify\` param (meters) reduces polygon complexity—returns \`simplified\`, \`simplifyTolerance\` when applied. ⚠️ Returns \`warning\` if simplify tolerance is too high and geometry collapses to null
368
384
  - \`pg_geometry_transform\`: Transform WKT/GeoJSON between SRIDs. Returns \`{transformed_geojson, transformed_wkt, fromSrid, toSrid}\`
369
385
  - \`pg_geometry_intersection\`: Compute intersection of two geometries. Returns \`{intersects, intersection_geojson, intersection_area_sqm}\`. Normalizes SRID (4326) automatically—safe to mix GeoJSON and WKT
370
386
 
371
387
  **Administration:**
388
+
372
389
  - \`pg_postgis_create_extension\`: Enable PostGIS extension (idempotent)
373
390
  - \`pg_geo_index_optimize\`: Analyze spatial indexes. Without \`table\` param, analyzes all spatial indexes
374
391
 
@@ -420,16 +437,19 @@ No \`setTimeout\`, \`setInterval\`, \`fetch\`, or network access. Use \`pg.core.
420
437
  Core: \`begin()\`, \`commit()\`, \`rollback()\`, \`savepoint()\`, \`rollbackTo()\`, \`release()\`, \`execute()\`
421
438
 
422
439
  **Transaction Lifecycle:**
440
+
423
441
  - \`pg_transaction_begin\`: Start new transaction. Returns \`{transactionId, isolationLevel, message}\`. Use \`transactionId\` for subsequent operations
424
442
  - \`pg_transaction_commit\`: Commit transaction, making all changes permanent. \`transactionId\`/\`tx\`/\`txId\` aliases
425
443
  - \`pg_transaction_rollback\`: Rollback transaction, discarding all changes. \`transactionId\`/\`tx\`/\`txId\` aliases
426
444
 
427
445
  **Savepoints:**
446
+
428
447
  - \`pg_transaction_savepoint\`: Create savepoint within transaction. \`name\`/\`savepoint\` + \`transactionId\`/\`tx\`/\`txId\`
429
448
  - \`pg_transaction_rollback_to\`: Rollback to savepoint, restoring database state to when the savepoint was created. ⚠️ Undoes ALL work (data changes AND savepoints) created after the target savepoint
430
449
  - \`pg_transaction_release\`: Release savepoint, keeping all changes since it was created. \`name\`/\`savepoint\` aliases
431
450
 
432
451
  **Atomic Execution:**
452
+
433
453
  - \`pg_transaction_execute\`: Execute multiple statements atomically. Two modes:
434
454
  - **Auto-commit**: Without \`transactionId\`—auto-commits on success, auto-rollbacks on any error
435
455
  - **Join existing**: With \`transactionId\`/\`tx\`/\`txId\`—no auto-commit, caller controls via commit/rollback
@@ -438,16 +458,44 @@ Core: \`begin()\`, \`commit()\`, \`rollback()\`, \`savepoint()\`, \`rollbackTo()
438
458
  - Supports SELECT statements inside \`statements\`—results include \`rows\` in the response for mixed read/write workflows
439
459
 
440
460
  **Aborted Transaction State:**
461
+
441
462
  - ⚠️ If any statement in a transaction fails, PostgreSQL puts the transaction into an **aborted state**
442
463
  - In aborted state, only \`ROLLBACK\` or \`ROLLBACK TO SAVEPOINT\` commands are accepted—all other commands will error
443
464
  - Use \`pg_transaction_rollback\` to end the transaction, or \`pg_transaction_rollback_to\` to recover to a savepoint
444
465
  - \`pg_transaction_commit\` on an aborted transaction will detect the state and report it (not silently rollback)
445
466
 
446
467
  **Response Structures:**
468
+
447
469
  - \`begin\`: \`{transactionId, isolationLevel: 'READ COMMITTED', message}\`
448
470
  - \`commit/rollback\`: \`{success, transactionId, message}\`
449
471
  - \`savepoint/release/rollbackTo\`: \`{success, transactionId, savepoint, message}\`
450
472
  - \`execute\`: \`{success, statementsExecuted, results: [{sql, rowsAffected, rowCount, rows?}], transactionId?}\`
451
473
 
452
- **Discovery**: \`pg.transactions.help()\` returns \`{methods, methodAliases, examples}\``;
474
+ **Discovery**: \`pg.transactions.help()\` returns \`{methods, methodAliases, examples}\`
475
+
476
+ ## Introspection Tools
477
+
478
+ Code Mode: \`pg.introspection.*\` — 12 tools for schema analysis and migration tracking.
479
+ Core: \`dependencyGraph()\`, \`topologicalSort()\`, \`cascadeSimulator()\`, \`schemaSnapshot()\`, \`constraintAnalysis()\`, \`migrationRisks()\`, \`migrationInit()\`, \`migrationRecord()\`, \`migrationApply()\`, \`migrationRollback()\`, \`migrationHistory()\`, \`migrationStatus()\`
480
+
481
+ **Schema Analysis (6 tools):**
482
+
483
+ - \`pg_dependency_graph\`: FK dependency graph with cycle detection, row counts, edge annotations (CASCADE, RESTRICT, SET NULL, SET DEFAULT, NO ACTION). Params: \`schema?\`, \`includeRowCounts?\` (default: true), \`excludeExtensionSchemas?\` (default: true, excludes cron/topology/tiger/tiger_data)
484
+ - \`pg_topological_sort\`: Safe DDL execution order via Kahn's algorithm. \`direction: 'create'\` (default) = dependencies first; \`direction: 'drop'\` = dependents first. \`excludeExtensionSchemas?\` (default: true). Self-referencing FKs are filtered (don't affect ordering)
485
+ - \`pg_cascade_simulator\`: Simulates DELETE/DROP/TRUNCATE impact with cascade path tracing. \`operation\`: 'DELETE' (default), 'DROP', 'TRUNCATE'. ⚠️ DROP/TRUNCATE force-cascade regardless of FK ON DELETE rule → always \`severity: 'critical'\` when dependent tables exist. Returns \`{sourceTable, operation, affectedTables, severity, stats}\`. Stats include \`blockingActions\` (NO ACTION + RESTRICT FKs that would prevent the operation)
486
+ - \`pg_schema_snapshot\`: Full schema snapshot in one call. \`sections?\`: \`['tables','views','indexes','constraints','functions','triggers','sequences','types','extensions']\` to limit output. \`compact?\`: \`true\` to omit per-column details from tables section for reduced payload (use \`pg_describe_table\` to drill into specific tables). \`excludeExtensionSchemas?\` (default: true): excludes cron, topology, tiger, tiger_data schemas. \`schema?\`: filter to specific schema. Returns \`{snapshot, stats, generatedAt, compact?}\`
487
+ - \`pg_constraint_analysis\`: Identifies constraint issues. \`checks?\`: \`['redundant','missing_fk','missing_not_null','missing_pk','unindexed_fk']\`. Returns \`{findings, summary}\`
488
+ - \`pg_migration_risks\`: Static DDL risk assessment. ⚠️ Does NOT validate object existence—analyzes SQL patterns only. Returns \`{risks, summary}\`
489
+
490
+ **Migration Tracking (6 tools):**
491
+
492
+ - \`pg_migration_init\`: Initialize/verify \`_mcp_schema_versions\` tracking table (idempotent). Returns \`{success, tableCreated, tableName, existingRecords}\`
493
+ - \`pg_migration_record\`: Record a migration with SHA-256 hash dedup. ⚠️ Records metadata only—does NOT execute the SQL. Use \`pg_migration_apply\` instead for complete migrations. Params: \`version\`, \`description?\`, \`migrationSql\`, \`rollbackSql?\`, \`sourceSystem?\`. Returns \`{success, record}\`
494
+ - \`pg_migration_apply\`: Execute migration SQL and record it atomically in a single transaction. On failure, rolls back and records status as 'failed'. Same params as \`pg_migration_record\`. Returns \`{success, record}\` or \`{success: false, error}\`
495
+ - \`pg_migration_rollback\`: Execute stored rollback SQL in a transaction. \`dryRun: true\` previews without executing (default: \`false\` — executes immediately). Lookup by \`id\` or \`version\`. Returns \`{success, dryRun, rollbackSql, record}\`
496
+ - \`pg_migration_history\`: Query migration history with \`status?\` ('applied'|'rolled_back'|'failed'), \`sourceSystem?\`, \`limit?\`, \`offset?\`. Returns \`{records, total, limit, offset}\`
497
+ - \`pg_migration_status\`: Aggregate dashboard. Returns \`{initialized, latestVersion, counts, sourceSystems}\`
498
+
499
+ **Discovery**: \`pg.introspection.help()\` returns \`{methods, methodAliases, examples}\`
500
+ `;
453
501
  //# sourceMappingURL=ServerInstructions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ServerInstructions.js","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAwbsD,CAAC"}
1
+ {"version":3,"file":"ServerInstructions.js","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoelC,CAAC"}
@@ -5,8 +5,8 @@
5
5
  * STRICT LIMIT: No shortcut may exceed 50 tools.
6
6
  *
7
7
  * TOOL COUNT ACCOUNTING:
8
- * ToolConstants arrays total: 215 tools (sum of all group arrays)
9
- * Published "specialized tools": 206 (215 - 9 utility tools)
8
+ * ToolConstants arrays total: 227 tools (sum of all group arrays)
9
+ * Published "specialized tools": 218 (227 - 9 utility tools)
10
10
  *
11
11
  * The 9 excluded utility tools:
12
12
  * - 8 create_extension helpers (one per extension group):
@@ -19,6 +19,8 @@
19
19
  * When adding new tools: update group sizes, meta-group sums,
20
20
  * and the published total in README/DOCKER_README/wiki.
21
21
  * The published total = array total - 9 utility tools.
22
+ *
23
+ * Verify: 20+7+19+13+20+10+11+9+12+16+15+6+8+8+10+7+6+8+12+9+1 = 227
22
24
  */
23
25
  import type { ToolGroup, MetaGroup } from "../types/index.js";
24
26
  /**
@@ -34,26 +36,27 @@ export declare const TOOL_GROUPS: Record<ToolGroup, string[]>;
34
36
  *
35
37
  * Group sizes:
36
38
  * core:20, transactions:7, jsonb:19, text:13, performance:20,
37
- * admin:10, monitoring:11, backup:9, schema:12, vector:16
38
- * postgis:15, partitioning:6, stats:8, cron:8, partman:10
39
+ * admin:10, monitoring:11, backup:9, schema:12, introspection:12,
40
+ * vector:16, postgis:15, partitioning:6, stats:8, cron:8, partman:10
39
41
  * kcache:7, citext:6, ltree:8, pgcrypto:9, codemode:1
40
42
  *
41
43
  * Tool counts (with codemode):
42
- * starter: 59 (core:20 + transactions:7 + jsonb:19 + schema:12 + codemode:1)
43
- * essential: 47 (core:20 + transactions:7 + jsonb:19 + codemode:1)
44
- * dev-power: 54 (core:20 + transactions:7 + schema:12 + stats:8 + partitioning:6 + codemode:1)
45
- * ai-data: 60 (core:20 + jsonb:19 + text:13 + transactions:7 + codemode:1)
46
- * ai-vector: 50 (core:20 + vector:16 + transactions:7 + partitioning:6 + codemode:1)
47
- * dba-monitor: 59 (core:20 + monitoring:11 + performance:20 + transactions:7 + codemode:1)
48
- * dba-manage: 58 (core:20 + admin:10 + backup:9 + partitioning:6 + schema:12 + codemode:1)
49
- * dba-stats: 57 (core:20 + admin:10 + monitoring:11 + transactions:7 + stats:8 + codemode:1)
50
- * geo: 43 (core:20 + postgis:15 + transactions:7 + codemode:1)
51
- * base-core: 59 (core:20 + jsonb:19 + transactions:7 + schema:12 + codemode:1)
52
- * base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
53
- * ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
54
- * ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
55
- * ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
56
- * ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
44
+ * starter: 59 (core:20 + transactions:7 + jsonb:19 + schema:12 + codemode:1)
45
+ * essential: 47 (core:20 + transactions:7 + jsonb:19 + codemode:1)
46
+ * dev-schema: 52 (core:20 + transactions:7 + schema:12 + introspection:12 + codemode:1)
47
+ * dev-analytics: 42 (core:20 + transactions:7 + stats:8 + partitioning:6 + codemode:1)
48
+ * ai-data: 60 (core:20 + jsonb:19 + text:13 + transactions:7 + codemode:1)
49
+ * ai-vector: 50 (core:20 + vector:16 + transactions:7 + partitioning:6 + codemode:1)
50
+ * dba-monitor: 59 (core:20 + monitoring:11 + performance:20 + transactions:7 + codemode:1)
51
+ * dba-schema: 45 (core:20 + schema:12 + introspection:12 + codemode:1)
52
+ * dba-infra: 46 (core:20 + admin:10 + backup:9 + partitioning:6 + codemode:1)
53
+ * dba-stats: 57 (core:20 + admin:10 + monitoring:11 + transactions:7 + stats:8 + codemode:1)
54
+ * geo: 43 (core:20 + postgis:15 + transactions:7 + codemode:1)
55
+ * base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
56
+ * ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
57
+ * ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
58
+ * ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
59
+ * ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
57
60
  */
58
61
  export declare const META_GROUPS: Record<MetaGroup, ToolGroup[]>;
59
62
  //# sourceMappingURL=ToolConstants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToolConstants.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CA+PnD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CA8DtD,CAAC"}
1
+ {"version":3,"file":"ToolConstants.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9D;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,CA6QnD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAyDtD,CAAC"}
@@ -5,8 +5,8 @@
5
5
  * STRICT LIMIT: No shortcut may exceed 50 tools.
6
6
  *
7
7
  * TOOL COUNT ACCOUNTING:
8
- * ToolConstants arrays total: 215 tools (sum of all group arrays)
9
- * Published "specialized tools": 206 (215 - 9 utility tools)
8
+ * ToolConstants arrays total: 227 tools (sum of all group arrays)
9
+ * Published "specialized tools": 218 (227 - 9 utility tools)
10
10
  *
11
11
  * The 9 excluded utility tools:
12
12
  * - 8 create_extension helpers (one per extension group):
@@ -19,6 +19,8 @@
19
19
  * When adding new tools: update group sizes, meta-group sums,
20
20
  * and the published total in README/DOCKER_README/wiki.
21
21
  * The published total = array total - 9 utility tools.
22
+ *
23
+ * Verify: 20+7+19+13+20+10+11+9+12+16+15+6+8+8+10+7+6+8+12+9+1 = 227
22
24
  */
23
25
  /**
24
26
  * Default tool groups and their member tools.
@@ -267,6 +269,20 @@ export const TOOL_GROUPS = {
267
269
  "pg_ltree_convert_column",
268
270
  "pg_ltree_create_index",
269
271
  ],
272
+ introspection: [
273
+ "pg_dependency_graph",
274
+ "pg_topological_sort",
275
+ "pg_cascade_simulator",
276
+ "pg_schema_snapshot",
277
+ "pg_constraint_analysis",
278
+ "pg_migration_risks",
279
+ "pg_migration_init",
280
+ "pg_migration_record",
281
+ "pg_migration_apply",
282
+ "pg_migration_rollback",
283
+ "pg_migration_history",
284
+ "pg_migration_status",
285
+ ],
270
286
  pgcrypto: [
271
287
  "pg_pgcrypto_create_extension",
272
288
  "pg_pgcrypto_hash",
@@ -288,43 +304,45 @@ export const TOOL_GROUPS = {
288
304
  *
289
305
  * Group sizes:
290
306
  * core:20, transactions:7, jsonb:19, text:13, performance:20,
291
- * admin:10, monitoring:11, backup:9, schema:12, vector:16
292
- * postgis:15, partitioning:6, stats:8, cron:8, partman:10
307
+ * admin:10, monitoring:11, backup:9, schema:12, introspection:12,
308
+ * vector:16, postgis:15, partitioning:6, stats:8, cron:8, partman:10
293
309
  * kcache:7, citext:6, ltree:8, pgcrypto:9, codemode:1
294
310
  *
295
311
  * Tool counts (with codemode):
296
- * starter: 59 (core:20 + transactions:7 + jsonb:19 + schema:12 + codemode:1)
297
- * essential: 47 (core:20 + transactions:7 + jsonb:19 + codemode:1)
298
- * dev-power: 54 (core:20 + transactions:7 + schema:12 + stats:8 + partitioning:6 + codemode:1)
299
- * ai-data: 60 (core:20 + jsonb:19 + text:13 + transactions:7 + codemode:1)
300
- * ai-vector: 50 (core:20 + vector:16 + transactions:7 + partitioning:6 + codemode:1)
301
- * dba-monitor: 59 (core:20 + monitoring:11 + performance:20 + transactions:7 + codemode:1)
302
- * dba-manage: 58 (core:20 + admin:10 + backup:9 + partitioning:6 + schema:12 + codemode:1)
303
- * dba-stats: 57 (core:20 + admin:10 + monitoring:11 + transactions:7 + stats:8 + codemode:1)
304
- * geo: 43 (core:20 + postgis:15 + transactions:7 + codemode:1)
305
- * base-core: 59 (core:20 + jsonb:19 + transactions:7 + schema:12 + codemode:1)
306
- * base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
307
- * ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
308
- * ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
309
- * ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
310
- * ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
312
+ * starter: 59 (core:20 + transactions:7 + jsonb:19 + schema:12 + codemode:1)
313
+ * essential: 47 (core:20 + transactions:7 + jsonb:19 + codemode:1)
314
+ * dev-schema: 52 (core:20 + transactions:7 + schema:12 + introspection:12 + codemode:1)
315
+ * dev-analytics: 42 (core:20 + transactions:7 + stats:8 + partitioning:6 + codemode:1)
316
+ * ai-data: 60 (core:20 + jsonb:19 + text:13 + transactions:7 + codemode:1)
317
+ * ai-vector: 50 (core:20 + vector:16 + transactions:7 + partitioning:6 + codemode:1)
318
+ * dba-monitor: 59 (core:20 + monitoring:11 + performance:20 + transactions:7 + codemode:1)
319
+ * dba-schema: 45 (core:20 + schema:12 + introspection:12 + codemode:1)
320
+ * dba-infra: 46 (core:20 + admin:10 + backup:9 + partitioning:6 + codemode:1)
321
+ * dba-stats: 57 (core:20 + admin:10 + monitoring:11 + transactions:7 + stats:8 + codemode:1)
322
+ * geo: 43 (core:20 + postgis:15 + transactions:7 + codemode:1)
323
+ * base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
324
+ * ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
325
+ * ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
326
+ * ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
327
+ * ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
311
328
  */
312
329
  export const META_GROUPS = {
313
- // 1. General Use (Recommended) - All include codemode for token efficiency
330
+ // 1. General Use - All include codemode for token efficiency
314
331
  starter: ["core", "transactions", "jsonb", "schema", "codemode"], // 59
315
332
  essential: ["core", "transactions", "jsonb", "codemode"], // 47
316
- "dev-power": [
333
+ // 2. Developer Workloads
334
+ "dev-schema": ["core", "transactions", "schema", "introspection", "codemode"], // 52
335
+ "dev-analytics": [
317
336
  "core",
318
337
  "transactions",
319
- "schema",
320
338
  "stats",
321
339
  "partitioning",
322
340
  "codemode",
323
- ], // 54
324
- // 2. AI Workloads
341
+ ], // 42
342
+ // 3. AI Workloads
325
343
  "ai-data": ["core", "jsonb", "text", "transactions", "codemode"], // 60
326
344
  "ai-vector": ["core", "vector", "transactions", "partitioning", "codemode"], // 50
327
- // 3. DBA Workloads
345
+ // 4. DBA Workloads
328
346
  "dba-monitor": [
329
347
  "core",
330
348
  "monitoring",
@@ -332,14 +350,8 @@ export const META_GROUPS = {
332
350
  "transactions",
333
351
  "codemode",
334
352
  ], // 59
335
- "dba-manage": [
336
- "core",
337
- "admin",
338
- "backup",
339
- "partitioning",
340
- "schema",
341
- "codemode",
342
- ], // 58
353
+ "dba-schema": ["core", "schema", "introspection", "codemode"], // 45
354
+ "dba-infra": ["core", "admin", "backup", "partitioning", "codemode"], // 46
343
355
  "dba-stats": [
344
356
  "core",
345
357
  "admin",
@@ -348,10 +360,9 @@ export const META_GROUPS = {
348
360
  "stats",
349
361
  "codemode",
350
362
  ], // 57
351
- // 4. Specialty Workloads
363
+ // 5. Specialty Workloads
352
364
  geo: ["core", "postgis", "transactions", "codemode"], // 43
353
- // 5. Base Blocks (Building Blocks for Combining)
354
- "base-core": ["core", "jsonb", "transactions", "schema", "codemode"], // 59
365
+ // 6. Building Blocks (for combining)
355
366
  "base-ops": [
356
367
  "admin",
357
368
  "monitoring",
@@ -361,7 +372,7 @@ export const META_GROUPS = {
361
372
  "citext",
362
373
  "codemode",
363
374
  ], // 51
364
- // 6. Extension Bundles (for adding extension capabilities)
375
+ // 7. Extension Bundles (for adding extension capabilities)
365
376
  "ext-ai": ["vector", "pgcrypto", "codemode"], // 26
366
377
  "ext-geo": ["postgis", "ltree", "codemode"], // 24
367
378
  "ext-schedule": ["cron", "partman", "codemode"], // 19
@@ -1 +1 @@
1
- {"version":3,"file":"ToolConstants.js","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolConstants.js","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAgC;IACtD,IAAI,EAAE;QACJ,eAAe;QACf,gBAAgB;QAChB,gBAAgB;QAChB,mBAAmB;QACnB,iBAAiB;QACjB,eAAe;QACf,gBAAgB;QAChB,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,oBAAoB;QACpB,sBAAsB;QACtB,6BAA6B;QAC7B,0BAA0B;QAC1B,oBAAoB;QACpB,WAAW;QACX,iBAAiB;QACjB,UAAU;QACV,WAAW;QACX,aAAa;QACb,eAAe;KAChB;IACD,YAAY,EAAE;QACZ,sBAAsB;QACtB,uBAAuB;QACvB,yBAAyB;QACzB,0BAA0B;QAC1B,wBAAwB;QACxB,4BAA4B;QAC5B,wBAAwB;KACzB;IACD,KAAK,EAAE;QACL,kBAAkB;QAClB,cAAc;QACd,iBAAiB;QACjB,iBAAiB;QACjB,mBAAmB;QACnB,qBAAqB;QACrB,cAAc;QACd,iBAAiB;QACjB,gBAAgB;QAChB,eAAe;QACf,sBAAsB;QACtB,iBAAiB;QACjB,wBAAwB;QACxB,gBAAgB;QAChB,gBAAgB;QAChB,oBAAoB;QACpB,eAAe;QACf,wBAAwB;QACxB,wBAAwB;KACzB;IACD,IAAI,EAAE;QACJ,gBAAgB;QAChB,cAAc;QACd,uBAAuB;QACvB,gBAAgB;QAChB,iBAAiB;QACjB,gBAAgB;QAChB,kBAAkB;QAClB,qBAAqB;QACrB,mBAAmB;QACnB,mBAAmB;QACnB,mBAAmB;QACnB,kBAAkB;QAClB,uBAAuB;KACxB;IACD,WAAW,EAAE;QACX,YAAY;QACZ,oBAAoB;QACpB,oBAAoB;QACpB,gBAAgB;QAChB,gBAAgB;QAChB,oBAAoB;QACpB,kBAAkB;QAClB,UAAU;QACV,gBAAgB;QAChB,oBAAoB;QACpB,oBAAoB;QACpB,0BAA0B;QAC1B,uBAAuB;QACvB,yBAAyB;QACzB,6BAA6B;QAC7B,+BAA+B;QAC/B,mBAAmB;QACnB,sBAAsB;QACtB,iBAAiB;QACjB,qBAAqB;KACtB;IACD,KAAK,EAAE;QACL,WAAW;QACX,mBAAmB;QACnB,YAAY;QACZ,YAAY;QACZ,sBAAsB;QACtB,mBAAmB;QACnB,gBAAgB;QAChB,eAAe;QACf,gBAAgB;QAChB,YAAY;KACb;IACD,UAAU,EAAE;QACV,kBAAkB;QAClB,gBAAgB;QAChB,qBAAqB;QACrB,uBAAuB;QACvB,mBAAmB;QACnB,kBAAkB;QAClB,WAAW;QACX,oBAAoB;QACpB,sBAAsB;QACtB,2BAA2B;QAC3B,wBAAwB;KACzB;IACD,MAAM,EAAE;QACN,eAAe;QACf,gBAAgB;QAChB,gBAAgB;QAChB,gBAAgB;QAChB,uBAAuB;QACvB,oBAAoB;QACpB,oBAAoB;QACpB,qBAAqB;QACrB,6BAA6B;KAC9B;IACD,MAAM,EAAE;QACN,iBAAiB;QACjB,kBAAkB;QAClB,gBAAgB;QAChB,mBAAmB;QACnB,oBAAoB;QACpB,kBAAkB;QAClB,eAAe;QACf,gBAAgB;QAChB,cAAc;QACd,mBAAmB;QACnB,kBAAkB;QAClB,qBAAqB;KACtB;IACD,MAAM,EAAE;QACN,4BAA4B;QAC5B,sBAAsB;QACtB,kBAAkB;QAClB,wBAAwB;QACxB,kBAAkB;QAClB,wBAAwB;QACxB,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,mBAAmB;QACnB,0BAA0B;QAC1B,kBAAkB;QAClB,uBAAuB;QACvB,4BAA4B;QAC5B,iBAAiB;QACjB,oBAAoB;KACrB;IACD,OAAO,EAAE;QACP,6BAA6B;QAC7B,oBAAoB;QACpB,qBAAqB;QACrB,aAAa;QACb,WAAW;QACX,iBAAiB;QACjB,iBAAiB;QACjB,kBAAkB;QAClB,YAAY;QACZ,kBAAkB;QAClB,uBAAuB;QACvB,gBAAgB;QAChB,oBAAoB;QACpB,0BAA0B;QAC1B,uBAAuB;KACxB;IACD,YAAY,EAAE;QACZ,oBAAoB;QACpB,qBAAqB;QACrB,qBAAqB;QACrB,qBAAqB;QACrB,mBAAmB;QACnB,6BAA6B;KAC9B;IACD,KAAK,EAAE;QACL,sBAAsB;QACtB,sBAAsB;QACtB,sBAAsB;QACtB,qBAAqB;QACrB,sBAAsB;QACtB,uBAAuB;QACvB,qBAAqB;QACrB,mBAAmB;KACpB;IACD,IAAI,EAAE;QACJ,0BAA0B;QAC1B,kBAAkB;QAClB,8BAA8B;QAC9B,oBAAoB;QACpB,mBAAmB;QACnB,mBAAmB;QACnB,yBAAyB;QACzB,yBAAyB;KAC1B;IACD,OAAO,EAAE;QACP,6BAA6B;QAC7B,0BAA0B;QAC1B,4BAA4B;QAC5B,4BAA4B;QAC5B,wBAAwB;QACxB,0BAA0B;QAC1B,2BAA2B;QAC3B,0BAA0B;QAC1B,2BAA2B;QAC3B,qCAAqC;KACtC;IACD,MAAM,EAAE;QACN,4BAA4B;QAC5B,uBAAuB;QACvB,mBAAmB;QACnB,kBAAkB;QAClB,0BAA0B;QAC1B,6BAA6B;QAC7B,iBAAiB;KAClB;IACD,MAAM,EAAE;QACN,4BAA4B;QAC5B,0BAA0B;QAC1B,wBAAwB;QACxB,8BAA8B;QAC9B,mBAAmB;QACnB,0BAA0B;KAC3B;IACD,KAAK,EAAE;QACL,2BAA2B;QAC3B,gBAAgB;QAChB,kBAAkB;QAClB,cAAc;QACd,gBAAgB;QAChB,uBAAuB;QACvB,yBAAyB;QACzB,uBAAuB;KACxB;IACD,aAAa,EAAE;QACb,qBAAqB;QACrB,qBAAqB;QACrB,sBAAsB;QACtB,oBAAoB;QACpB,wBAAwB;QACxB,oBAAoB;QACpB,mBAAmB;QACnB,qBAAqB;QACrB,oBAAoB;QACpB,uBAAuB;QACvB,sBAAsB;QACtB,qBAAqB;KACtB;IACD,QAAQ,EAAE;QACR,8BAA8B;QAC9B,kBAAkB;QAClB,kBAAkB;QAClB,qBAAqB;QACrB,qBAAqB;QACrB,6BAA6B;QAC7B,8BAA8B;QAC9B,sBAAsB;QACtB,mBAAmB;KACpB;IACD,QAAQ,EAAE,CAAC,iBAAiB,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,MAAM,WAAW,GAAmC;IACzD,6DAA6D;IAC7D,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,KAAK;IACvE,SAAS,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,KAAK;IAE/D,yBAAyB;IACzB,YAAY,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,KAAK;IACpF,eAAe,EAAE;QACf,MAAM;QACN,cAAc;QACd,OAAO;QACP,cAAc;QACd,UAAU;KACX,EAAE,KAAK;IAER,kBAAkB;IAClB,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,KAAK;IACvE,WAAW,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,KAAK;IAElF,mBAAmB;IACnB,aAAa,EAAE;QACb,MAAM;QACN,YAAY;QACZ,aAAa;QACb,cAAc;QACd,UAAU;KACX,EAAE,KAAK;IACR,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,KAAK;IACpE,WAAW,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,KAAK;IAC3E,WAAW,EAAE;QACX,MAAM;QACN,OAAO;QACP,YAAY;QACZ,cAAc;QACd,OAAO;QACP,UAAU;KACX,EAAE,KAAK;IAER,yBAAyB;IACzB,GAAG,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,KAAK;IAE3D,qCAAqC;IACrC,UAAU,EAAE;QACV,OAAO;QACP,YAAY;QACZ,QAAQ;QACR,cAAc;QACd,OAAO;QACP,QAAQ;QACR,UAAU;KACX,EAAE,KAAK;IAER,2DAA2D;IAC3D,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,KAAK;IACnD,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,KAAK;IAClD,cAAc,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,KAAK;IACtD,UAAU,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,KAAK;CACzD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAc3B;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAO1C;AAoBD;;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,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,EAAE,CAMhE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,gBAAgB,CAuIlB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAET;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,CAMvD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,aAAa,SAAM,GAClB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAO/C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAqCjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,EAAE,CAMF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,EAAE,CAMF"}
1
+ {"version":3,"file":"ToolFilter.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolFilter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAc3B;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAO1C;AAoBD;;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,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,EAAE,CAMhE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,gBAAgB,CAoIlB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAET;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,CAMvD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,aAAa,SAAM,GAClB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAO/C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAqCjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,EAAE,CAMF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAClC,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,EAAE,CAMF"}