@neverinfamous/postgres-mcp 1.0.1
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/LICENSE +21 -0
- package/README.md +515 -0
- package/dist/__tests__/mocks/adapter.d.ts +80 -0
- package/dist/__tests__/mocks/adapter.d.ts.map +1 -0
- package/dist/__tests__/mocks/adapter.js +225 -0
- package/dist/__tests__/mocks/adapter.js.map +1 -0
- package/dist/__tests__/mocks/index.d.ts +11 -0
- package/dist/__tests__/mocks/index.d.ts.map +1 -0
- package/dist/__tests__/mocks/index.js +11 -0
- package/dist/__tests__/mocks/index.js.map +1 -0
- package/dist/__tests__/mocks/pool.d.ts +43 -0
- package/dist/__tests__/mocks/pool.d.ts.map +1 -0
- package/dist/__tests__/mocks/pool.js +71 -0
- package/dist/__tests__/mocks/pool.js.map +1 -0
- package/dist/adapters/DatabaseAdapter.d.ts +139 -0
- package/dist/adapters/DatabaseAdapter.d.ts.map +1 -0
- package/dist/adapters/DatabaseAdapter.js +250 -0
- package/dist/adapters/DatabaseAdapter.js.map +1 -0
- package/dist/adapters/postgresql/PostgresAdapter.d.ts +119 -0
- package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -0
- package/dist/adapters/postgresql/PostgresAdapter.js +902 -0
- package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -0
- package/dist/adapters/postgresql/index.d.ts +5 -0
- package/dist/adapters/postgresql/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/index.js +5 -0
- package/dist/adapters/postgresql/index.js.map +1 -0
- package/dist/adapters/postgresql/prompts/backup.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/backup.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/backup.js +132 -0
- package/dist/adapters/postgresql/prompts/backup.js.map +1 -0
- package/dist/adapters/postgresql/prompts/citext.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/citext.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/citext.js +227 -0
- package/dist/adapters/postgresql/prompts/citext.js.map +1 -0
- package/dist/adapters/postgresql/prompts/extensionSetup.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/extensionSetup.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/extensionSetup.js +282 -0
- package/dist/adapters/postgresql/prompts/extensionSetup.js.map +1 -0
- package/dist/adapters/postgresql/prompts/health.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/health.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/health.js +118 -0
- package/dist/adapters/postgresql/prompts/health.js.map +1 -0
- package/dist/adapters/postgresql/prompts/index.d.ts +13 -0
- package/dist/adapters/postgresql/prompts/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/index.js +308 -0
- package/dist/adapters/postgresql/prompts/index.js.map +1 -0
- package/dist/adapters/postgresql/prompts/indexTuning.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/indexTuning.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/indexTuning.js +130 -0
- package/dist/adapters/postgresql/prompts/indexTuning.js.map +1 -0
- package/dist/adapters/postgresql/prompts/kcache.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/kcache.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/kcache.js +227 -0
- package/dist/adapters/postgresql/prompts/kcache.js.map +1 -0
- package/dist/adapters/postgresql/prompts/ltree.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/ltree.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/ltree.js +286 -0
- package/dist/adapters/postgresql/prompts/ltree.js.map +1 -0
- package/dist/adapters/postgresql/prompts/partman.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/partman.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/partman.js +211 -0
- package/dist/adapters/postgresql/prompts/partman.js.map +1 -0
- package/dist/adapters/postgresql/prompts/pgcron.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/pgcron.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/pgcron.js +233 -0
- package/dist/adapters/postgresql/prompts/pgcron.js.map +1 -0
- package/dist/adapters/postgresql/prompts/pgcrypto.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/pgcrypto.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/pgcrypto.js +299 -0
- package/dist/adapters/postgresql/prompts/pgcrypto.js.map +1 -0
- package/dist/adapters/postgresql/prompts/pgvector.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/pgvector.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/pgvector.js +148 -0
- package/dist/adapters/postgresql/prompts/pgvector.js.map +1 -0
- package/dist/adapters/postgresql/prompts/postgis.d.ts +8 -0
- package/dist/adapters/postgresql/prompts/postgis.d.ts.map +1 -0
- package/dist/adapters/postgresql/prompts/postgis.js +200 -0
- package/dist/adapters/postgresql/prompts/postgis.js.map +1 -0
- package/dist/adapters/postgresql/resources/activity.d.ts +9 -0
- package/dist/adapters/postgresql/resources/activity.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/activity.js +118 -0
- package/dist/adapters/postgresql/resources/activity.js.map +1 -0
- package/dist/adapters/postgresql/resources/capabilities.d.ts +9 -0
- package/dist/adapters/postgresql/resources/capabilities.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/capabilities.js +182 -0
- package/dist/adapters/postgresql/resources/capabilities.js.map +1 -0
- package/dist/adapters/postgresql/resources/cron.d.ts +9 -0
- package/dist/adapters/postgresql/resources/cron.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/cron.js +156 -0
- package/dist/adapters/postgresql/resources/cron.js.map +1 -0
- package/dist/adapters/postgresql/resources/crypto.d.ts +9 -0
- package/dist/adapters/postgresql/resources/crypto.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/crypto.js +191 -0
- package/dist/adapters/postgresql/resources/crypto.js.map +1 -0
- package/dist/adapters/postgresql/resources/extensions.d.ts +9 -0
- package/dist/adapters/postgresql/resources/extensions.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/extensions.js +85 -0
- package/dist/adapters/postgresql/resources/extensions.js.map +1 -0
- package/dist/adapters/postgresql/resources/health.d.ts +9 -0
- package/dist/adapters/postgresql/resources/health.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/health.js +185 -0
- package/dist/adapters/postgresql/resources/health.js.map +1 -0
- package/dist/adapters/postgresql/resources/index.d.ts +40 -0
- package/dist/adapters/postgresql/resources/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/index.js +87 -0
- package/dist/adapters/postgresql/resources/index.js.map +1 -0
- package/dist/adapters/postgresql/resources/indexes.d.ts +9 -0
- package/dist/adapters/postgresql/resources/indexes.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/indexes.js +130 -0
- package/dist/adapters/postgresql/resources/indexes.js.map +1 -0
- package/dist/adapters/postgresql/resources/kcache.d.ts +9 -0
- package/dist/adapters/postgresql/resources/kcache.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/kcache.js +219 -0
- package/dist/adapters/postgresql/resources/kcache.js.map +1 -0
- package/dist/adapters/postgresql/resources/locks.d.ts +9 -0
- package/dist/adapters/postgresql/resources/locks.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/locks.js +89 -0
- package/dist/adapters/postgresql/resources/locks.js.map +1 -0
- package/dist/adapters/postgresql/resources/partman.d.ts +9 -0
- package/dist/adapters/postgresql/resources/partman.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/partman.js +149 -0
- package/dist/adapters/postgresql/resources/partman.js.map +1 -0
- package/dist/adapters/postgresql/resources/performance.d.ts +9 -0
- package/dist/adapters/postgresql/resources/performance.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/performance.js +170 -0
- package/dist/adapters/postgresql/resources/performance.js.map +1 -0
- package/dist/adapters/postgresql/resources/pool.d.ts +9 -0
- package/dist/adapters/postgresql/resources/pool.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/pool.js +93 -0
- package/dist/adapters/postgresql/resources/pool.js.map +1 -0
- package/dist/adapters/postgresql/resources/postgis.d.ts +9 -0
- package/dist/adapters/postgresql/resources/postgis.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/postgis.js +232 -0
- package/dist/adapters/postgresql/resources/postgis.js.map +1 -0
- package/dist/adapters/postgresql/resources/replication.d.ts +9 -0
- package/dist/adapters/postgresql/resources/replication.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/replication.js +126 -0
- package/dist/adapters/postgresql/resources/replication.js.map +1 -0
- package/dist/adapters/postgresql/resources/schema.d.ts +10 -0
- package/dist/adapters/postgresql/resources/schema.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/schema.js +80 -0
- package/dist/adapters/postgresql/resources/schema.js.map +1 -0
- package/dist/adapters/postgresql/resources/settings.d.ts +9 -0
- package/dist/adapters/postgresql/resources/settings.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/settings.js +184 -0
- package/dist/adapters/postgresql/resources/settings.js.map +1 -0
- package/dist/adapters/postgresql/resources/stats.d.ts +10 -0
- package/dist/adapters/postgresql/resources/stats.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/stats.js +124 -0
- package/dist/adapters/postgresql/resources/stats.js.map +1 -0
- package/dist/adapters/postgresql/resources/tables.d.ts +9 -0
- package/dist/adapters/postgresql/resources/tables.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/tables.js +20 -0
- package/dist/adapters/postgresql/resources/tables.js.map +1 -0
- package/dist/adapters/postgresql/resources/vacuum.d.ts +9 -0
- package/dist/adapters/postgresql/resources/vacuum.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/vacuum.js +122 -0
- package/dist/adapters/postgresql/resources/vacuum.js.map +1 -0
- package/dist/adapters/postgresql/resources/vector.d.ts +9 -0
- package/dist/adapters/postgresql/resources/vector.d.ts.map +1 -0
- package/dist/adapters/postgresql/resources/vector.js +185 -0
- package/dist/adapters/postgresql/resources/vector.js.map +1 -0
- package/dist/adapters/postgresql/schemas/admin.d.ts +74 -0
- package/dist/adapters/postgresql/schemas/admin.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/admin.js +180 -0
- package/dist/adapters/postgresql/schemas/admin.js.map +1 -0
- package/dist/adapters/postgresql/schemas/backup.d.ts +68 -0
- package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/backup.js +114 -0
- package/dist/adapters/postgresql/schemas/backup.js.map +1 -0
- package/dist/adapters/postgresql/schemas/core.d.ts +443 -0
- package/dist/adapters/postgresql/schemas/core.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/core.js +628 -0
- package/dist/adapters/postgresql/schemas/core.js.map +1 -0
- package/dist/adapters/postgresql/schemas/cron.d.ts +131 -0
- package/dist/adapters/postgresql/schemas/cron.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/cron.js +218 -0
- package/dist/adapters/postgresql/schemas/cron.js.map +1 -0
- package/dist/adapters/postgresql/schemas/extensions.d.ts +403 -0
- package/dist/adapters/postgresql/schemas/extensions.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/extensions.js +600 -0
- package/dist/adapters/postgresql/schemas/extensions.js.map +1 -0
- package/dist/adapters/postgresql/schemas/index.d.ts +21 -0
- package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/index.js +72 -0
- package/dist/adapters/postgresql/schemas/index.js.map +1 -0
- package/dist/adapters/postgresql/schemas/jsonb.d.ts +94 -0
- package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/jsonb.js +198 -0
- package/dist/adapters/postgresql/schemas/jsonb.js.map +1 -0
- package/dist/adapters/postgresql/schemas/monitoring.d.ts +28 -0
- package/dist/adapters/postgresql/schemas/monitoring.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/monitoring.js +45 -0
- package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -0
- package/dist/adapters/postgresql/schemas/partitioning.d.ts +152 -0
- package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/partitioning.js +399 -0
- package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -0
- package/dist/adapters/postgresql/schemas/partman.d.ts +94 -0
- package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/partman.js +264 -0
- package/dist/adapters/postgresql/schemas/partman.js.map +1 -0
- package/dist/adapters/postgresql/schemas/performance.d.ts +52 -0
- package/dist/adapters/postgresql/schemas/performance.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/performance.js +57 -0
- package/dist/adapters/postgresql/schemas/performance.js.map +1 -0
- package/dist/adapters/postgresql/schemas/postgis.d.ts +693 -0
- package/dist/adapters/postgresql/schemas/postgis.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/postgis.js +662 -0
- package/dist/adapters/postgresql/schemas/postgis.js.map +1 -0
- package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +171 -0
- package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/schema-mgmt.js +235 -0
- package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -0
- package/dist/adapters/postgresql/schemas/stats.d.ts +229 -0
- package/dist/adapters/postgresql/schemas/stats.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/stats.js +587 -0
- package/dist/adapters/postgresql/schemas/stats.js.map +1 -0
- package/dist/adapters/postgresql/schemas/text-search.d.ts +83 -0
- package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/text-search.js +132 -0
- package/dist/adapters/postgresql/schemas/text-search.js.map +1 -0
- package/dist/adapters/postgresql/schemas/vector.d.ts +143 -0
- package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -0
- package/dist/adapters/postgresql/schemas/vector.js +123 -0
- package/dist/adapters/postgresql/schemas/vector.js.map +1 -0
- package/dist/adapters/postgresql/tools/admin.d.ts +13 -0
- package/dist/adapters/postgresql/tools/admin.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/admin.js +417 -0
- package/dist/adapters/postgresql/tools/admin.js.map +1 -0
- package/dist/adapters/postgresql/tools/backup/dump.d.ts +12 -0
- package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/backup/dump.js +546 -0
- package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -0
- package/dist/adapters/postgresql/tools/backup/index.d.ts +16 -0
- package/dist/adapters/postgresql/tools/backup/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/backup/index.js +29 -0
- package/dist/adapters/postgresql/tools/backup/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/backup/planning.d.ts +22 -0
- package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/backup/planning.js +411 -0
- package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -0
- package/dist/adapters/postgresql/tools/citext.d.ts +18 -0
- package/dist/adapters/postgresql/tools/citext.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/citext.js +568 -0
- package/dist/adapters/postgresql/tools/citext.js.map +1 -0
- package/dist/adapters/postgresql/tools/codemode/index.d.ts +27 -0
- package/dist/adapters/postgresql/tools/codemode/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/codemode/index.js +171 -0
- package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/convenience.d.ts +192 -0
- package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/convenience.js +617 -0
- package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/health.d.ts +20 -0
- package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/health.js +360 -0
- package/dist/adapters/postgresql/tools/core/health.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/index.d.ts +15 -0
- package/dist/adapters/postgresql/tools/core/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/index.js +40 -0
- package/dist/adapters/postgresql/tools/core/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/indexes.d.ts +30 -0
- package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/indexes.js +232 -0
- package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/objects.d.ts +20 -0
- package/dist/adapters/postgresql/tools/core/objects.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/objects.js +361 -0
- package/dist/adapters/postgresql/tools/core/objects.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/query.d.ts +16 -0
- package/dist/adapters/postgresql/tools/core/query.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/query.js +87 -0
- package/dist/adapters/postgresql/tools/core/query.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/schemas.d.ts +135 -0
- package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/schemas.js +221 -0
- package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -0
- package/dist/adapters/postgresql/tools/core/tables.d.ts +24 -0
- package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/core/tables.js +219 -0
- package/dist/adapters/postgresql/tools/core/tables.js.map +1 -0
- package/dist/adapters/postgresql/tools/cron.d.ts +16 -0
- package/dist/adapters/postgresql/tools/cron.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/cron.js +440 -0
- package/dist/adapters/postgresql/tools/cron.js.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts +33 -0
- package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/advanced.js +681 -0
- package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/basic.d.ts +20 -0
- package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/basic.js +654 -0
- package/dist/adapters/postgresql/tools/jsonb/basic.js.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/index.d.ts +16 -0
- package/dist/adapters/postgresql/tools/jsonb/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/jsonb/index.js +39 -0
- package/dist/adapters/postgresql/tools/jsonb/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/kcache.d.ts +20 -0
- package/dist/adapters/postgresql/tools/kcache.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/kcache.js +574 -0
- package/dist/adapters/postgresql/tools/kcache.js.map +1 -0
- package/dist/adapters/postgresql/tools/ltree.d.ts +8 -0
- package/dist/adapters/postgresql/tools/ltree.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/ltree.js +390 -0
- package/dist/adapters/postgresql/tools/ltree.js.map +1 -0
- package/dist/adapters/postgresql/tools/monitoring.d.ts +13 -0
- package/dist/adapters/postgresql/tools/monitoring.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/monitoring.js +753 -0
- package/dist/adapters/postgresql/tools/monitoring.js.map +1 -0
- package/dist/adapters/postgresql/tools/partitioning.d.ts +13 -0
- package/dist/adapters/postgresql/tools/partitioning.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/partitioning.js +500 -0
- package/dist/adapters/postgresql/tools/partitioning.js.map +1 -0
- package/dist/adapters/postgresql/tools/partman/index.d.ts +19 -0
- package/dist/adapters/postgresql/tools/partman/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/partman/index.js +33 -0
- package/dist/adapters/postgresql/tools/partman/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/partman/management.d.ts +28 -0
- package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/partman/management.js +563 -0
- package/dist/adapters/postgresql/tools/partman/management.js.map +1 -0
- package/dist/adapters/postgresql/tools/partman/operations.d.ts +28 -0
- package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/partman/operations.js +632 -0
- package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/analysis.d.ts +9 -0
- package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/analysis.js +383 -0
- package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/explain.d.ts +13 -0
- package/dist/adapters/postgresql/tools/performance/explain.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/explain.js +71 -0
- package/dist/adapters/postgresql/tools/performance/explain.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/index.d.ts +13 -0
- package/dist/adapters/postgresql/tools/performance/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/index.js +40 -0
- package/dist/adapters/postgresql/tools/performance/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/monitoring.d.ts +9 -0
- package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/monitoring.js +122 -0
- package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/optimization.d.ts +9 -0
- package/dist/adapters/postgresql/tools/performance/optimization.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/optimization.js +315 -0
- package/dist/adapters/postgresql/tools/performance/optimization.js.map +1 -0
- package/dist/adapters/postgresql/tools/performance/stats.d.ts +14 -0
- package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/performance/stats.js +559 -0
- package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -0
- package/dist/adapters/postgresql/tools/pgcrypto.d.ts +8 -0
- package/dist/adapters/postgresql/tools/pgcrypto.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/pgcrypto.js +239 -0
- package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/advanced.d.ts +21 -0
- package/dist/adapters/postgresql/tools/postgis/advanced.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/advanced.js +383 -0
- package/dist/adapters/postgresql/tools/postgis/advanced.js.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/basic.d.ts +16 -0
- package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/basic.js +479 -0
- package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/index.d.ts +17 -0
- package/dist/adapters/postgresql/tools/postgis/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/index.js +46 -0
- package/dist/adapters/postgresql/tools/postgis/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/standalone.d.ts +21 -0
- package/dist/adapters/postgresql/tools/postgis/standalone.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/postgis/standalone.js +150 -0
- package/dist/adapters/postgresql/tools/postgis/standalone.js.map +1 -0
- package/dist/adapters/postgresql/tools/schema.d.ts +13 -0
- package/dist/adapters/postgresql/tools/schema.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/schema.js +515 -0
- package/dist/adapters/postgresql/tools/schema.js.map +1 -0
- package/dist/adapters/postgresql/tools/stats/advanced.d.ts +24 -0
- package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/stats/advanced.js +876 -0
- package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -0
- package/dist/adapters/postgresql/tools/stats/basic.d.ts +24 -0
- package/dist/adapters/postgresql/tools/stats/basic.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/stats/basic.js +501 -0
- package/dist/adapters/postgresql/tools/stats/basic.js.map +1 -0
- package/dist/adapters/postgresql/tools/stats/index.d.ts +17 -0
- package/dist/adapters/postgresql/tools/stats/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/stats/index.js +30 -0
- package/dist/adapters/postgresql/tools/stats/index.js.map +1 -0
- package/dist/adapters/postgresql/tools/text.d.ts +13 -0
- package/dist/adapters/postgresql/tools/text.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/text.js +708 -0
- package/dist/adapters/postgresql/tools/text.js.map +1 -0
- package/dist/adapters/postgresql/tools/transactions.d.ts +13 -0
- package/dist/adapters/postgresql/tools/transactions.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/transactions.js +201 -0
- package/dist/adapters/postgresql/tools/transactions.js.map +1 -0
- package/dist/adapters/postgresql/tools/vector/advanced.d.ts +12 -0
- package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/vector/advanced.js +902 -0
- package/dist/adapters/postgresql/tools/vector/advanced.js.map +1 -0
- package/dist/adapters/postgresql/tools/vector/basic.d.ts +25 -0
- package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/vector/basic.js +1000 -0
- package/dist/adapters/postgresql/tools/vector/basic.js.map +1 -0
- package/dist/adapters/postgresql/tools/vector/index.d.ts +13 -0
- package/dist/adapters/postgresql/tools/vector/index.d.ts.map +1 -0
- package/dist/adapters/postgresql/tools/vector/index.js +33 -0
- package/dist/adapters/postgresql/tools/vector/index.js.map +1 -0
- package/dist/auth/AuthorizationServerDiscovery.d.ts +44 -0
- package/dist/auth/AuthorizationServerDiscovery.d.ts.map +1 -0
- package/dist/auth/AuthorizationServerDiscovery.js +117 -0
- package/dist/auth/AuthorizationServerDiscovery.js.map +1 -0
- package/dist/auth/OAuthResourceServer.d.ts +42 -0
- package/dist/auth/OAuthResourceServer.d.ts.map +1 -0
- package/dist/auth/OAuthResourceServer.js +80 -0
- package/dist/auth/OAuthResourceServer.js.map +1 -0
- package/dist/auth/TokenValidator.d.ts +36 -0
- package/dist/auth/TokenValidator.d.ts.map +1 -0
- package/dist/auth/TokenValidator.js +139 -0
- package/dist/auth/TokenValidator.js.map +1 -0
- package/dist/auth/errors.d.ts +63 -0
- package/dist/auth/errors.d.ts.map +1 -0
- package/dist/auth/errors.js +102 -0
- package/dist/auth/errors.js.map +1 -0
- package/dist/auth/index.d.ts +15 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +16 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/middleware.d.ts +61 -0
- package/dist/auth/middleware.d.ts.map +1 -0
- package/dist/auth/middleware.js +156 -0
- package/dist/auth/middleware.js.map +1 -0
- package/dist/auth/scopes.d.ts +65 -0
- package/dist/auth/scopes.d.ts.map +1 -0
- package/dist/auth/scopes.js +189 -0
- package/dist/auth/scopes.js.map +1 -0
- package/dist/auth/types.d.ts +208 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/auth/types.js +8 -0
- package/dist/auth/types.js.map +1 -0
- package/dist/cli/args.d.ts +34 -0
- package/dist/cli/args.d.ts.map +1 -0
- package/dist/cli/args.js +308 -0
- package/dist/cli/args.js.map +1 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +7 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli.d.ts +9 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +341 -0
- package/dist/cli.js.map +1 -0
- package/dist/codemode/api.d.ts +62 -0
- package/dist/codemode/api.d.ts.map +1 -0
- package/dist/codemode/api.js +1505 -0
- package/dist/codemode/api.js.map +1 -0
- package/dist/codemode/index.d.ts +13 -0
- package/dist/codemode/index.d.ts.map +1 -0
- package/dist/codemode/index.js +17 -0
- package/dist/codemode/index.js.map +1 -0
- package/dist/codemode/sandbox-factory.d.ts +72 -0
- package/dist/codemode/sandbox-factory.d.ts.map +1 -0
- package/dist/codemode/sandbox-factory.js +88 -0
- package/dist/codemode/sandbox-factory.js.map +1 -0
- package/dist/codemode/sandbox.d.ts +96 -0
- package/dist/codemode/sandbox.d.ts.map +1 -0
- package/dist/codemode/sandbox.js +345 -0
- package/dist/codemode/sandbox.js.map +1 -0
- package/dist/codemode/security.d.ts +44 -0
- package/dist/codemode/security.d.ts.map +1 -0
- package/dist/codemode/security.js +149 -0
- package/dist/codemode/security.js.map +1 -0
- package/dist/codemode/types.d.ts +137 -0
- package/dist/codemode/types.d.ts.map +1 -0
- package/dist/codemode/types.js +46 -0
- package/dist/codemode/types.js.map +1 -0
- package/dist/codemode/worker-sandbox.d.ts +82 -0
- package/dist/codemode/worker-sandbox.d.ts.map +1 -0
- package/dist/codemode/worker-sandbox.js +244 -0
- package/dist/codemode/worker-sandbox.js.map +1 -0
- package/dist/codemode/worker-script.d.ts +8 -0
- package/dist/codemode/worker-script.d.ts.map +1 -0
- package/dist/codemode/worker-script.js +113 -0
- package/dist/codemode/worker-script.js.map +1 -0
- package/dist/constants/ServerInstructions.d.ts +13 -0
- package/dist/constants/ServerInstructions.d.ts.map +1 -0
- package/dist/constants/ServerInstructions.js +405 -0
- package/dist/constants/ServerInstructions.js.map +1 -0
- package/dist/filtering/ToolConstants.d.ts +43 -0
- package/dist/filtering/ToolConstants.d.ts.map +1 -0
- package/dist/filtering/ToolConstants.js +352 -0
- package/dist/filtering/ToolConstants.js.map +1 -0
- package/dist/filtering/ToolFilter.d.ts +90 -0
- package/dist/filtering/ToolFilter.d.ts.map +1 -0
- package/dist/filtering/ToolFilter.js +315 -0
- package/dist/filtering/ToolFilter.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/pool/ConnectionPool.d.ts +70 -0
- package/dist/pool/ConnectionPool.d.ts.map +1 -0
- package/dist/pool/ConnectionPool.js +254 -0
- package/dist/pool/ConnectionPool.js.map +1 -0
- package/dist/server/McpServer.d.ts +50 -0
- package/dist/server/McpServer.d.ts.map +1 -0
- package/dist/server/McpServer.js +108 -0
- package/dist/server/McpServer.js.map +1 -0
- package/dist/transports/http.d.ts +126 -0
- package/dist/transports/http.d.ts.map +1 -0
- package/dist/transports/http.js +303 -0
- package/dist/transports/http.js.map +1 -0
- package/dist/transports/index.d.ts +8 -0
- package/dist/transports/index.d.ts.map +1 -0
- package/dist/transports/index.js +7 -0
- package/dist/transports/index.js.map +1 -0
- package/dist/types/adapters.d.ts +136 -0
- package/dist/types/adapters.d.ts.map +1 -0
- package/dist/types/adapters.js +7 -0
- package/dist/types/adapters.js.map +1 -0
- package/dist/types/database.d.ts +204 -0
- package/dist/types/database.d.ts.map +1 -0
- package/dist/types/database.js +7 -0
- package/dist/types/database.js.map +1 -0
- package/dist/types/errors.d.ts +62 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +91 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/filtering.d.ts +39 -0
- package/dist/types/filtering.d.ts.map +1 -0
- package/dist/types/filtering.js +7 -0
- package/dist/types/filtering.js.map +1 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/mcp.d.ts +31 -0
- package/dist/types/mcp.d.ts.map +1 -0
- package/dist/types/mcp.js +7 -0
- package/dist/types/mcp.js.map +1 -0
- package/dist/types/oauth.d.ts +65 -0
- package/dist/types/oauth.d.ts.map +1 -0
- package/dist/types/oauth.js +7 -0
- package/dist/types/oauth.js.map +1 -0
- package/dist/types/schema.d.ts +110 -0
- package/dist/types/schema.d.ts.map +1 -0
- package/dist/types/schema.js +7 -0
- package/dist/types/schema.js.map +1 -0
- package/dist/utils/annotations.d.ts +42 -0
- package/dist/utils/annotations.d.ts.map +1 -0
- package/dist/utils/annotations.js +75 -0
- package/dist/utils/annotations.js.map +1 -0
- package/dist/utils/icons.d.ts +25 -0
- package/dist/utils/icons.d.ts.map +1 -0
- package/dist/utils/icons.js +212 -0
- package/dist/utils/icons.js.map +1 -0
- package/dist/utils/identifiers.d.ts +111 -0
- package/dist/utils/identifiers.d.ts.map +1 -0
- package/dist/utils/identifiers.js +270 -0
- package/dist/utils/identifiers.js.map +1 -0
- package/dist/utils/logger.d.ts +141 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +304 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/promptGenerator.d.ts +20 -0
- package/dist/utils/promptGenerator.d.ts.map +1 -0
- package/dist/utils/promptGenerator.js +81 -0
- package/dist/utils/promptGenerator.js.map +1 -0
- package/dist/utils/resourceAnnotations.d.ts +36 -0
- package/dist/utils/resourceAnnotations.d.ts.map +1 -0
- package/dist/utils/resourceAnnotations.js +57 -0
- package/dist/utils/resourceAnnotations.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* postgres-mcp - Schema Types
|
|
3
|
+
*
|
|
4
|
+
* Database schema metadata types for introspection.
|
|
5
|
+
*/
|
|
6
|
+
import type { TableInfo } from "./database.js";
|
|
7
|
+
/**
|
|
8
|
+
* Schema information for a database
|
|
9
|
+
*/
|
|
10
|
+
export interface SchemaInfo {
|
|
11
|
+
tables: TableInfo[];
|
|
12
|
+
views?: TableInfo[];
|
|
13
|
+
materializedViews?: TableInfo[];
|
|
14
|
+
indexes?: IndexInfo[];
|
|
15
|
+
constraints?: ConstraintInfo[];
|
|
16
|
+
functions?: FunctionInfo[];
|
|
17
|
+
triggers?: TriggerInfo[];
|
|
18
|
+
sequences?: SequenceInfo[];
|
|
19
|
+
types?: CustomTypeInfo[];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Index information
|
|
23
|
+
*/
|
|
24
|
+
export interface IndexInfo {
|
|
25
|
+
name: string;
|
|
26
|
+
tableName: string;
|
|
27
|
+
schemaName?: string | undefined;
|
|
28
|
+
columns: string[];
|
|
29
|
+
unique: boolean;
|
|
30
|
+
type: "btree" | "hash" | "gist" | "gin" | "spgist" | "brin";
|
|
31
|
+
isPartial?: boolean | undefined;
|
|
32
|
+
predicate?: string | undefined;
|
|
33
|
+
sizeBytes?: number | undefined;
|
|
34
|
+
numberOfScans?: number | undefined;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Constraint information
|
|
38
|
+
*/
|
|
39
|
+
export interface ConstraintInfo {
|
|
40
|
+
name: string;
|
|
41
|
+
tableName: string;
|
|
42
|
+
schemaName?: string;
|
|
43
|
+
type: "primary_key" | "foreign_key" | "unique" | "check" | "exclusion";
|
|
44
|
+
columns: string[];
|
|
45
|
+
definition?: string;
|
|
46
|
+
referencedTable?: string;
|
|
47
|
+
referencedColumns?: string[];
|
|
48
|
+
onDelete?: "CASCADE" | "SET NULL" | "SET DEFAULT" | "RESTRICT" | "NO ACTION";
|
|
49
|
+
onUpdate?: "CASCADE" | "SET NULL" | "SET DEFAULT" | "RESTRICT" | "NO ACTION";
|
|
50
|
+
isDeferrable?: boolean;
|
|
51
|
+
isDeferred?: boolean;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Function/procedure information
|
|
55
|
+
*/
|
|
56
|
+
export interface FunctionInfo {
|
|
57
|
+
name: string;
|
|
58
|
+
schemaName?: string;
|
|
59
|
+
type: "FUNCTION" | "PROCEDURE" | "AGGREGATE" | "WINDOW";
|
|
60
|
+
language: string;
|
|
61
|
+
returnType?: string;
|
|
62
|
+
argumentTypes?: string[];
|
|
63
|
+
owner: string;
|
|
64
|
+
isStrict?: boolean;
|
|
65
|
+
securityDefiner?: boolean;
|
|
66
|
+
volatility?: "IMMUTABLE" | "STABLE" | "VOLATILE";
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Trigger information
|
|
70
|
+
*/
|
|
71
|
+
export interface TriggerInfo {
|
|
72
|
+
name: string;
|
|
73
|
+
tableName: string;
|
|
74
|
+
schemaName?: string;
|
|
75
|
+
event: ("INSERT" | "UPDATE" | "DELETE" | "TRUNCATE")[];
|
|
76
|
+
timing: "BEFORE" | "AFTER" | "INSTEAD OF";
|
|
77
|
+
orientation: "ROW" | "STATEMENT";
|
|
78
|
+
functionName: string;
|
|
79
|
+
isEnabled: boolean;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Sequence information
|
|
83
|
+
*/
|
|
84
|
+
export interface SequenceInfo {
|
|
85
|
+
name: string;
|
|
86
|
+
schemaName?: string;
|
|
87
|
+
dataType: string;
|
|
88
|
+
startValue: bigint;
|
|
89
|
+
minValue: bigint;
|
|
90
|
+
maxValue: bigint;
|
|
91
|
+
increment: bigint;
|
|
92
|
+
cycled: boolean;
|
|
93
|
+
cacheSize: number;
|
|
94
|
+
lastValue?: bigint;
|
|
95
|
+
ownedBy?: string;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Custom type information
|
|
99
|
+
*/
|
|
100
|
+
export interface CustomTypeInfo {
|
|
101
|
+
name: string;
|
|
102
|
+
schemaName?: string;
|
|
103
|
+
type: "ENUM" | "COMPOSITE" | "DOMAIN" | "RANGE";
|
|
104
|
+
values?: string[];
|
|
105
|
+
attributes?: {
|
|
106
|
+
name: string;
|
|
107
|
+
type: string;
|
|
108
|
+
}[];
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/types/schema.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Annotations Presets
|
|
3
|
+
*
|
|
4
|
+
* Reusable annotation configurations for common tool behavior patterns.
|
|
5
|
+
* Used by all tool definition files for consistency.
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolAnnotations } from "../types/index.js";
|
|
8
|
+
/** Read-only query tools (SELECT, EXPLAIN, metadata retrieval) */
|
|
9
|
+
export declare const READ_ONLY: ToolAnnotations;
|
|
10
|
+
/** Standard write tools (INSERT, UPDATE, CREATE) */
|
|
11
|
+
export declare const WRITE: ToolAnnotations;
|
|
12
|
+
/** Destructive tools (DELETE, DROP, TRUNCATE) */
|
|
13
|
+
export declare const DESTRUCTIVE: ToolAnnotations;
|
|
14
|
+
/** Idempotent tools (CREATE IF NOT EXISTS, upserts) */
|
|
15
|
+
export declare const IDEMPOTENT: ToolAnnotations;
|
|
16
|
+
/** Admin/maintenance tools (VACUUM, ANALYZE, REINDEX) */
|
|
17
|
+
export declare const ADMIN: ToolAnnotations;
|
|
18
|
+
/**
|
|
19
|
+
* Create annotations with a custom title
|
|
20
|
+
*/
|
|
21
|
+
export declare function withTitle(title: string, base?: ToolAnnotations): ToolAnnotations;
|
|
22
|
+
/**
|
|
23
|
+
* Create read-only annotations with title
|
|
24
|
+
*/
|
|
25
|
+
export declare function readOnly(title: string): ToolAnnotations;
|
|
26
|
+
/**
|
|
27
|
+
* Create write annotations with title
|
|
28
|
+
*/
|
|
29
|
+
export declare function write(title: string): ToolAnnotations;
|
|
30
|
+
/**
|
|
31
|
+
* Create destructive annotations with title
|
|
32
|
+
*/
|
|
33
|
+
export declare function destructive(title: string): ToolAnnotations;
|
|
34
|
+
/**
|
|
35
|
+
* Create idempotent annotations with title
|
|
36
|
+
*/
|
|
37
|
+
export declare function idempotent(title: string): ToolAnnotations;
|
|
38
|
+
/**
|
|
39
|
+
* Create admin annotations with title
|
|
40
|
+
*/
|
|
41
|
+
export declare function admin(title: string): ToolAnnotations;
|
|
42
|
+
//# sourceMappingURL=annotations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/utils/annotations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMzD,kEAAkE;AAClE,eAAO,MAAM,SAAS,EAAE,eAGvB,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,KAAK,EAAE,eAGnB,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,WAAW,EAAE,eAGzB,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,UAAU,EAAE,eAIxB,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,KAAK,EAAE,eAGnB,CAAC;AAMF;;GAEG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,eAA2B,GAChC,eAAe,CAEjB;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAEvD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAEpD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAE1D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAEzD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAEpD"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Annotations Presets
|
|
3
|
+
*
|
|
4
|
+
* Reusable annotation configurations for common tool behavior patterns.
|
|
5
|
+
* Used by all tool definition files for consistency.
|
|
6
|
+
*/
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// Base Annotation Presets
|
|
9
|
+
// =============================================================================
|
|
10
|
+
/** Read-only query tools (SELECT, EXPLAIN, metadata retrieval) */
|
|
11
|
+
export const READ_ONLY = {
|
|
12
|
+
readOnlyHint: true,
|
|
13
|
+
destructiveHint: false,
|
|
14
|
+
};
|
|
15
|
+
/** Standard write tools (INSERT, UPDATE, CREATE) */
|
|
16
|
+
export const WRITE = {
|
|
17
|
+
readOnlyHint: false,
|
|
18
|
+
destructiveHint: false,
|
|
19
|
+
};
|
|
20
|
+
/** Destructive tools (DELETE, DROP, TRUNCATE) */
|
|
21
|
+
export const DESTRUCTIVE = {
|
|
22
|
+
readOnlyHint: false,
|
|
23
|
+
destructiveHint: true,
|
|
24
|
+
};
|
|
25
|
+
/** Idempotent tools (CREATE IF NOT EXISTS, upserts) */
|
|
26
|
+
export const IDEMPOTENT = {
|
|
27
|
+
readOnlyHint: false,
|
|
28
|
+
destructiveHint: false,
|
|
29
|
+
idempotentHint: true,
|
|
30
|
+
};
|
|
31
|
+
/** Admin/maintenance tools (VACUUM, ANALYZE, REINDEX) */
|
|
32
|
+
export const ADMIN = {
|
|
33
|
+
readOnlyHint: false,
|
|
34
|
+
destructiveHint: false,
|
|
35
|
+
};
|
|
36
|
+
// =============================================================================
|
|
37
|
+
// Helper Functions
|
|
38
|
+
// =============================================================================
|
|
39
|
+
/**
|
|
40
|
+
* Create annotations with a custom title
|
|
41
|
+
*/
|
|
42
|
+
export function withTitle(title, base = READ_ONLY) {
|
|
43
|
+
return { title, ...base };
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Create read-only annotations with title
|
|
47
|
+
*/
|
|
48
|
+
export function readOnly(title) {
|
|
49
|
+
return { title, ...READ_ONLY };
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Create write annotations with title
|
|
53
|
+
*/
|
|
54
|
+
export function write(title) {
|
|
55
|
+
return { title, ...WRITE };
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Create destructive annotations with title
|
|
59
|
+
*/
|
|
60
|
+
export function destructive(title) {
|
|
61
|
+
return { title, ...DESTRUCTIVE };
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Create idempotent annotations with title
|
|
65
|
+
*/
|
|
66
|
+
export function idempotent(title) {
|
|
67
|
+
return { title, ...IDEMPOTENT };
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Create admin annotations with title
|
|
71
|
+
*/
|
|
72
|
+
export function admin(title) {
|
|
73
|
+
return { title, ...ADMIN };
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=annotations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/utils/annotations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF,kEAAkE;AAClE,MAAM,CAAC,MAAM,SAAS,GAAoB;IACxC,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,oDAAoD;AACpD,MAAM,CAAC,MAAM,KAAK,GAAoB;IACpC,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAoB;IAC1C,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,uDAAuD;AACvD,MAAM,CAAC,MAAM,UAAU,GAAoB;IACzC,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;CACrB,CAAC;AAEF,yDAAyD;AACzD,MAAM,CAAC,MAAM,KAAK,GAAoB;IACpC,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,KAAa,EACb,OAAwB,SAAS;IAEjC,OAAO,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,EAAE,KAAK,EAAE,GAAG,WAAW,EAAE,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAAa;IACtC,OAAO,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,KAAa;IACjC,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Icons Utility
|
|
3
|
+
*
|
|
4
|
+
* Programmatic SVG icons for MCP tool categories with per-tool variants
|
|
5
|
+
* based on behavior annotations (destructive, admin, etc.).
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolIcon, ToolGroup, ToolAnnotations } from "../types/index.js";
|
|
8
|
+
/**
|
|
9
|
+
* Get appropriate icons for a tool based on its group and annotations.
|
|
10
|
+
*
|
|
11
|
+
* Priority:
|
|
12
|
+
* 1. Destructive tools → Warning icon
|
|
13
|
+
* 2. Admin tools (VACUUM, ANALYZE, REINDEX) → Admin gear icon
|
|
14
|
+
* 3. All other tools → Category-specific icon
|
|
15
|
+
*/
|
|
16
|
+
export declare function getToolIcons(group: ToolGroup, annotations?: ToolAnnotations): ToolIcon[];
|
|
17
|
+
/**
|
|
18
|
+
* Get the category icon for a tool group (ignores behavior annotations)
|
|
19
|
+
*/
|
|
20
|
+
export declare function getCategoryIcon(group: ToolGroup): ToolIcon[];
|
|
21
|
+
/**
|
|
22
|
+
* Get all category icons for documentation/discovery
|
|
23
|
+
*/
|
|
24
|
+
export declare function getAllCategoryIcons(): Record<ToolGroup, ToolIcon[]>;
|
|
25
|
+
//# sourceMappingURL=icons.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAqL9E;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,WAAW,CAAC,EAAE,eAAe,GAC5B,QAAQ,EAAE,CAkBZ;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,EAAE,CAE5D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAMnE"}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tool Icons Utility
|
|
3
|
+
*
|
|
4
|
+
* Programmatic SVG icons for MCP tool categories with per-tool variants
|
|
5
|
+
* based on behavior annotations (destructive, admin, etc.).
|
|
6
|
+
*/
|
|
7
|
+
// =============================================================================
|
|
8
|
+
// SVG Icon Generator
|
|
9
|
+
// =============================================================================
|
|
10
|
+
/**
|
|
11
|
+
* Create a base64-encoded SVG data URI
|
|
12
|
+
*/
|
|
13
|
+
function createSvgDataUri(pathContent, color) {
|
|
14
|
+
const svg = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="${color}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${pathContent}</svg>`;
|
|
15
|
+
// Use Buffer for Node.js base64 encoding
|
|
16
|
+
return `data:image/svg+xml;base64,${Buffer.from(svg).toString("base64")}`;
|
|
17
|
+
}
|
|
18
|
+
/** SVG path content and color for each tool category */
|
|
19
|
+
const CATEGORY_ICONS = {
|
|
20
|
+
// Core: Database cylinder
|
|
21
|
+
core: {
|
|
22
|
+
path: '<ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"/><path d="M3 12c0 1.66 4 3 9 3s9-1.34 9-3"/>',
|
|
23
|
+
color: "#3B82F6",
|
|
24
|
+
},
|
|
25
|
+
// Transactions: Circular arrows
|
|
26
|
+
transactions: {
|
|
27
|
+
path: '<path d="M21 12a9 9 0 1 1-9-9"/><path d="M21 3v9h-9"/>',
|
|
28
|
+
color: "#8B5CF6",
|
|
29
|
+
},
|
|
30
|
+
// JSONB: Curly braces
|
|
31
|
+
jsonb: {
|
|
32
|
+
path: '<path d="M8 3H7a2 2 0 0 0-2 2v5a2 2 0 0 1-2 2 2 2 0 0 1 2 2v5a2 2 0 0 0 2 2h1"/><path d="M16 3h1a2 2 0 0 1 2 2v5a2 2 0 0 0 2 2 2 2 0 0 0-2 2v5a2 2 0 0 1-2 2h-1"/>',
|
|
33
|
+
color: "#F59E0B",
|
|
34
|
+
},
|
|
35
|
+
// Text: Search magnifier with text
|
|
36
|
+
text: {
|
|
37
|
+
path: '<circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/><path d="M8 11h6"/>',
|
|
38
|
+
color: "#06B6D4",
|
|
39
|
+
},
|
|
40
|
+
// Performance: Gauge/speedometer
|
|
41
|
+
performance: {
|
|
42
|
+
path: '<path d="M12 2a10 10 0 1 0 10 10"/><path d="M12 12l5-5"/><circle cx="12" cy="12" r="2"/>',
|
|
43
|
+
color: "#10B981",
|
|
44
|
+
},
|
|
45
|
+
// Admin: Wrench
|
|
46
|
+
admin: {
|
|
47
|
+
path: '<path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"/>',
|
|
48
|
+
color: "#6B7280",
|
|
49
|
+
},
|
|
50
|
+
// Monitoring: Eye
|
|
51
|
+
monitoring: {
|
|
52
|
+
path: '<path d="M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z"/><circle cx="12" cy="12" r="3"/>',
|
|
53
|
+
color: "#6366F1",
|
|
54
|
+
},
|
|
55
|
+
// Backup: Download/archive
|
|
56
|
+
backup: {
|
|
57
|
+
path: '<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7,10 12,15 17,10"/><line x1="12" y1="15" x2="12" y2="3"/>',
|
|
58
|
+
color: "#475569",
|
|
59
|
+
},
|
|
60
|
+
// Schema: Table grid
|
|
61
|
+
schema: {
|
|
62
|
+
path: '<rect x="3" y="3" width="18" height="18" rx="2" ry="2"/><line x1="3" y1="9" x2="21" y2="9"/><line x1="9" y1="21" x2="9" y2="9"/>',
|
|
63
|
+
color: "#14B8A6",
|
|
64
|
+
},
|
|
65
|
+
// Vector: 3D cube
|
|
66
|
+
vector: {
|
|
67
|
+
path: '<path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/><polyline points="3.27,6.96 12,12.01 20.73,6.96"/><line x1="12" y1="22.08" x2="12" y2="12"/>',
|
|
68
|
+
color: "#7C3AED",
|
|
69
|
+
},
|
|
70
|
+
// PostGIS: Globe
|
|
71
|
+
postgis: {
|
|
72
|
+
path: '<circle cx="12" cy="12" r="10"/><line x1="2" y1="12" x2="22" y2="12"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/>',
|
|
73
|
+
color: "#059669",
|
|
74
|
+
},
|
|
75
|
+
// Partitioning: Pie slices
|
|
76
|
+
partitioning: {
|
|
77
|
+
path: '<path d="M21.21 15.89A10 10 0 1 1 8 2.83"/><path d="M22 12A10 10 0 0 0 12 2v10z"/>',
|
|
78
|
+
color: "#F43F5E",
|
|
79
|
+
},
|
|
80
|
+
// Stats: Bar chart
|
|
81
|
+
stats: {
|
|
82
|
+
path: '<line x1="12" y1="20" x2="12" y2="10"/><line x1="18" y1="20" x2="18" y2="4"/><line x1="6" y1="20" x2="6" y2="16"/>',
|
|
83
|
+
color: "#0EA5E9",
|
|
84
|
+
},
|
|
85
|
+
// Cron: Clock
|
|
86
|
+
cron: {
|
|
87
|
+
path: '<circle cx="12" cy="12" r="10"/><polyline points="12,6 12,12 16,14"/>',
|
|
88
|
+
color: "#D97706",
|
|
89
|
+
},
|
|
90
|
+
// Partman: Calendar
|
|
91
|
+
partman: {
|
|
92
|
+
path: '<rect x="3" y="4" width="18" height="18" rx="2" ry="2"/><line x1="16" y1="2" x2="16" y2="6"/><line x1="8" y1="2" x2="8" y2="6"/><line x1="3" y1="10" x2="21" y2="10"/>',
|
|
93
|
+
color: "#C026D3",
|
|
94
|
+
},
|
|
95
|
+
// Kcache: CPU chip
|
|
96
|
+
kcache: {
|
|
97
|
+
path: '<rect x="4" y="4" width="16" height="16" rx="2" ry="2"/><rect x="9" y="9" width="6" height="6"/><line x1="9" y1="1" x2="9" y2="4"/><line x1="15" y1="1" x2="15" y2="4"/><line x1="9" y1="20" x2="9" y2="23"/><line x1="15" y1="20" x2="15" y2="23"/><line x1="20" y1="9" x2="23" y2="9"/><line x1="20" y1="14" x2="23" y2="14"/><line x1="1" y1="9" x2="4" y2="9"/><line x1="1" y1="14" x2="4" y2="14"/>',
|
|
98
|
+
color: "#EF4444",
|
|
99
|
+
},
|
|
100
|
+
// Citext: Aa letters
|
|
101
|
+
citext: {
|
|
102
|
+
path: '<path d="M3 21h4l3-9 3 9h4"/><path d="M14 21h4l1-3h-6l1 3z"/><path d="M7 9l3-6 3 6"/>',
|
|
103
|
+
color: "#84CC16",
|
|
104
|
+
},
|
|
105
|
+
// Ltree: Tree branches
|
|
106
|
+
ltree: {
|
|
107
|
+
path: '<path d="M8 19H5a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h3"/><path d="M16 5h3a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-3"/><line x1="12" y1="3" x2="12" y2="21"/>',
|
|
108
|
+
color: "#22C55E",
|
|
109
|
+
},
|
|
110
|
+
// Pgcrypto: Lock/shield
|
|
111
|
+
pgcrypto: {
|
|
112
|
+
path: '<rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/>',
|
|
113
|
+
color: "#EAB308",
|
|
114
|
+
},
|
|
115
|
+
// Codemode: Terminal/code
|
|
116
|
+
codemode: {
|
|
117
|
+
path: '<polyline points="4,17 10,11 4,5"/><line x1="12" y1="19" x2="20" y2="19"/>',
|
|
118
|
+
color: "#EC4899",
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
// =============================================================================
|
|
122
|
+
// Special Behavior Icons
|
|
123
|
+
// =============================================================================
|
|
124
|
+
/** Warning icon for destructive operations (red triangle) */
|
|
125
|
+
const WARNING_ICON_PATH = '<path d="M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/>';
|
|
126
|
+
const WARNING_COLOR = "#EF4444";
|
|
127
|
+
/** Admin icon for maintenance operations (gear) */
|
|
128
|
+
const ADMIN_ICON_PATH = '<circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"/>';
|
|
129
|
+
const ADMIN_COLOR = "#F59E0B";
|
|
130
|
+
// =============================================================================
|
|
131
|
+
// Icon Builders
|
|
132
|
+
// =============================================================================
|
|
133
|
+
/**
|
|
134
|
+
* Create a ToolIcon array for standard category icons
|
|
135
|
+
*/
|
|
136
|
+
function createCategoryIcon(group) {
|
|
137
|
+
const { path, color } = CATEGORY_ICONS[group];
|
|
138
|
+
return [
|
|
139
|
+
{
|
|
140
|
+
src: createSvgDataUri(path, color),
|
|
141
|
+
mimeType: "image/svg+xml",
|
|
142
|
+
sizes: ["any"],
|
|
143
|
+
},
|
|
144
|
+
];
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Create a warning icon for destructive operations
|
|
148
|
+
*/
|
|
149
|
+
function createWarningIcon() {
|
|
150
|
+
return [
|
|
151
|
+
{
|
|
152
|
+
src: createSvgDataUri(WARNING_ICON_PATH, WARNING_COLOR),
|
|
153
|
+
mimeType: "image/svg+xml",
|
|
154
|
+
sizes: ["any"],
|
|
155
|
+
},
|
|
156
|
+
];
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Create an admin/maintenance icon
|
|
160
|
+
*/
|
|
161
|
+
function createAdminIcon() {
|
|
162
|
+
return [
|
|
163
|
+
{
|
|
164
|
+
src: createSvgDataUri(ADMIN_ICON_PATH, ADMIN_COLOR),
|
|
165
|
+
mimeType: "image/svg+xml",
|
|
166
|
+
sizes: ["any"],
|
|
167
|
+
},
|
|
168
|
+
];
|
|
169
|
+
}
|
|
170
|
+
// =============================================================================
|
|
171
|
+
// Public API
|
|
172
|
+
// =============================================================================
|
|
173
|
+
/**
|
|
174
|
+
* Get appropriate icons for a tool based on its group and annotations.
|
|
175
|
+
*
|
|
176
|
+
* Priority:
|
|
177
|
+
* 1. Destructive tools → Warning icon
|
|
178
|
+
* 2. Admin tools (VACUUM, ANALYZE, REINDEX) → Admin gear icon
|
|
179
|
+
* 3. All other tools → Category-specific icon
|
|
180
|
+
*/
|
|
181
|
+
export function getToolIcons(group, annotations) {
|
|
182
|
+
// Destructive operations get warning icon
|
|
183
|
+
if (annotations?.destructiveHint === true) {
|
|
184
|
+
return createWarningIcon();
|
|
185
|
+
}
|
|
186
|
+
// Admin/maintenance operations get gear icon
|
|
187
|
+
const title = annotations?.title?.toLowerCase() ?? "";
|
|
188
|
+
if (title.includes("vacuum") ||
|
|
189
|
+
title.includes("analyze") ||
|
|
190
|
+
title.includes("reindex")) {
|
|
191
|
+
return createAdminIcon();
|
|
192
|
+
}
|
|
193
|
+
// Default to category icon
|
|
194
|
+
return createCategoryIcon(group);
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Get the category icon for a tool group (ignores behavior annotations)
|
|
198
|
+
*/
|
|
199
|
+
export function getCategoryIcon(group) {
|
|
200
|
+
return createCategoryIcon(group);
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Get all category icons for documentation/discovery
|
|
204
|
+
*/
|
|
205
|
+
export function getAllCategoryIcons() {
|
|
206
|
+
const result = {};
|
|
207
|
+
for (const group of Object.keys(CATEGORY_ICONS)) {
|
|
208
|
+
result[group] = createCategoryIcon(group);
|
|
209
|
+
}
|
|
210
|
+
return result;
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.js","sourceRoot":"","sources":["../../src/utils/icons.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* postgres-mcp - Identifier Sanitization Utilities
|
|
3
|
+
*
|
|
4
|
+
* Provides safe handling of PostgreSQL identifiers (table names, column names, schema names)
|
|
5
|
+
* to prevent SQL injection attacks via identifier interpolation.
|
|
6
|
+
*
|
|
7
|
+
* PostgreSQL identifier rules:
|
|
8
|
+
* - Must start with a letter (a-z) or underscore (_)
|
|
9
|
+
* - Can contain letters, digits (0-9), underscores, and dollar signs ($)
|
|
10
|
+
* - Maximum length: 63 bytes (NAMEDATALEN - 1)
|
|
11
|
+
* - Case-insensitive unless quoted
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Error thrown when an identifier is invalid
|
|
15
|
+
*/
|
|
16
|
+
export declare class InvalidIdentifierError extends Error {
|
|
17
|
+
readonly identifier: string;
|
|
18
|
+
readonly reason: string;
|
|
19
|
+
constructor(identifier: string, reason: string);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Validate a PostgreSQL identifier
|
|
23
|
+
*
|
|
24
|
+
* @param name - The identifier to validate
|
|
25
|
+
* @throws InvalidIdentifierError if the identifier is invalid
|
|
26
|
+
*/
|
|
27
|
+
export declare function validateIdentifier(name: string): void;
|
|
28
|
+
/**
|
|
29
|
+
* Sanitize and quote a PostgreSQL identifier for safe use in SQL queries
|
|
30
|
+
*
|
|
31
|
+
* This function:
|
|
32
|
+
* 1. Validates the identifier against PostgreSQL naming rules
|
|
33
|
+
* 2. Escapes any embedded double quotes
|
|
34
|
+
* 3. Wraps the identifier in double quotes for safe interpolation
|
|
35
|
+
*
|
|
36
|
+
* @param name - The identifier to sanitize
|
|
37
|
+
* @returns The sanitized, double-quoted identifier
|
|
38
|
+
* @throws InvalidIdentifierError if the identifier is invalid
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* sanitizeIdentifier('users') // Returns: "users"
|
|
42
|
+
* sanitizeIdentifier('my_table') // Returns: "my_table"
|
|
43
|
+
* sanitizeIdentifier('User"Data') // Throws: InvalidIdentifierError
|
|
44
|
+
*/
|
|
45
|
+
export declare function sanitizeIdentifier(name: string): string;
|
|
46
|
+
/**
|
|
47
|
+
* Check if an identifier needs quoting (is a reserved keyword or has special characters)
|
|
48
|
+
*
|
|
49
|
+
* @param name - The identifier to check
|
|
50
|
+
* @returns True if the identifier needs quoting
|
|
51
|
+
*/
|
|
52
|
+
export declare function needsQuoting(name: string): boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Sanitize a schema-qualified table name
|
|
55
|
+
*
|
|
56
|
+
* @param table - The table name
|
|
57
|
+
* @param schema - Optional schema name (defaults to no schema prefix)
|
|
58
|
+
* @returns The sanitized, fully-qualified table reference
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* sanitizeTableName('users') // Returns: "users"
|
|
62
|
+
* sanitizeTableName('users', 'public') // Returns: "public"."users"
|
|
63
|
+
*/
|
|
64
|
+
export declare function sanitizeTableName(table: string, schema?: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* Sanitize a column reference with optional table qualifier
|
|
67
|
+
*
|
|
68
|
+
* @param column - The column name
|
|
69
|
+
* @param table - Optional table name or alias
|
|
70
|
+
* @returns The sanitized column reference
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* sanitizeColumnRef('id') // Returns: "id"
|
|
74
|
+
* sanitizeColumnRef('id', 'users') // Returns: "users"."id"
|
|
75
|
+
*/
|
|
76
|
+
export declare function sanitizeColumnRef(column: string, table?: string): string;
|
|
77
|
+
/**
|
|
78
|
+
* Sanitize an array of identifiers
|
|
79
|
+
*
|
|
80
|
+
* @param names - Array of identifier names
|
|
81
|
+
* @returns Array of sanitized identifiers
|
|
82
|
+
*/
|
|
83
|
+
export declare function sanitizeIdentifiers(names: string[]): string[];
|
|
84
|
+
/**
|
|
85
|
+
* Create a safe column list for SELECT statements
|
|
86
|
+
*
|
|
87
|
+
* @param columns - Array of column names
|
|
88
|
+
* @returns Comma-separated list of sanitized column names
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* createColumnList(['id', 'name', 'email']) // Returns: "id", "name", "email"
|
|
92
|
+
*/
|
|
93
|
+
export declare function createColumnList(columns: string[]): string;
|
|
94
|
+
/**
|
|
95
|
+
* Sanitize an index name
|
|
96
|
+
* PostgreSQL index names follow the same rules as identifiers
|
|
97
|
+
*
|
|
98
|
+
* @param name - The index name
|
|
99
|
+
* @returns The sanitized index name
|
|
100
|
+
*/
|
|
101
|
+
export declare function sanitizeIndexName(name: string): string;
|
|
102
|
+
/**
|
|
103
|
+
* Generate a safe default index name from table and column names
|
|
104
|
+
*
|
|
105
|
+
* @param table - The table name
|
|
106
|
+
* @param columns - The column name(s)
|
|
107
|
+
* @param prefix - Optional prefix (default: 'idx')
|
|
108
|
+
* @returns A sanitized index name
|
|
109
|
+
*/
|
|
110
|
+
export declare function generateIndexName(table: string, columns: string | string[], prefix?: string): string;
|
|
111
|
+
//# sourceMappingURL=identifiers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identifiers.d.ts","sourceRoot":"","sources":["../../src/utils/identifiers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAkGH;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;aAE7B,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;gBADd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM;CAKjC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CA4BrD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOvD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAgBlD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CASxE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CASxE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAE7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAE1D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,MAAM,SAAQ,GACb,MAAM,CAcR"}
|