@neverinfamous/postgres-mcp 1.1.0 → 1.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.
- package/README.md +39 -31
- package/dist/__tests__/mocks/adapter.d.ts.map +1 -1
- package/dist/__tests__/mocks/adapter.js +0 -1
- package/dist/__tests__/mocks/adapter.js.map +1 -1
- package/dist/__tests__/mocks/pool.d.ts.map +1 -1
- package/dist/__tests__/mocks/pool.js +0 -1
- package/dist/__tests__/mocks/pool.js.map +1 -1
- package/dist/adapters/DatabaseAdapter.js +1 -1
- package/dist/adapters/DatabaseAdapter.js.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
- package/dist/adapters/postgresql/PostgresAdapter.js +25 -5
- package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
- package/dist/adapters/postgresql/prompts/backup.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/backup.js +2 -3
- package/dist/adapters/postgresql/prompts/backup.js.map +1 -1
- package/dist/adapters/postgresql/prompts/citext.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/citext.js +3 -4
- package/dist/adapters/postgresql/prompts/citext.js.map +1 -1
- package/dist/adapters/postgresql/prompts/extensionSetup.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/extensionSetup.js +2 -3
- package/dist/adapters/postgresql/prompts/extensionSetup.js.map +1 -1
- package/dist/adapters/postgresql/prompts/health.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/health.js +2 -3
- package/dist/adapters/postgresql/prompts/health.js.map +1 -1
- package/dist/adapters/postgresql/prompts/index.js +20 -27
- package/dist/adapters/postgresql/prompts/index.js.map +1 -1
- package/dist/adapters/postgresql/prompts/indexTuning.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/indexTuning.js +2 -3
- package/dist/adapters/postgresql/prompts/indexTuning.js.map +1 -1
- package/dist/adapters/postgresql/prompts/kcache.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/kcache.js +3 -4
- package/dist/adapters/postgresql/prompts/kcache.js.map +1 -1
- package/dist/adapters/postgresql/prompts/ltree.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/ltree.js +3 -4
- package/dist/adapters/postgresql/prompts/ltree.js.map +1 -1
- package/dist/adapters/postgresql/prompts/partman.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/partman.js +2 -3
- package/dist/adapters/postgresql/prompts/partman.js.map +1 -1
- package/dist/adapters/postgresql/prompts/pgcron.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/pgcron.js +2 -3
- package/dist/adapters/postgresql/prompts/pgcron.js.map +1 -1
- package/dist/adapters/postgresql/prompts/pgcrypto.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/pgcrypto.js +3 -4
- package/dist/adapters/postgresql/prompts/pgcrypto.js.map +1 -1
- package/dist/adapters/postgresql/prompts/pgvector.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/pgvector.js +3 -4
- package/dist/adapters/postgresql/prompts/pgvector.js.map +1 -1
- package/dist/adapters/postgresql/prompts/postgis.d.ts.map +1 -1
- package/dist/adapters/postgresql/prompts/postgis.js +2 -3
- package/dist/adapters/postgresql/prompts/postgis.js.map +1 -1
- package/dist/adapters/postgresql/schemas/core.d.ts +1 -0
- package/dist/adapters/postgresql/schemas/core.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/core.js +4 -0
- package/dist/adapters/postgresql/schemas/core.js.map +1 -1
- package/dist/adapters/postgresql/schemas/extensions.js +2 -2
- package/dist/adapters/postgresql/schemas/partitioning.d.ts +11 -8
- package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/partitioning.js +13 -10
- package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
- package/dist/adapters/postgresql/schemas/performance.d.ts +2 -1
- package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/performance.js +1 -2
- package/dist/adapters/postgresql/schemas/performance.js.map +1 -1
- package/dist/adapters/postgresql/schemas/postgis.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/postgis.js +0 -3
- package/dist/adapters/postgresql/schemas/postgis.js.map +1 -1
- package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +1 -1
- package/dist/adapters/postgresql/schemas/schema-mgmt.js +1 -1
- package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
- package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
- package/dist/adapters/postgresql/schemas/text-search.js +4 -1
- package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
- package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/backup/dump.js +50 -50
- package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
- package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/backup/planning.js +175 -172
- package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/convenience.js +25 -5
- package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/health.js +5 -2
- package/dist/adapters/postgresql/tools/core/health.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/query.js +3 -3
- package/dist/adapters/postgresql/tools/core/query.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/schemas.d.ts +1 -0
- package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/schemas.js +4 -0
- package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -1
- package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/core/tables.js +6 -2
- package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
- package/dist/adapters/postgresql/tools/kcache.js +45 -15
- package/dist/adapters/postgresql/tools/kcache.js.map +1 -1
- package/dist/adapters/postgresql/tools/ltree.js +5 -0
- package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
- package/dist/adapters/postgresql/tools/monitoring.js +5 -6
- package/dist/adapters/postgresql/tools/monitoring.js.map +1 -1
- package/dist/adapters/postgresql/tools/partitioning.js +71 -0
- package/dist/adapters/postgresql/tools/partitioning.js.map +1 -1
- package/dist/adapters/postgresql/tools/partman/management.js +1 -1
- package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
- package/dist/adapters/postgresql/tools/partman/operations.js +3 -3
- package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
- package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/performance/stats.js +4 -1
- package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
- package/dist/adapters/postgresql/tools/pgcrypto.js +6 -6
- package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/advanced.js +34 -5
- package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -1
- package/dist/adapters/postgresql/tools/postgis/basic.js +2 -2
- package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
- package/dist/adapters/postgresql/tools/schema.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/schema.js +18 -2
- package/dist/adapters/postgresql/tools/schema.js.map +1 -1
- package/dist/adapters/postgresql/tools/text.js +12 -8
- package/dist/adapters/postgresql/tools/text.js.map +1 -1
- package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/vector/advanced.js +52 -38
- package/dist/adapters/postgresql/tools/vector/advanced.js.map +1 -1
- package/dist/adapters/postgresql/tools/vector/basic.d.ts +8 -0
- package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +1 -1
- package/dist/adapters/postgresql/tools/vector/basic.js +94 -29
- package/dist/adapters/postgresql/tools/vector/basic.js.map +1 -1
- package/dist/cli/args.d.ts +2 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +15 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/cli.js +7 -6
- package/dist/cli.js.map +1 -1
- package/dist/codemode/api.d.ts.map +1 -1
- package/dist/codemode/api.js +3 -2
- package/dist/codemode/api.js.map +1 -1
- package/dist/constants/ServerInstructions.d.ts +1 -1
- package/dist/constants/ServerInstructions.d.ts.map +1 -1
- package/dist/constants/ServerInstructions.js +33 -29
- package/dist/constants/ServerInstructions.js.map +1 -1
- package/dist/filtering/ToolConstants.d.ts +29 -13
- package/dist/filtering/ToolConstants.d.ts.map +1 -1
- package/dist/filtering/ToolConstants.js +44 -27
- package/dist/filtering/ToolConstants.js.map +1 -1
- package/dist/utils/logger.js +2 -2
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/progress-utils.js +1 -1
- package/dist/utils/progress-utils.js.map +1 -1
- package/package.json +7 -7
|
@@ -22,7 +22,7 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
22
22
|
7. **pg_list_objects type**: Use \`type\` (singular string) or \`types\` (array). Auto-converts: \`{type: 'table'}\` ≡ \`{types: ['table']}\`
|
|
23
23
|
8. **pg_object_details**: Accepts: \`name\`, \`objectName\`, \`object\`, or \`table\`. Use \`type\`/\`objectType\` for type hint (supports: table, view, materialized_view, partitioned_table, function, sequence, index)
|
|
24
24
|
9. **pg_exists optional WHERE**: \`where\`/\`condition\`/\`filter\` is optional. Without it, checks if table has any rows
|
|
25
|
-
10. **pg_describe_table**: Returns columns, foreignKeys, primaryKey
|
|
25
|
+
10. **pg_describe_table**: Returns columns, foreignKeys, primaryKey, indexes, constraints. For listing ALL database indexes (not table-specific), use \`pg_get_indexes\` without \`table\` param
|
|
26
26
|
11. **pg_vector_insert updateExisting**: Uses direct UPDATE (avoids NOT NULL constraint issues vs INSERT mode)
|
|
27
27
|
12. **pg_get_indexes without table**: Returns ALL database indexes (potentially large). Use \`table\` param for specific table
|
|
28
28
|
13. **pg_upsert/pg_batch_insert RETURNING**: \`returning\` param must be array of column names: \`["id", "name"]\`. ⛔ \`"*"\` wildcard not supported
|
|
@@ -33,8 +33,8 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
33
33
|
| Tool | Returns | Notes |
|
|
34
34
|
|------|---------|-------|
|
|
35
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. ⛔ Throws for SELECT |
|
|
37
|
-
| \`pg_upsert\` | \`{operation, rowsAffected, rowCount, rows?}\` | \`operation: 'insert'|'update'\`. \`rows\` only with RETURNING clause |
|
|
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
38
|
| \`pg_batch_insert\` | \`{rowsAffected, affectedRows, insertedCount, rows?}\` | Empty objects use DEFAULT VALUES. ⚠️ BIGINT > 2^53 loses precision |
|
|
39
39
|
| \`pg_count\` | \`{count: N}\` | Use \`params\` for placeholders: \`where: 'id=$1', params: [5]\`. DISTINCT: use \`pg_read_query\` |
|
|
40
40
|
| \`pg_exists\` | \`{exists: bool, mode, hint?}\` | \`params\` for placeholders. \`mode: 'filtered'|'any_rows'\` |
|
|
@@ -42,12 +42,17 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
42
42
|
| \`pg_list_objects\` | \`{objects, count, totalCount, byType}\` | Use \`limit\` to cap results, \`type\`/\`types\` to filter |
|
|
43
43
|
| \`pg_object_details\` | \`{name, schema, type, returnType?, ...}\` | Functions: \`returnType\` alias. Views/Mat. views: \`definition\` |
|
|
44
44
|
| \`pg_analyze_db_health\` | \`{cacheHitRatio: {ratio, heap, index, status}}\` | \`ratio\` = primary numeric %. \`bloat\` available |
|
|
45
|
-
| \`pg_describe_table\` | \`{columns, indexes, constraints, foreignKeys}\` | Columns include \`notNull\` (alias for \`!nullable\`), \`foreignKey\`. \`constraints\` includes PK, UNIQUE, CHECK, NOT NULL. ⚠️ \`rowCount: -1\` =
|
|
45
|
+
| \`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 |
|
|
46
46
|
| \`pg_analyze_query_indexes\` | \`{plan, issues, recommendations}\` | \`verbosity\`: 'summary' (default) or 'full'. Summary mode returns condensed plan |
|
|
47
|
-
| \`pg_list_tables\` | \`{tables, count}\` | Use \`schema\` to filter, \`limit\` to cap results |
|
|
47
|
+
| \`pg_list_tables\` | \`{tables, count}\` | Use \`schema\` to filter, \`limit\` to cap results, \`exclude\` to hide extension schemas (e.g., \`['cron', 'topology', 'partman']\`) |
|
|
48
48
|
| List operations | \`{items, count}\` | Access via \`result.tables\`, \`result.views\`, etc. |
|
|
49
49
|
| \`pg_jsonb_agg groupBy\` | \`{result: [{group_key, items}], count, grouped: true}\` | Without groupBy: \`{result: [...], count, grouped: false}\` |
|
|
50
50
|
| \`pg_vector_aggregate\` | \`{average_vector, count}\` or \`{groups: [{group_key, average_vector, count}]}\` | Without/with \`groupBy\` |
|
|
51
|
+
| \`pg_index_stats\` | \`{indexes, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
|
|
52
|
+
| \`pg_table_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
|
|
53
|
+
| \`pg_vacuum_stats\` | \`{tables, count, truncated?, totalCount?}\` | Default 50 rows. Use \`limit: 0\` for all |
|
|
54
|
+
| \`pg_stat_statements\` | \`{statements, count, truncated?, totalCount?}\` | Default 20 rows. \`orderBy\` supported |
|
|
55
|
+
| \`pg_query_plan_stats\` | \`{queryPlanStats, count, truncated?, totalCount?}\` | Default 20 rows. \`truncateQuery: 0\` for full text |
|
|
51
56
|
|
|
52
57
|
## API Mapping
|
|
53
58
|
|
|
@@ -80,10 +85,10 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
80
85
|
- \`pg_vector_distance\`: Calculate distance between two vectors. \`metric\`: 'l2' (default), 'cosine', 'inner_product'. Returns \`{distance, metric}\`
|
|
81
86
|
- \`pg_vector_cluster\`: \`clusters\` = \`k\`. Returns centroids with \`{preview, dimensions, truncated}\` format for large vectors (>10 dims)—use \`pg_vector_distance\` to assign rows
|
|
82
87
|
- \`pg_vector_create_index\`: Use \`type\` (or alias \`method\`) with values 'ivfflat' or 'hnsw'. IVFFlat: \`lists\` param. HNSW: \`m\`, \`efConstruction\` params
|
|
83
|
-
- \`pg_vector_performance\`: Auto-generates testVector from first row if omitted. Returns \`testVectorSource: 'auto-generated'|'user-provided'\`
|
|
88
|
+
- \`pg_vector_performance\`: Auto-generates testVector from first row if omitted. Returns \`testVectorSource: 'auto-generated from first row'|'user-provided'\`
|
|
84
89
|
- \`pg_vector_validate\`: Returns \`{valid: bool, vectorDimensions}\`. Empty vector \`[]\` returns \`{valid: true, vectorDimensions: 0}\`
|
|
85
90
|
- ⛔ \`pg_vector_embed\`: Demo only (hash-based). Use OpenAI/Cohere for production.
|
|
86
|
-
- \`pg_hybrid_search\`: Supports \`schema.table\` format (auto-parsed). Combines vector similarity and full-text search with weighted scoring. Code mode alias: \`pg.hybridSearch()\` → \`pg.vector.hybridSearch()\`
|
|
91
|
+
- \`pg_hybrid_search\`: Supports \`schema.table\` format (auto-parsed). Combines vector similarity and full-text search with weighted scoring. \`textColumn\` auto-detects type: uses tsvector columns directly, wraps text columns with \`to_tsvector()\`. Code mode alias: \`pg.hybridSearch()\` → \`pg.vector.hybridSearch()\`
|
|
87
92
|
- 📝 **Error Handling**: Vector tools return \`{success: false, error: "...", suggestion: "..."}\` for validation/semantic errors (dimension mismatch, non-vector column, table not found). Check \`success\` field before processing results.
|
|
88
93
|
|
|
89
94
|
## JSONB Tools
|
|
@@ -102,7 +107,6 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
102
107
|
|
|
103
108
|
**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()\`
|
|
104
109
|
|
|
105
|
-
|
|
106
110
|
## Stats Tools
|
|
107
111
|
|
|
108
112
|
- All stats tools support \`schema.table\` format (auto-parsed, embedded schema takes priority over explicit \`schema\` param)
|
|
@@ -121,7 +125,7 @@ export const SERVER_INSTRUCTIONS = `# postgres-mcp Code Mode
|
|
|
121
125
|
|
|
122
126
|
Core (20 methods): \`explain()\`, \`explainAnalyze()\`, \`explainBuffers()\`, \`indexStats()\`, \`tableStats()\`, \`statStatements()\`, \`statActivity()\`, \`locks()\`, \`bloatCheck()\`, \`cacheHitRatio()\`, \`seqScanTables()\`, \`indexRecommendations()\`, \`queryPlanCompare()\`, \`baseline()\`, \`connectionPoolOptimize()\`, \`partitionStrategySuggest()\`, \`unusedIndexes()\`, \`duplicateIndexes()\`, \`vacuumStats()\`, \`queryPlanStats()\`
|
|
123
127
|
|
|
124
|
-
Wrappers (3): \`blockingQueries()\`→\`locks({showBlocked:true})\`, \`longRunningQueries({ seconds | minDuration }?)\` filters by duration (returns \`
|
|
128
|
+
Wrappers (3): \`blockingQueries()\`→\`locks({showBlocked:true})\`, \`longRunningQueries({ seconds | minDuration }?)\` filters by duration (returns \`{longRunningQueries, count, threshold}\`), \`analyzeTable({ table })\` runs ANALYZE (accepts \`schema.table\` format)
|
|
125
129
|
|
|
126
130
|
- \`explain({ sql, format?, params? })\`: Supports \`format: 'text'|'json'|'yaml'|'xml'\`. Default: text. Use \`params: [value]\` for \`$1, $2\` placeholders
|
|
127
131
|
- \`explainAnalyze({ sql, format?, params? })\`: Same format/params options as explain
|
|
@@ -185,6 +189,8 @@ Aliases: \`tableName\`→\`table\`, \`indexName\`→\`index\`, \`param\`/\`setti
|
|
|
185
189
|
|
|
186
190
|
**Top-Level Aliases**: \`pg.vacuum()\`, \`pg.vacuumAnalyze()\`, \`pg.analyze()\`, \`pg.reindex()\`, \`pg.cluster()\`, \`pg.setConfig()\`, \`pg.reloadConf()\`, \`pg.resetStats()\`, \`pg.cancelBackend()\`, \`pg.terminateBackend()\`
|
|
187
191
|
|
|
192
|
+
**Discovery**: \`pg.admin.help()\` returns \`{methods, methodAliases, examples}\` object
|
|
193
|
+
|
|
188
194
|
## Backup Tools
|
|
189
195
|
|
|
190
196
|
Core: \`dumpTable()\`, \`dumpSchema()\`, \`copyExport()\`, \`copyImport()\`, \`createBackupPlan()\`, \`restoreCommand()\`, \`physical()\`, \`restoreValidate()\`, \`scheduleOptimize()\`
|
|
@@ -195,7 +201,7 @@ Response Structures:
|
|
|
195
201
|
- \`copyImport\`: \`{command, stdinCommand, notes}\` — Both file and stdin COPY commands
|
|
196
202
|
- \`createBackupPlan\`: \`{strategy: {fullBackup, walArchiving}, estimates}\`
|
|
197
203
|
- \`restoreCommand\`: \`{command, warnings?, notes}\` — Warnings when \`database\` omitted
|
|
198
|
-
- \`restoreValidate\`: \`{validationSteps: [{step, name, command?, commands?, note?}], recommendations}\` —
|
|
204
|
+
- \`restoreValidate\`: \`{note?, validationSteps: [{step, name, command?, commands?, note?}], recommendations}\` — Top-level \`note\` when \`backupType\` omitted (defaults to pg_dump). Step-level \`note\` for non-command steps
|
|
199
205
|
- \`physical\`: \`{command, notes, requirements}\`
|
|
200
206
|
- \`scheduleOptimize\`: \`{analysis, recommendation, commands}\`
|
|
201
207
|
|
|
@@ -207,7 +213,7 @@ Response Structures:
|
|
|
207
213
|
- \`pg_copy_import\`: Generates COPY FROM command. Supports \`schema.table\` format (auto-parsed, takes priority over \`schema\` param). \`columns\` array, \`filePath\`, \`format\`, \`header\`, \`delimiter\`
|
|
208
214
|
- \`pg_restore_command\`: Include \`database\` parameter for complete command. Optional \`schemaOnly\`, \`dataOnly\`
|
|
209
215
|
- \`pg_create_backup_plan\`: Generates backup strategy with cron schedule. \`frequency\`: 'hourly'|'daily'|'weekly', \`retention\` count
|
|
210
|
-
- \`pg_backup_physical\`: Generates pg_basebackup command. \`format\`: 'plain'|'tar', \`checkpoint\`: 'fast'|'spread', \`compress\`: 0-9
|
|
216
|
+
- \`pg_backup_physical\`: Generates pg_basebackup command. \`format\`: 'plain'|'tar' (default: 'tar'), \`checkpoint\`: 'fast'|'spread', \`compress\`: 0-9
|
|
211
217
|
- \`pg_restore_validate\`: Generates validation commands. \`backupType\`: 'pg_dump' (default)|'pg_basebackup'
|
|
212
218
|
- \`pg_backup_schedule_optimize\`: Analyzes database activity patterns and recommends optimal backup schedule
|
|
213
219
|
|
|
@@ -219,14 +225,13 @@ Defaults: \`threshold\`=0.3 (use 0.1-0.2 for partial), \`maxDistance\`=3 (use 5+
|
|
|
219
225
|
|
|
220
226
|
- All text tools support \`schema.table\` format (auto-parsed, embedded schema takes priority over explicit \`schema\` param)
|
|
221
227
|
- \`pg_text_search\`: Supports both \`column\` (singular string) and \`columns\` (array). Either is valid—\`column\` auto-converts to array
|
|
222
|
-
- \`pg_trigram_similarity\`
|
|
228
|
+
- \`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
|
|
223
229
|
- \`pg_fuzzy_match\`: Levenshtein returns distance (lower=better). Soundex/metaphone return phonetic codes (exact match only). ⛔ Invalid \`method\` values throw error with valid options
|
|
224
230
|
- \`pg_text_normalize\`: Removes accents only (unaccent). Does NOT lowercase/trim
|
|
225
231
|
- 📍 **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)
|
|
226
232
|
|
|
227
233
|
**Top-Level Aliases**: \`pg.textSearch()\`, \`pg.textRank()\`, \`pg.textHeadline()\`, \`pg.textNormalize()\`, \`pg.textSentiment()\`, \`pg.textToVector()\`, \`pg.textToQuery()\`, \`pg.textSearchConfig()\`, \`pg.textTrigramSimilarity()\`, \`pg.textFuzzyMatch()\`, \`pg.textLikeSearch()\`, \`pg.textRegexpMatch()\`, \`pg.textCreateFtsIndex()\`
|
|
228
234
|
|
|
229
|
-
|
|
230
235
|
## Schema Tools
|
|
231
236
|
|
|
232
237
|
Core: \`listSchemas()\`, \`createSchema()\`, \`dropSchema()\`, \`listViews()\`, \`createView()\`, \`dropView()\`, \`listSequences()\`, \`createSequence()\`, \`dropSequence()\`, \`listFunctions()\`, \`listTriggers()\`, \`listConstraints()\`
|
|
@@ -235,18 +240,17 @@ Response Structures:
|
|
|
235
240
|
- \`listSchemas()\`: \`{schemas: string[], count}\`
|
|
236
241
|
- \`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\`)
|
|
237
242
|
- \`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\`)
|
|
238
|
-
- \`listFunctions({ schema?, limit?, exclude? })\`: \`{functions: [{schema, name, arguments, returns, language, volatility}], count, limit
|
|
243
|
+
- \`listFunctions({ schema?, limit?, exclude? })\`: \`{functions: [{schema, name, arguments, returns, language, volatility}], count, limit}\`
|
|
239
244
|
- \`listTriggers({ schema?, table? })\`: \`{triggers: [{schema, table_name, name, timing, events, function_name, enabled}], count}\`
|
|
240
245
|
- \`listConstraints({ schema?, table?, type? })\`: \`{constraints: [{schema, table_name, name, type, definition}], count}\`. Type codes: \`p\`=primary_key, \`f\`=foreign_key, \`u\`=unique, \`c\`=check
|
|
241
246
|
- \`dropSchema/dropView/dropSequence\`: All return \`{existed: true/false}\` to indicate if object existed before drop
|
|
242
|
-
- \`createSchema/createSequence\` (with \`ifNotExists\`) and \`createView\` (with \`orReplace\`): Return \`{alreadyExisted: true/false}\`
|
|
247
|
+
- \`createSchema/createSequence\` (with \`ifNotExists\`) and \`createView\` (with \`orReplace\`): Return \`{alreadyExisted: true/false}\` when the flag is set. Without \`ifNotExists\`/\`orReplace\`, the field is omitted
|
|
243
248
|
|
|
244
249
|
- \`pg_create_view\`: Supports \`schema.name\` format (auto-parsed). Use \`orReplace: true\` for CREATE OR REPLACE. \`checkOption\`: 'cascaded', 'local', 'none'. ⛔ OR REPLACE can add new columns but cannot rename/remove existing ones—PostgreSQL limitation
|
|
245
250
|
- \`pg_create_sequence\`: Supports \`schema.name\` format. Parameters: \`start\`, \`increment\`, \`minValue\`, \`maxValue\`, \`cache\`, \`cycle\`, \`ownedBy\`, \`ifNotExists\`
|
|
246
|
-
- \`pg_list_functions\`: Default limit=500. Use \`schema: 'public'\`, \`limit: 2000\`, or \`exclude: ['postgis']\` to filter. ⚠️ \`exclude\` filters by **schema name** AND extension-owned functions. Note: Aggressive \`exclude\` may return 0 results if all functions belong to excluded extensions
|
|
247
|
-
|
|
248
|
-
**Discovery**: \`pg.schema.help()\` returns \`{methods: string[], examples: string[]}\` object with available methods and usage examples
|
|
251
|
+
- \`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']\` 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
|
|
249
252
|
|
|
253
|
+
**Discovery**: \`pg.schema.help()\` returns \`{methods, methodAliases, examples}\` object
|
|
250
254
|
|
|
251
255
|
## Partitioning Tools
|
|
252
256
|
|
|
@@ -266,7 +270,7 @@ Response Structures:
|
|
|
266
270
|
- \`pg_partman_show_partitions\`: Default \`limit: 50\` (use \`0\` for all). Returns \`truncated\` + \`totalCount\` when limited. \`parentTable\` required. Supports \`schema.table\` format (auto-parsed)
|
|
267
271
|
- \`pg_partman_check_default\`/\`partition_data\`: \`parentTable\` required. Supports \`schema.table\` format (auto-parsed)
|
|
268
272
|
- \`pg_partman_set_retention\`: ⚠️ **CAUTION: Default is DROP** — \`retentionKeepTable: false\` (default) = DROP partitions, \`true\` = detach only (safer). Pass \`retention: null\` to disable retention
|
|
269
|
-
- \`pg_partman_undo_partition\`: \`targetTable\` MUST exist before calling. Requires both \`parentTable\` and \`targetTable\`/\`target\`
|
|
273
|
+
- \`pg_partman_undo_partition\`: \`targetTable\` MUST exist before calling. Requires both \`parentTable\` and \`targetTable\`/\`target\`. ⚠️ Parent table and child partitions remain after undo—use \`DROP TABLE parent CASCADE\` to clean up
|
|
270
274
|
- \`pg_partman_analyze_partition_health\`: Default \`limit: 50\` (use \`0\` for all). Returns \`truncated\` + \`totalCount\` when limited. \`summary.overallHealth\`: 'healthy'|'warnings'|'issues_found'
|
|
271
275
|
- 📝 **Schema Resolution**: All partman tools auto-prefix \`public.\` when no schema specified in \`parentTable\`
|
|
272
276
|
- 📝 **Aliases**: \`parentTable\` accepts \`table\`, \`parent\`, \`name\`. \`controlColumn\` accepts \`control\`, \`column\`. \`targetTable\` accepts \`target\`
|
|
@@ -275,11 +279,11 @@ Response Structures:
|
|
|
275
279
|
|
|
276
280
|
Core: \`createExtension()\`, \`queryStats()\`, \`topCpu()\`, \`topIo()\`, \`databaseStats()\`, \`resourceAnalysis()\`, \`reset()\`
|
|
277
281
|
|
|
278
|
-
- \`pg_kcache_query_stats\`: Default \`limit:
|
|
279
|
-
- \`pg_kcache_resource_analysis\`: Default \`limit:
|
|
280
|
-
- \`pg_kcache_top_cpu\`: Top CPU-consuming queries. \`limit\` param (default: 10)
|
|
281
|
-
- \`pg_kcache_top_io\`: \`type\`/\`ioType\` (alias): 'reads', 'writes', 'both' (default). \`limit\` param (default: 10)
|
|
282
|
-
- \`pg_kcache_database_stats\`: Aggregated CPU/IO stats per database
|
|
282
|
+
- \`pg_kcache_query_stats\`: Default \`limit: 20\` (use \`0\` for all). Returns \`truncated\` + \`totalCount\` when limited. \`orderBy\`: 'total_time' (default), 'cpu_time', 'reads', 'writes'. \`queryPreviewLength\`: chars for query preview (default: 100, max: 500, 0 for full). ⛔ 'calls' NOT valid for orderBy—use \`minCalls\` param
|
|
283
|
+
- \`pg_kcache_resource_analysis\`: Default \`limit: 20\` (use \`0\` for all). Returns \`truncated\` + \`totalCount\` when limited. \`minCalls\`, \`queryPreviewLength\` supported. Classifies queries as 'CPU-bound', 'I/O-bound', or 'Balanced'
|
|
284
|
+
- \`pg_kcache_top_cpu\`: Top CPU-consuming queries. \`limit\` param (default: 10). \`queryPreviewLength\`: chars for query preview (default: 100, max: 500, 0 for full). Returns \`truncated\` + \`totalCount\` when limited
|
|
285
|
+
- \`pg_kcache_top_io\`: \`type\`/\`ioType\` (alias): 'reads', 'writes', 'both' (default). \`limit\` param (default: 10). \`queryPreviewLength\`: chars for query preview (default: 100, max: 500, 0 for full). Returns \`truncated\` + \`totalCount\` when limited
|
|
286
|
+
- \`pg_kcache_database_stats\`: Aggregated CPU/IO stats per database. Optional \`database\` param to filter specific db
|
|
283
287
|
- \`pg_kcache_reset\`: Resets pg_stat_kcache AND pg_stat_statements statistics
|
|
284
288
|
|
|
285
289
|
## citext Tools
|
|
@@ -308,7 +312,7 @@ Core: \`createExtension()\`, \`query()\`, \`match()\`, \`subpath()\`, \`lca()\`,
|
|
|
308
312
|
- \`pg_ltree_convert_column\`: Convert TEXT column to ltree. Supports \`schema.table\` format. \`col\` alias for \`column\`. Returns \`{previousType}\`. ⚠️ When views depend on column, returns \`{success: false, dependentViews, hint}\`—drop/recreate views manually
|
|
309
313
|
- \`pg_ltree_create_index\`: Create GiST index on ltree column. Supports \`schema.table\` format. Auto-generates index name if \`indexName\` omitted. Returns \`{indexName, indexType: 'gist', alreadyExists?}\`
|
|
310
314
|
|
|
311
|
-
**Discovery**: \`pg.ltree.help()\` returns \`{methods,
|
|
315
|
+
**Discovery**: \`pg.ltree.help()\` returns \`{methods, methodAliases, examples}\` object. Top-level aliases available: \`pg.ltreeQuery()\`, \`pg.ltreeMatch()\`, etc.
|
|
312
316
|
|
|
313
317
|
## PostGIS Tools
|
|
314
318
|
|
|
@@ -325,7 +329,7 @@ Core: \`createExtension()\`, \`query()\`, \`match()\`, \`subpath()\`, \`lca()\`,
|
|
|
325
329
|
|
|
326
330
|
**Geometry Operations (Table-based):**
|
|
327
331
|
- \`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
|
|
328
|
-
- \`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. \`fromSrid\`/\`sourceSrid\` and \`toSrid\`/\`targetSrid\` aliases
|
|
332
|
+
- \`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
|
|
329
333
|
- \`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
|
|
330
334
|
|
|
331
335
|
**Geometry Operations (Standalone WKT/GeoJSON):**
|
|
@@ -337,7 +341,7 @@ Core: \`createExtension()\`, \`query()\`, \`match()\`, \`subpath()\`, \`lca()\`,
|
|
|
337
341
|
- \`pg_postgis_create_extension\`: Enable PostGIS extension (idempotent)
|
|
338
342
|
- \`pg_geo_index_optimize\`: Analyze spatial indexes. Without \`table\` param, analyzes all spatial indexes
|
|
339
343
|
|
|
340
|
-
**Code Mode Aliases:** \`pg.postgis.addColumn()\` → \`geometryColumn\`, \`pg.postgis.indexOptimize()\` → \`geoIndexOptimize\`. Note: \`pg.{group}.help()\` returns \`{methods,
|
|
344
|
+
**Code Mode Aliases:** \`pg.postgis.addColumn()\` → \`geometryColumn\`, \`pg.postgis.indexOptimize()\` → \`geoIndexOptimize\`, \`pg.postgis.geoCluster()\` → \`pg_geo_cluster\`, \`pg.postgis.geoTransform()\` → \`pg_geo_transform\`. Note: \`pg.{group}.help()\` returns \`{methods, methodAliases, examples}\`
|
|
341
345
|
|
|
342
346
|
## Cron Tools (pg_cron)
|
|
343
347
|
|
|
@@ -352,7 +356,7 @@ Core: \`createExtension()\`, \`schedule()\`, \`scheduleInDatabase()\`, \`unsched
|
|
|
352
356
|
- \`pg_cron_cleanup_history\`: Delete old run records. \`olderThanDays\`/\`days\` param (default: 7). Optional \`jobId\` to target specific job
|
|
353
357
|
- \`pg_cron_create_extension\`: Enable pg_cron extension (idempotent). Requires superuser
|
|
354
358
|
|
|
355
|
-
**Discovery**: \`pg.cron.help()\` returns \`{methods,
|
|
359
|
+
**Discovery**: \`pg.cron.help()\` returns \`{methods, methodAliases, examples}\` object
|
|
356
360
|
|
|
357
361
|
## pgcrypto Tools
|
|
358
362
|
|
|
@@ -372,7 +376,7 @@ Core: \`createExtension()\`, \`hash()\`, \`hmac()\`, \`encrypt()\`, \`decrypt()\
|
|
|
372
376
|
|
|
373
377
|
**Top-Level Aliases**: \`pg.pgcryptoHash()\`, \`pg.pgcryptoEncrypt()\`, \`pg.pgcryptoDecrypt()\`, \`pg.pgcryptoGenRandomUuid()\`, etc.
|
|
374
378
|
|
|
375
|
-
**Discovery**: \`pg.pgcrypto.help()\` returns \`{methods,
|
|
379
|
+
**Discovery**: \`pg.pgcrypto.help()\` returns \`{methods, methodAliases, examples}\` object
|
|
376
380
|
|
|
377
381
|
## Code Mode Sandbox
|
|
378
382
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerInstructions.js","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG
|
|
1
|
+
{"version":3,"file":"ServerInstructions.js","sourceRoot":"","sources":["../../src/constants/ServerInstructions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yFAkZsD,CAAC"}
|
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Defines the tool groups and meta-groups used for filtering.
|
|
5
5
|
* STRICT LIMIT: No shortcut may exceed 50 tools.
|
|
6
|
+
*
|
|
7
|
+
* TOOL COUNT ACCOUNTING:
|
|
8
|
+
* ToolConstants arrays total: 215 tools (sum of all group arrays)
|
|
9
|
+
* Published "specialized tools": 206 (215 - 9 utility tools)
|
|
10
|
+
*
|
|
11
|
+
* The 9 excluded utility tools:
|
|
12
|
+
* - 8 create_extension helpers (one per extension group):
|
|
13
|
+
* pg_vector_create_extension, pg_postgis_create_extension,
|
|
14
|
+
* pg_cron_create_extension, pg_partman_create_extension,
|
|
15
|
+
* pg_kcache_create_extension, pg_citext_create_extension,
|
|
16
|
+
* pg_ltree_create_extension, pg_pgcrypto_create_extension
|
|
17
|
+
* - 1 codemode meta-tool: pg_execute_code
|
|
18
|
+
*
|
|
19
|
+
* When adding new tools: update group sizes, meta-group sums,
|
|
20
|
+
* and the published total in README/DOCKER_README/wiki.
|
|
21
|
+
* The published total = array total - 9 utility tools.
|
|
6
22
|
*/
|
|
7
23
|
import type { ToolGroup, MetaGroup } from "../types/index.js";
|
|
8
24
|
/**
|
|
@@ -17,24 +33,24 @@ export declare const TOOL_GROUPS: Record<ToolGroup, string[]>;
|
|
|
17
33
|
* ALL presets include codemode (pg_execute_code) by default for token efficiency.
|
|
18
34
|
*
|
|
19
35
|
* Group sizes:
|
|
20
|
-
* core:
|
|
21
|
-
* admin:10, monitoring:11, backup:9, schema:12, vector:
|
|
36
|
+
* core:20, transactions:7, jsonb:19, text:13, performance:20,
|
|
37
|
+
* admin:10, monitoring:11, backup:9, schema:12, vector:16
|
|
22
38
|
* postgis:15, partitioning:6, stats:8, cron:8, partman:10
|
|
23
39
|
* kcache:7, citext:6, ltree:8, pgcrypto:9, codemode:1
|
|
24
40
|
*
|
|
25
41
|
* Tool counts (with codemode):
|
|
26
|
-
* starter:
|
|
27
|
-
* essential:
|
|
28
|
-
* dev-power:
|
|
29
|
-
* ai-data:
|
|
30
|
-
* ai-vector:
|
|
31
|
-
* dba-monitor:
|
|
32
|
-
* dba-manage:
|
|
33
|
-
* dba-stats:
|
|
34
|
-
* geo:
|
|
35
|
-
* base-core:
|
|
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)
|
|
36
52
|
* base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
|
|
37
|
-
* ext-ai:
|
|
53
|
+
* ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
|
|
38
54
|
* ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
|
|
39
55
|
* ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
|
|
40
56
|
* ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolConstants.d.ts","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"AAAA
|
|
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"}
|
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Defines the tool groups and meta-groups used for filtering.
|
|
5
5
|
* STRICT LIMIT: No shortcut may exceed 50 tools.
|
|
6
|
+
*
|
|
7
|
+
* TOOL COUNT ACCOUNTING:
|
|
8
|
+
* ToolConstants arrays total: 215 tools (sum of all group arrays)
|
|
9
|
+
* Published "specialized tools": 206 (215 - 9 utility tools)
|
|
10
|
+
*
|
|
11
|
+
* The 9 excluded utility tools:
|
|
12
|
+
* - 8 create_extension helpers (one per extension group):
|
|
13
|
+
* pg_vector_create_extension, pg_postgis_create_extension,
|
|
14
|
+
* pg_cron_create_extension, pg_partman_create_extension,
|
|
15
|
+
* pg_kcache_create_extension, pg_citext_create_extension,
|
|
16
|
+
* pg_ltree_create_extension, pg_pgcrypto_create_extension
|
|
17
|
+
* - 1 codemode meta-tool: pg_execute_code
|
|
18
|
+
*
|
|
19
|
+
* When adding new tools: update group sizes, meta-group sums,
|
|
20
|
+
* and the published total in README/DOCKER_README/wiki.
|
|
21
|
+
* The published total = array total - 9 utility tools.
|
|
6
22
|
*/
|
|
7
23
|
/**
|
|
8
24
|
* Default tool groups and their member tools.
|
|
@@ -153,6 +169,7 @@ export const TOOL_GROUPS = {
|
|
|
153
169
|
"pg_vector_create_extension",
|
|
154
170
|
"pg_vector_add_column",
|
|
155
171
|
"pg_vector_insert",
|
|
172
|
+
"pg_vector_batch_insert",
|
|
156
173
|
"pg_vector_search",
|
|
157
174
|
"pg_vector_create_index",
|
|
158
175
|
"pg_vector_distance",
|
|
@@ -270,32 +287,32 @@ export const TOOL_GROUPS = {
|
|
|
270
287
|
* ALL presets include codemode (pg_execute_code) by default for token efficiency.
|
|
271
288
|
*
|
|
272
289
|
* Group sizes:
|
|
273
|
-
* core:
|
|
274
|
-
* admin:10, monitoring:11, backup:9, schema:12, vector:
|
|
290
|
+
* core:20, transactions:7, jsonb:19, text:13, performance:20,
|
|
291
|
+
* admin:10, monitoring:11, backup:9, schema:12, vector:16
|
|
275
292
|
* postgis:15, partitioning:6, stats:8, cron:8, partman:10
|
|
276
293
|
* kcache:7, citext:6, ltree:8, pgcrypto:9, codemode:1
|
|
277
294
|
*
|
|
278
295
|
* Tool counts (with codemode):
|
|
279
|
-
* starter:
|
|
280
|
-
* essential:
|
|
281
|
-
* dev-power:
|
|
282
|
-
* ai-data:
|
|
283
|
-
* ai-vector:
|
|
284
|
-
* dba-monitor:
|
|
285
|
-
* dba-manage:
|
|
286
|
-
* dba-stats:
|
|
287
|
-
* geo:
|
|
288
|
-
* base-core:
|
|
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)
|
|
289
306
|
* base-ops: 51 (admin:10 + monitoring:11 + backup:9 + partitioning:6 + stats:8 + citext:6 + codemode:1)
|
|
290
|
-
* ext-ai:
|
|
307
|
+
* ext-ai: 26 (vector:16 + pgcrypto:9 + codemode:1)
|
|
291
308
|
* ext-geo: 24 (postgis:15 + ltree:8 + codemode:1)
|
|
292
309
|
* ext-schedule: 19 (cron:8 + partman:10 + codemode:1)
|
|
293
310
|
* ext-perf: 28 (kcache:7 + performance:20 + codemode:1)
|
|
294
311
|
*/
|
|
295
312
|
export const META_GROUPS = {
|
|
296
313
|
// 1. General Use (Recommended) - All include codemode for token efficiency
|
|
297
|
-
starter: ["core", "transactions", "jsonb", "schema", "codemode"], //
|
|
298
|
-
essential: ["core", "transactions", "jsonb", "codemode"], //
|
|
314
|
+
starter: ["core", "transactions", "jsonb", "schema", "codemode"], // 59
|
|
315
|
+
essential: ["core", "transactions", "jsonb", "codemode"], // 47
|
|
299
316
|
"dev-power": [
|
|
300
317
|
"core",
|
|
301
318
|
"transactions",
|
|
@@ -303,10 +320,10 @@ export const META_GROUPS = {
|
|
|
303
320
|
"stats",
|
|
304
321
|
"partitioning",
|
|
305
322
|
"codemode",
|
|
306
|
-
], //
|
|
323
|
+
], // 54
|
|
307
324
|
// 2. AI Workloads
|
|
308
|
-
"ai-data": ["core", "jsonb", "text", "transactions", "codemode"], //
|
|
309
|
-
"ai-vector": ["core", "vector", "transactions", "partitioning", "codemode"], //
|
|
325
|
+
"ai-data": ["core", "jsonb", "text", "transactions", "codemode"], // 60
|
|
326
|
+
"ai-vector": ["core", "vector", "transactions", "partitioning", "codemode"], // 50
|
|
310
327
|
// 3. DBA Workloads
|
|
311
328
|
"dba-monitor": [
|
|
312
329
|
"core",
|
|
@@ -314,7 +331,7 @@ export const META_GROUPS = {
|
|
|
314
331
|
"performance",
|
|
315
332
|
"transactions",
|
|
316
333
|
"codemode",
|
|
317
|
-
], //
|
|
334
|
+
], // 59
|
|
318
335
|
"dba-manage": [
|
|
319
336
|
"core",
|
|
320
337
|
"admin",
|
|
@@ -322,7 +339,7 @@ export const META_GROUPS = {
|
|
|
322
339
|
"partitioning",
|
|
323
340
|
"schema",
|
|
324
341
|
"codemode",
|
|
325
|
-
], //
|
|
342
|
+
], // 58
|
|
326
343
|
"dba-stats": [
|
|
327
344
|
"core",
|
|
328
345
|
"admin",
|
|
@@ -330,11 +347,11 @@ export const META_GROUPS = {
|
|
|
330
347
|
"transactions",
|
|
331
348
|
"stats",
|
|
332
349
|
"codemode",
|
|
333
|
-
], //
|
|
350
|
+
], // 57
|
|
334
351
|
// 4. Specialty Workloads
|
|
335
|
-
geo: ["core", "postgis", "transactions", "codemode"], //
|
|
352
|
+
geo: ["core", "postgis", "transactions", "codemode"], // 43
|
|
336
353
|
// 5. Base Blocks (Building Blocks for Combining)
|
|
337
|
-
"base-core": ["core", "jsonb", "transactions", "schema", "codemode"], //
|
|
354
|
+
"base-core": ["core", "jsonb", "transactions", "schema", "codemode"], // 59
|
|
338
355
|
"base-ops": [
|
|
339
356
|
"admin",
|
|
340
357
|
"monitoring",
|
|
@@ -343,11 +360,11 @@ export const META_GROUPS = {
|
|
|
343
360
|
"stats",
|
|
344
361
|
"citext",
|
|
345
362
|
"codemode",
|
|
346
|
-
], // 51
|
|
363
|
+
], // 51
|
|
347
364
|
// 6. Extension Bundles (for adding extension capabilities)
|
|
348
|
-
"ext-ai": ["vector", "pgcrypto", "codemode"], //
|
|
349
|
-
"ext-geo": ["postgis", "ltree", "codemode"], //
|
|
365
|
+
"ext-ai": ["vector", "pgcrypto", "codemode"], // 26
|
|
366
|
+
"ext-geo": ["postgis", "ltree", "codemode"], // 24
|
|
350
367
|
"ext-schedule": ["cron", "partman", "codemode"], // 19
|
|
351
|
-
"ext-perf": ["kcache", "performance", "codemode"], //
|
|
368
|
+
"ext-perf": ["kcache", "performance", "codemode"], // 28
|
|
352
369
|
};
|
|
353
370
|
//# sourceMappingURL=ToolConstants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolConstants.js","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"ToolConstants.js","sourceRoot":"","sources":["../../src/filtering/ToolConstants.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/logger.js
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
*/
|
|
20
20
|
class Logger {
|
|
21
21
|
minLevel = "info";
|
|
22
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
22
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated -- Server class is required for sendLoggingMessage(); no non-deprecated alternative exists in SDK
|
|
23
23
|
mcpServer = null;
|
|
24
24
|
loggerName = "postgres-mcp";
|
|
25
25
|
defaultModule = "SERVER";
|
|
@@ -52,7 +52,7 @@ class Logger {
|
|
|
52
52
|
* Set the MCP server for protocol logging
|
|
53
53
|
* When set, logs will be sent to connected MCP clients
|
|
54
54
|
*/
|
|
55
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
55
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated -- Server class is required for sendLoggingMessage(); no non-deprecated alternative exists in SDK
|
|
56
56
|
setMcpServer(server) {
|
|
57
57
|
this.mcpServer = server;
|
|
58
58
|
}
|
package/dist/utils/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAiEH;;;;;;;;;GASG;AACH,MAAM,MAAM;IACF,QAAQ,GAAa,MAAM,CAAC;IACpC,
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ export function buildProgressContext(ctx) {
|
|
|
13
13
|
return undefined;
|
|
14
14
|
}
|
|
15
15
|
return {
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated -- Server class is required for progress notifications; no non-deprecated alternative exists in SDK
|
|
17
17
|
server: ctx.server,
|
|
18
18
|
progressToken: ctx.progressToken,
|
|
19
19
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress-utils.js","sourceRoot":"","sources":["../../src/utils/progress-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAA+B;IAE/B,IAAI,GAAG,EAAE,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,
|
|
1
|
+
{"version":3,"file":"progress-utils.js","sourceRoot":"","sources":["../../src/utils/progress-utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAA+B;IAE/B,IAAI,GAAG,EAAE,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACjE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO;QACL,gKAAgK;QAChK,MAAM,EAAE,GAAG,CAAC,MAAgB;QAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;KACjC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAgC,EAChC,QAAgB,EAChB,KAAc,EACd,OAAgB;IAEhB,6DAA6D;IAC7D,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO;IAC9B,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS;QAAE,OAAO;IAE5C,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,YAAY,GAAG;YACnB,MAAM,EAAE,wBAAiC;YACzC,MAAM,EAAE;gBACN,aAAa,EAAE,GAAG,CAAC,aAAa;gBAChC,QAAQ;gBACR,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;aAC5D;SACF,CAAC;QAEF,wCAAwC;QACxC,MAAM,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;QACvD,sDAAsD;IACxD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAAgC,EAChC,KAAa,EACb,QAAQ,GAAG,EAAE;IAEb,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,OAAO,KAAK,EAAE,OAAe,EAAE,OAAgB,EAAE,EAAE;QACjD,yDAAyD;QACzD,IAAI,OAAO,GAAG,YAAY,IAAI,QAAQ,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YAC5D,MAAM,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YACjD,YAAY,GAAG,OAAO,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neverinfamous/postgres-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"mcpName": "io.github.neverinfamous/postgres-mcp",
|
|
5
5
|
"description": "PostgreSQL MCP server with connection pooling, tool filtering, and full extension support",
|
|
6
6
|
"type": "module",
|
|
@@ -45,21 +45,21 @@
|
|
|
45
45
|
"node": ">=24.0.0"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
49
|
-
"commander": "^14.0.
|
|
48
|
+
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
49
|
+
"commander": "^14.0.3",
|
|
50
50
|
"jose": "^6.0.0",
|
|
51
|
-
"pg": "^8.
|
|
51
|
+
"pg": "^8.18.0",
|
|
52
52
|
"zod": "^4.3.6"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@eslint/js": "^9.28.0",
|
|
56
|
-
"@types/node": "^25.
|
|
56
|
+
"@types/node": "^25.2.3",
|
|
57
57
|
"@types/pg": "^8.11.0",
|
|
58
58
|
"@vitest/coverage-v8": "^4.0.18",
|
|
59
59
|
"eslint": "^9.28.0",
|
|
60
|
-
"globals": "^17.
|
|
60
|
+
"globals": "^17.3.0",
|
|
61
61
|
"typescript": "^5.9.3",
|
|
62
|
-
"typescript-eslint": "^8.
|
|
62
|
+
"typescript-eslint": "^8.55.0",
|
|
63
63
|
"vitest": "^4.0.18"
|
|
64
64
|
}
|
|
65
65
|
}
|