db-mcp 2.0.0 → 3.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/README.md +96 -91
- package/dist/.tsbuildinfo +1 -0
- package/dist/adapters/database-adapter.d.ts +173 -0
- package/dist/adapters/database-adapter.d.ts.map +1 -0
- package/dist/adapters/query-validation.d.ts +20 -0
- package/dist/adapters/query-validation.d.ts.map +1 -0
- package/dist/adapters/registration/index.d.ts +4 -0
- package/dist/adapters/registration/index.d.ts.map +1 -0
- package/dist/adapters/registration/prompts.d.ts +7 -0
- package/dist/adapters/registration/prompts.d.ts.map +1 -0
- package/dist/adapters/registration/resources.d.ts +7 -0
- package/dist/adapters/registration/resources.d.ts.map +1 -0
- package/dist/adapters/registration/tools.d.ts +9 -0
- package/dist/adapters/registration/tools.d.ts.map +1 -0
- package/dist/adapters/sqlite/index.d.ts +9 -0
- package/dist/adapters/sqlite/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/json-utils.d.ts +100 -0
- package/dist/adapters/sqlite/json-utils.d.ts.map +1 -0
- package/dist/adapters/sqlite/prompts/analysis.d.ts +23 -0
- package/dist/adapters/sqlite/prompts/analysis.d.ts.map +1 -0
- package/dist/adapters/sqlite/prompts/index.d.ts +16 -0
- package/dist/adapters/sqlite/prompts/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/prompts/query.d.ts +19 -0
- package/dist/adapters/sqlite/prompts/query.d.ts.map +1 -0
- package/dist/adapters/sqlite/prompts/schema.d.ts +20 -0
- package/dist/adapters/sqlite/prompts/schema.d.ts.map +1 -0
- package/dist/adapters/sqlite/query-executor.d.ts +38 -0
- package/dist/adapters/sqlite/query-executor.d.ts.map +1 -0
- package/dist/adapters/sqlite/resources.d.ts +13 -0
- package/dist/adapters/sqlite/resources.d.ts.map +1 -0
- package/dist/adapters/sqlite/schema-manager.d.ts +69 -0
- package/dist/adapters/sqlite/schema-manager.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/admin.d.ts +459 -0
- package/dist/adapters/sqlite/schemas/admin.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/codemode.d.ts +30 -0
- package/dist/adapters/sqlite/schemas/codemode.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/common.d.ts +9 -0
- package/dist/adapters/sqlite/schemas/common.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/core.d.ts +530 -0
- package/dist/adapters/sqlite/schemas/core.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/error-mixin.d.ts +10 -0
- package/dist/adapters/sqlite/schemas/error-mixin.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/fts.d.ts +106 -0
- package/dist/adapters/sqlite/schemas/fts.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/geo.d.ts +135 -0
- package/dist/adapters/sqlite/schemas/geo.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/index.d.ts +23 -0
- package/dist/adapters/sqlite/schemas/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/introspection.d.ts +583 -0
- package/dist/adapters/sqlite/schemas/introspection.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/json.d.ts +849 -0
- package/dist/adapters/sqlite/schemas/json.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/migration.d.ts +220 -0
- package/dist/adapters/sqlite/schemas/migration.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/native.d.ts +235 -0
- package/dist/adapters/sqlite/schemas/native.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/server.d.ts +13 -0
- package/dist/adapters/sqlite/schemas/server.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/spatialite.d.ts +114 -0
- package/dist/adapters/sqlite/schemas/spatialite.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/stats.d.ts +780 -0
- package/dist/adapters/sqlite/schemas/stats.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/text.d.ts +570 -0
- package/dist/adapters/sqlite/schemas/text.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/vector.d.ts +252 -0
- package/dist/adapters/sqlite/schemas/vector.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/virtual.d.ts +257 -0
- package/dist/adapters/sqlite/schemas/virtual.d.ts.map +1 -0
- package/dist/adapters/sqlite/schemas/where.d.ts +20 -0
- package/dist/adapters/sqlite/schemas/where.d.ts.map +1 -0
- package/dist/adapters/sqlite/sqlite-adapter/lifecycle.d.ts +13 -0
- package/dist/adapters/sqlite/sqlite-adapter/lifecycle.d.ts.map +1 -0
- package/dist/adapters/sqlite/sqlite-adapter/schema.d.ts +7 -0
- package/dist/adapters/sqlite/sqlite-adapter/schema.d.ts.map +1 -0
- package/dist/adapters/sqlite/sqlite-adapter.d.ts +138 -0
- package/dist/adapters/sqlite/sqlite-adapter.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/analyze.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/analyze.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/create.d.ts +11 -0
- package/dist/adapters/sqlite/tools/admin/backup/create.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/dump.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/dump.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/index.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/integrity.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/integrity.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/optimize.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/optimize.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/backup/restore.d.ts +7 -0
- package/dist/adapters/sqlite/tools/admin/backup/restore.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/helpers.d.ts +18 -0
- package/dist/adapters/sqlite/tools/admin/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/index.d.ts +10 -0
- package/dist/adapters/sqlite/tools/admin/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts +37 -0
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/reindex.d.ts +10 -0
- package/dist/adapters/sqlite/tools/admin/reindex.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/verify.d.ts +13 -0
- package/dist/adapters/sqlite/tools/admin/verify.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/admin/wal.d.ts +10 -0
- package/dist/adapters/sqlite/tools/admin/wal.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/codemode.d.ts +22 -0
- package/dist/adapters/sqlite/tools/codemode.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/column-validation.d.ts +26 -0
- package/dist/adapters/sqlite/tools/column-validation.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/alter-table.d.ts +11 -0
- package/dist/adapters/sqlite/tools/core/alter-table.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/constraints.d.ts +10 -0
- package/dist/adapters/sqlite/tools/core/constraints.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/convenience-helpers.d.ts +20 -0
- package/dist/adapters/sqlite/tools/core/convenience-helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/convenience-schemas.d.ts +20 -0
- package/dist/adapters/sqlite/tools/core/convenience-schemas.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/convenience.d.ts +29 -0
- package/dist/adapters/sqlite/tools/core/convenience.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/datetime.d.ts +11 -0
- package/dist/adapters/sqlite/tools/core/datetime.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/index.d.ts +14 -0
- package/dist/adapters/sqlite/tools/core/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/indexes.d.ts +20 -0
- package/dist/adapters/sqlite/tools/core/indexes.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/queries.d.ts +16 -0
- package/dist/adapters/sqlite/tools/core/queries.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/tables.d.ts +37 -0
- package/dist/adapters/sqlite/tools/core/tables.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/core/triggers.d.ts +18 -0
- package/dist/adapters/sqlite/tools/core/triggers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/fts.d.ts +13 -0
- package/dist/adapters/sqlite/tools/fts.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/geo.d.ts +14 -0
- package/dist/adapters/sqlite/tools/geo.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/index.d.ts +33 -0
- package/dist/adapters/sqlite/tools/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/constraints.d.ts +10 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/constraints.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/diff.d.ts +11 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/diff.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/index.d.ts +10 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/risks.d.ts +9 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/risks.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/snapshot.d.ts +40 -0
- package/dist/adapters/sqlite/tools/introspection/analysis/snapshot.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/index.d.ts +9 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/indexes.d.ts +10 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/indexes.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/query-plan.d.ts +10 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/query-plan.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/storage.d.ts +10 -0
- package/dist/adapters/sqlite/tools/introspection/diagnostics/storage.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/graph/helpers.d.ts +44 -0
- package/dist/adapters/sqlite/tools/introspection/graph/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/graph/index.d.ts +9 -0
- package/dist/adapters/sqlite/tools/introspection/graph/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/graph/tools.d.ts +12 -0
- package/dist/adapters/sqlite/tools/introspection/graph/tools.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/introspection/index.d.ts +17 -0
- package/dist/adapters/sqlite/tools/introspection/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-helpers/helpers.d.ts +21 -0
- package/dist/adapters/sqlite/tools/json-helpers/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-helpers/index.d.ts +17 -0
- package/dist/adapters/sqlite/tools/json-helpers/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-helpers/read.d.ts +24 -0
- package/dist/adapters/sqlite/tools/json-helpers/read.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-helpers/write.d.ts +24 -0
- package/dist/adapters/sqlite/tools/json-helpers/write.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/crud.d.ts +39 -0
- package/dist/adapters/sqlite/tools/json-operations/crud.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/diff.d.ts +11 -0
- package/dist/adapters/sqlite/tools/json-operations/diff.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/helpers.d.ts +18 -0
- package/dist/adapters/sqlite/tools/json-operations/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/index.d.ts +10 -0
- package/dist/adapters/sqlite/tools/json-operations/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/query.d.ts +24 -0
- package/dist/adapters/sqlite/tools/json-operations/query.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/security.d.ts +19 -0
- package/dist/adapters/sqlite/tools/json-operations/security.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/json-operations/transform.d.ts +24 -0
- package/dist/adapters/sqlite/tools/json-operations/transform.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/helpers.d.ts +34 -0
- package/dist/adapters/sqlite/tools/migration/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/index.d.ts +15 -0
- package/dist/adapters/sqlite/tools/migration/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/apply.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/apply.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/history.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/history.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/index.d.ts +7 -0
- package/dist/adapters/sqlite/tools/migration/tracking/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/init.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/init.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/record.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/record.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/rollback.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/rollback.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/migration/tracking/status.d.ts +4 -0
- package/dist/adapters/sqlite/tools/migration/tracking/status.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/advanced.d.ts +28 -0
- package/dist/adapters/sqlite/tools/stats/advanced.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/anomaly-detection.d.ts +22 -0
- package/dist/adapters/sqlite/tools/stats/anomaly-detection.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/basic.d.ts +32 -0
- package/dist/adapters/sqlite/tools/stats/basic.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/helpers.d.ts +27 -0
- package/dist/adapters/sqlite/tools/stats/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/index.d.ts +12 -0
- package/dist/adapters/sqlite/tools/stats/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/inference/hypothesis.d.ts +7 -0
- package/dist/adapters/sqlite/tools/stats/inference/hypothesis.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/inference/index.d.ts +4 -0
- package/dist/adapters/sqlite/tools/stats/inference/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/inference/outlier.d.ts +7 -0
- package/dist/adapters/sqlite/tools/stats/inference/outlier.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/inference/regression.d.ts +7 -0
- package/dist/adapters/sqlite/tools/stats/inference/regression.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/math-helpers.d.ts +17 -0
- package/dist/adapters/sqlite/tools/stats/math-helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/stats/schema-risks.d.ts +15 -0
- package/dist/adapters/sqlite/tools/stats/schema-risks.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/formatting.d.ts +48 -0
- package/dist/adapters/sqlite/tools/text/formatting.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/helpers.d.ts +22 -0
- package/dist/adapters/sqlite/tools/text/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/index.d.ts +10 -0
- package/dist/adapters/sqlite/tools/text/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/regex.d.ts +21 -0
- package/dist/adapters/sqlite/tools/text/regex.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/search.d.ts +17 -0
- package/dist/adapters/sqlite/tools/text/search.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/sentiment.d.ts +13 -0
- package/dist/adapters/sqlite/tools/text/sentiment.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/text/validate.d.ts +11 -0
- package/dist/adapters/sqlite/tools/text/validate.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/helpers.d.ts +11 -0
- package/dist/adapters/sqlite/tools/vector/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/index.d.ts +14 -0
- package/dist/adapters/sqlite/tools/vector/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/metadata.d.ts +28 -0
- package/dist/adapters/sqlite/tools/vector/metadata.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/search.d.ts +16 -0
- package/dist/adapters/sqlite/tools/vector/search.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/storage.d.ts +24 -0
- package/dist/adapters/sqlite/tools/vector/storage.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/vector/tools.d.ts +9 -0
- package/dist/adapters/sqlite/tools/vector/tools.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/analysis.d.ts +24 -0
- package/dist/adapters/sqlite/tools/virtual/analysis.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/extensions.d.ts +13 -0
- package/dist/adapters/sqlite/tools/virtual/extensions.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/helpers.d.ts +18 -0
- package/dist/adapters/sqlite/tools/virtual/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/index.d.ts +10 -0
- package/dist/adapters/sqlite/tools/virtual/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/views.d.ts +21 -0
- package/dist/adapters/sqlite/tools/virtual/views.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/analyze-csv.d.ts +4 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/analyze-csv.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/csv.d.ts +4 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/csv.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/drop.d.ts +4 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/drop.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/index.d.ts +6 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/index.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/info.d.ts +4 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/info.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/list.d.ts +4 -0
- package/dist/adapters/sqlite/tools/virtual/vtable/list.d.ts.map +1 -0
- package/dist/adapters/sqlite/types.d.ts +89 -0
- package/dist/adapters/sqlite/types.d.ts.map +1 -0
- package/dist/adapters/sqlite-helpers.d.ts +51 -0
- package/dist/adapters/sqlite-helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/extensions.d.ts +17 -0
- package/dist/adapters/sqlite-native/extensions.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/index.d.ts +11 -0
- package/dist/adapters/sqlite-native/index.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/native-query-executor.d.ts +24 -0
- package/dist/adapters/sqlite-native/native-query-executor.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/native-sqlite-adapter.d.ts +160 -0
- package/dist/adapters/sqlite-native/native-sqlite-adapter.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/registration/index.d.ts +12 -0
- package/dist/adapters/sqlite-native/registration/index.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/spatialite/analysis.d.ts +23 -0
- package/dist/adapters/sqlite-native/tools/spatialite/analysis.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/spatialite/index.d.ts +15 -0
- package/dist/adapters/sqlite-native/tools/spatialite/index.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/spatialite/loader.d.ts +22 -0
- package/dist/adapters/sqlite-native/tools/spatialite/loader.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/spatialite/schemas.d.ts +78 -0
- package/dist/adapters/sqlite-native/tools/spatialite/schemas.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/spatialite/tools.d.ts +30 -0
- package/dist/adapters/sqlite-native/tools/spatialite/tools.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/transactions.d.ts +12 -0
- package/dist/adapters/sqlite-native/tools/transactions.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/transaction-methods.d.ts +36 -0
- package/dist/adapters/sqlite-native/transaction-methods.d.ts.map +1 -0
- package/dist/audit/backup-manager.d.ts +90 -0
- package/dist/audit/backup-manager.d.ts.map +1 -0
- package/dist/audit/index.d.ts +11 -0
- package/dist/audit/index.d.ts.map +1 -0
- package/dist/audit/interceptor.d.ts +54 -0
- package/dist/audit/interceptor.d.ts.map +1 -0
- package/dist/audit/logger.d.ts +62 -0
- package/dist/audit/logger.d.ts.map +1 -0
- package/dist/audit/types.d.ts +112 -0
- package/dist/audit/types.d.ts.map +1 -0
- package/dist/auth/auth-context.d.ts +28 -0
- package/dist/auth/auth-context.d.ts.map +1 -0
- package/dist/auth/authorization-server-discovery.d.ts +90 -0
- package/dist/auth/authorization-server-discovery.d.ts.map +1 -0
- package/dist/auth/errors.d.ts +74 -0
- package/dist/auth/errors.d.ts.map +1 -0
- package/dist/auth/middleware/core.d.ts +22 -0
- package/dist/auth/middleware/core.d.ts.map +1 -0
- package/dist/auth/middleware/express-auth.d.ts +13 -0
- package/dist/auth/middleware/express-auth.d.ts.map +1 -0
- package/dist/auth/middleware/express-scopes.d.ts +6 -0
- package/dist/auth/middleware/express-scopes.d.ts.map +1 -0
- package/dist/auth/middleware/extraction.d.ts +2 -0
- package/dist/auth/middleware/extraction.d.ts.map +1 -0
- package/dist/auth/middleware/index.d.ts +5 -0
- package/dist/auth/middleware/index.d.ts.map +1 -0
- package/dist/auth/oauth-resource-server.d.ts +74 -0
- package/dist/auth/oauth-resource-server.d.ts.map +1 -0
- package/dist/auth/scope-map.d.ts +24 -0
- package/dist/auth/scope-map.d.ts.map +1 -0
- package/dist/auth/scopes/constants.d.ts +40 -0
- package/dist/auth/scopes/constants.d.ts.map +1 -0
- package/dist/auth/scopes/display.d.ts +5 -0
- package/dist/auth/scopes/display.d.ts.map +1 -0
- package/dist/auth/scopes/enforcement.d.ts +27 -0
- package/dist/auth/scopes/enforcement.d.ts.map +1 -0
- package/dist/auth/scopes/index.d.ts +6 -0
- package/dist/auth/scopes/index.d.ts.map +1 -0
- package/dist/auth/scopes/mapping.d.ts +39 -0
- package/dist/auth/scopes/mapping.d.ts.map +1 -0
- package/dist/auth/scopes/validation.d.ts +27 -0
- package/dist/auth/scopes/validation.d.ts.map +1 -0
- package/dist/auth/token-validator.d.ts +63 -0
- package/dist/auth/token-validator.d.ts.map +1 -0
- package/dist/auth/transport-agnostic.d.ts +11 -0
- package/dist/auth/transport-agnostic.d.ts.map +1 -0
- package/dist/auth/types.d.ts +257 -0
- package/dist/auth/types.d.ts.map +1 -0
- package/dist/{chunk-WBER5YY4.js → chunk-37G4DLL6.js} +1010 -409
- package/dist/chunk-E5IESRTK.js +489 -0
- package/dist/{chunk-645ZEFLA.js → chunk-L552U3QS.js} +887 -309
- package/dist/{chunk-5Y42NPBP.js → chunk-NV34JSQM.js} +4656 -1829
- package/dist/{chunk-Z7C2TM4L.js → chunk-W5WQVNVX.js} +169 -57
- package/dist/cli.d.ts +7 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +47 -26
- package/dist/codemode/api-constants.d.ts +40 -0
- package/dist/codemode/api-constants.d.ts.map +1 -0
- package/dist/codemode/api.d.ts +70 -0
- package/dist/codemode/api.d.ts.map +1 -0
- package/dist/codemode/auto-return.d.ts +25 -0
- package/dist/codemode/auto-return.d.ts.map +1 -0
- package/dist/codemode/index.d.ts +12 -0
- package/dist/codemode/index.d.ts.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.d.ts +54 -0
- package/dist/codemode/sandbox.d.ts.map +1 -0
- package/dist/codemode/security.d.ts +45 -0
- package/dist/codemode/security.d.ts.map +1 -0
- package/dist/codemode/types.d.ts +167 -0
- package/dist/codemode/types.d.ts.map +1 -0
- package/dist/constants/server-instructions.d.ts +22 -0
- package/dist/constants/server-instructions.d.ts.map +1 -0
- package/dist/filtering/tool-constants.d.ts +45 -0
- package/dist/filtering/tool-constants.d.ts.map +1 -0
- package/dist/filtering/tool-filter.d.ts +82 -0
- package/dist/filtering/tool-filter.d.ts.map +1 -0
- package/dist/{http-6KF4ULDI.js → http-HWTUVFIA.js} +498 -391
- package/dist/index.d.ts +9 -1065
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -6
- package/dist/server/mcp-server.d.ts +66 -0
- package/dist/server/mcp-server.d.ts.map +1 -0
- package/dist/server/registration/audit-tools.d.ts +13 -0
- package/dist/server/registration/audit-tools.d.ts.map +1 -0
- package/dist/server/registration/built-in-tools.d.ts +8 -0
- package/dist/server/registration/built-in-tools.d.ts.map +1 -0
- package/dist/server/registration/help-resources.d.ts +7 -0
- package/dist/server/registration/help-resources.d.ts.map +1 -0
- package/dist/server/registration/index.d.ts +4 -0
- package/dist/server/registration/index.d.ts.map +1 -0
- package/dist/{sqlite-U5KSYQXK.js → sqlite-TB56Z7G3.js} +61 -17
- package/dist/{sqlite-native-JXMCFQBA.js → sqlite-native-IF75BB3O.js} +459 -254
- package/dist/transports/http/index.d.ts +8 -0
- package/dist/transports/http/index.d.ts.map +1 -0
- package/dist/transports/http/middleware.d.ts +25 -0
- package/dist/transports/http/middleware.d.ts.map +1 -0
- package/dist/transports/http/oauth.d.ts +24 -0
- package/dist/transports/http/oauth.d.ts.map +1 -0
- package/dist/transports/http/session.d.ts +2 -0
- package/dist/transports/http/session.d.ts.map +1 -0
- package/dist/transports/http/sessions/index.d.ts +4 -0
- package/dist/transports/http/sessions/index.d.ts.map +1 -0
- package/dist/transports/http/sessions/legacy-sse.d.ts +6 -0
- package/dist/transports/http/sessions/legacy-sse.d.ts.map +1 -0
- package/dist/transports/http/sessions/mutex.d.ts +6 -0
- package/dist/transports/http/sessions/mutex.d.ts.map +1 -0
- package/dist/transports/http/sessions/stateful.d.ts +12 -0
- package/dist/transports/http/sessions/stateful.d.ts.map +1 -0
- package/dist/transports/http/sessions/stateless.d.ts +6 -0
- package/dist/transports/http/sessions/stateless.d.ts.map +1 -0
- package/dist/transports/http/transport.d.ts +65 -0
- package/dist/transports/http/transport.d.ts.map +1 -0
- package/dist/transports/http/type-adapters.d.ts +20 -0
- package/dist/transports/http/type-adapters.d.ts.map +1 -0
- package/dist/transports/http/types.d.ts +120 -0
- package/dist/transports/http/types.d.ts.map +1 -0
- package/dist/types/adapter.d.ts +138 -0
- package/dist/types/adapter.d.ts.map +1 -0
- package/dist/types/auth.d.ts +79 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/database.d.ts +100 -0
- package/dist/types/database.d.ts.map +1 -0
- package/dist/types/filtering.d.ts +41 -0
- package/dist/types/filtering.d.ts.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/server.d.ts +48 -0
- package/dist/types/server.d.ts.map +1 -0
- package/dist/utils/annotations.d.ts +62 -0
- package/dist/utils/annotations.d.ts.map +1 -0
- package/dist/utils/errors/base.d.ts +33 -0
- package/dist/utils/errors/base.d.ts.map +1 -0
- package/dist/utils/errors/categories.d.ts +41 -0
- package/dist/utils/errors/categories.d.ts.map +1 -0
- package/dist/utils/errors/classes.d.ts +124 -0
- package/dist/utils/errors/classes.d.ts.map +1 -0
- package/dist/utils/errors/error-response-fields.d.ts +24 -0
- package/dist/utils/errors/error-response-fields.d.ts.map +1 -0
- package/dist/utils/errors/format.d.ts +74 -0
- package/dist/utils/errors/format.d.ts.map +1 -0
- package/dist/utils/errors/index.d.ts +11 -0
- package/dist/utils/errors/index.d.ts.map +1 -0
- package/dist/utils/errors/suggestions.d.ts +16 -0
- package/dist/utils/errors/suggestions.d.ts.map +1 -0
- package/dist/utils/icons.d.ts +19 -0
- package/dist/utils/icons.d.ts.map +1 -0
- package/dist/utils/identifiers.d.ts +121 -0
- package/dist/utils/identifiers.d.ts.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/insights-manager.d.ts +39 -0
- package/dist/utils/insights-manager.d.ts.map +1 -0
- package/dist/utils/logger/error-codes.d.ts +48 -0
- package/dist/utils/logger/error-codes.d.ts.map +1 -0
- package/dist/utils/logger/index.d.ts +22 -0
- package/dist/utils/logger/index.d.ts.map +1 -0
- package/dist/utils/logger/logger.d.ts +94 -0
- package/dist/utils/logger/logger.d.ts.map +1 -0
- package/dist/utils/logger/module-logger.d.ts +28 -0
- package/dist/utils/logger/module-logger.d.ts.map +1 -0
- package/dist/utils/logger/types.d.ts +36 -0
- package/dist/utils/logger/types.d.ts.map +1 -0
- package/dist/utils/progress-utils.d.ts +54 -0
- package/dist/utils/progress-utils.d.ts.map +1 -0
- package/dist/utils/redaction.d.ts +4 -0
- package/dist/utils/redaction.d.ts.map +1 -0
- package/dist/utils/resource-annotations.d.ts +36 -0
- package/dist/utils/resource-annotations.d.ts.map +1 -0
- package/dist/utils/validate-json-path.d.ts +43 -0
- package/dist/utils/validate-json-path.d.ts.map +1 -0
- package/dist/utils/validate-path.d.ts +37 -0
- package/dist/utils/validate-path.d.ts.map +1 -0
- package/dist/utils/where-clause.d.ts +42 -0
- package/dist/utils/where-clause.d.ts.map +1 -0
- package/dist/version.d.ts +10 -0
- package/dist/version.d.ts.map +1 -0
- package/package.json +26 -13
- package/.gitattributes +0 -2
- package/.gitleaks.toml +0 -9
- package/.trivyignore +0 -8
- package/dist/chunk-OKOVZ5QE.js +0 -28
- package/dist/chunk-SFJQCNG7.js +0 -131
- package/dist/chunk-VIDSICEL.js +0 -85
- package/dist/chunk-X3MUUOWM.js +0 -152
- package/dist/worker-script.d.ts +0 -2
- package/dist/worker-script.js +0 -150
- package/logs/.gitkeep +0 -1
- package/mcp-config-example.json +0 -83
- package/playwright.config.ts +0 -101
- package/scripts/generate-server-instructions.ts +0 -111
- package/scripts/update-badges.ts +0 -99
- package/server.json +0 -54
- package/test-server/README.md +0 -115
- package/test-server/code-map.md +0 -421
- package/test-server/fixtures/sample.csv +0 -6
- package/test-server/reset-database.ps1 +0 -415
- package/test-server/sample.csv +0 -11
- package/test-server/scripts/README.md +0 -27
- package/test-server/scripts/test-help-resources.mjs +0 -245
- package/test-server/scripts/test-prompts.mjs +0 -251
- package/test-server/scripts/test-tool-annotations.mjs +0 -162
- package/test-server/test-advanced/README.md +0 -70
- package/test-server/test-advanced/test-codemode-advanced-admin.md +0 -174
- package/test-server/test-advanced/test-codemode-advanced-core.md +0 -193
- package/test-server/test-advanced/test-codemode-advanced-geo.md +0 -157
- package/test-server/test-advanced/test-codemode-advanced-introspection.md +0 -171
- package/test-server/test-advanced/test-codemode-advanced-json.md +0 -169
- package/test-server/test-advanced/test-codemode-advanced-migration.md +0 -160
- package/test-server/test-advanced/test-codemode-advanced-stats.md +0 -185
- package/test-server/test-advanced/test-codemode-advanced-text.md +0 -183
- package/test-server/test-advanced/test-codemode-advanced-transactions.md +0 -136
- package/test-server/test-advanced/test-codemode-advanced-vector.md +0 -141
- package/test-server/test-codemode/README.md +0 -121
- package/test-server/test-codemode/test-codemode-admin.md +0 -223
- package/test-server/test-codemode/test-codemode-core.md +0 -286
- package/test-server/test-codemode/test-codemode-geo.md +0 -177
- package/test-server/test-codemode/test-codemode-introspection.md +0 -190
- package/test-server/test-codemode/test-codemode-json.md +0 -237
- package/test-server/test-codemode/test-codemode-migration.md +0 -278
- package/test-server/test-codemode/test-codemode-sandbox.md +0 -413
- package/test-server/test-codemode/test-codemode-stats.md +0 -232
- package/test-server/test-codemode/test-codemode-text.md +0 -237
- package/test-server/test-codemode/test-codemode-transactions.md +0 -236
- package/test-server/test-codemode/test-codemode-vector.md +0 -244
- package/test-server/test-codemode/test-codemode-wasm-degradation.md +0 -394
- package/test-server/test-database.sql +0 -424
- package/test-server/test-preflight.md +0 -53
- package/test-server/test-prompts.md +0 -354
- package/test-server/test-resources.md +0 -272
- package/test-server/test-tool-groups/README.md +0 -100
- package/test-server/test-tool-groups/test-admin-core.md +0 -165
- package/test-server/test-tool-groups/test-admin-extensions.md +0 -133
- package/test-server/test-tool-groups/test-core-data.md +0 -262
- package/test-server/test-tool-groups/test-core-schema.md +0 -240
- package/test-server/test-tool-groups/test-geo-haversine.md +0 -130
- package/test-server/test-tool-groups/test-geo-spatialite.md +0 -110
- package/test-server/test-tool-groups/test-introspection-diagnostics.md +0 -123
- package/test-server/test-tool-groups/test-introspection-schema.md +0 -133
- package/test-server/test-tool-groups/test-json-read.md +0 -219
- package/test-server/test-tool-groups/test-json-write.md +0 -157
- package/test-server/test-tool-groups/test-migration.md +0 -193
- package/test-server/test-tool-groups/test-stats-advanced.md +0 -118
- package/test-server/test-tool-groups/test-stats-basic.md +0 -156
- package/test-server/test-tool-groups/test-text-advanced.md +0 -169
- package/test-server/test-tool-groups/test-text-basic.md +0 -177
- package/test-server/test-tool-groups/test-transactions.md +0 -179
- package/test-server/test-tool-groups/test-vector-read.md +0 -130
- package/test-server/test-tool-groups/test-vector-write.md +0 -115
- package/test-server/tool-reference.md +0 -257
- package/tsconfig.build.json +0 -6
- package/tsconfig.test.json +0 -9
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport Module — Public Exports
|
|
3
|
+
*
|
|
4
|
+
* Barrel file re-exporting the HTTP transport class, factory, and config type.
|
|
5
|
+
*/
|
|
6
|
+
export { HttpTransport, createHttpTransport } from "./transport.js";
|
|
7
|
+
export type { HttpTransportConfig } from "./types.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transports/http/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACpE,YAAY,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport Middleware
|
|
3
|
+
*
|
|
4
|
+
* Security headers, CORS configuration, and rate limiting.
|
|
5
|
+
* These are standalone functions that operate on HttpTransportState.
|
|
6
|
+
*/
|
|
7
|
+
import { type HttpTransportState } from "./types.js";
|
|
8
|
+
/**
|
|
9
|
+
* Set security headers on all responses
|
|
10
|
+
*/
|
|
11
|
+
export declare function setupSecurityHeaders(state: HttpTransportState): void;
|
|
12
|
+
/**
|
|
13
|
+
* Check if an origin matches a CORS pattern.
|
|
14
|
+
* Supports exact matches and wildcard subdomain patterns (e.g., "*.example.com").
|
|
15
|
+
*/
|
|
16
|
+
export declare function matchesCorsOrigin(origin: string, pattern: string): boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Configure CORS with configurable origins
|
|
19
|
+
*/
|
|
20
|
+
export declare function setupCors(state: HttpTransportState): void;
|
|
21
|
+
/**
|
|
22
|
+
* Set up per-IP sliding-window rate limiting using express-rate-limit
|
|
23
|
+
*/
|
|
24
|
+
export declare function setupRateLimiting(state: HttpTransportState): void;
|
|
25
|
+
//# sourceMappingURL=middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/transports/http/middleware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAUpB;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAkCpE;AAMD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAkB1E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CA6CzD;AAMD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CA+CjE"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport OAuth Setup
|
|
3
|
+
*
|
|
4
|
+
* OAuth 2.1 component initialization and auth middleware application.
|
|
5
|
+
*/
|
|
6
|
+
import type { HttpTransportState } from "./types.js";
|
|
7
|
+
/**
|
|
8
|
+
* Apply authentication middleware if configured.
|
|
9
|
+
*
|
|
10
|
+
* Priority: OAuth 2.1 > simple bearer token > none.
|
|
11
|
+
* Warns if no auth is configured.
|
|
12
|
+
*/
|
|
13
|
+
export declare function applyAuthMiddleware(state: HttpTransportState): void;
|
|
14
|
+
/**
|
|
15
|
+
* Apply per-tool scope enforcement middleware for tools/call requests.
|
|
16
|
+
* Parses the tool name from the JSON-RPC body and checks against the
|
|
17
|
+
* OAuth scopes provided in req.auth.
|
|
18
|
+
*/
|
|
19
|
+
export declare function applyScopeEnforcementMiddleware(state: HttpTransportState): void;
|
|
20
|
+
/**
|
|
21
|
+
* Set up OAuth 2.1 components (resource server, discovery, token validator)
|
|
22
|
+
*/
|
|
23
|
+
export declare function setupOAuth(state: HttpTransportState, resourceUri: string): Promise<void>;
|
|
24
|
+
//# sourceMappingURL=oauth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../src/transports/http/oauth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AASrD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAiCnE;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,kBAAkB,GACxB,IAAI,CA0KN;AAMD;;GAEG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,kBAAkB,EACzB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAiEf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/transports/http/session.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy-sse.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/legacy-sse.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAStD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAsKvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutex.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/mutex.ts"],"names":[],"mappings":"AAAA,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,MAAM,CAAS;IAEjB,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;CAmBrC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { HttpTransportState } from "../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* H-2: Verify that the requesting client owns the target session.
|
|
4
|
+
* When auth is disabled (owner is undefined), verification is skipped.
|
|
5
|
+
* Returns true if access is allowed, false if denied.
|
|
6
|
+
*/
|
|
7
|
+
export declare function verifySessionOwner(state: HttpTransportState, sessionId: string, reqAuthSub: string | undefined): boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Set up stateful mode endpoints with session management and SSE
|
|
10
|
+
*/
|
|
11
|
+
export declare function setupStatefulEndpoints(state: HttpTransportState): void;
|
|
12
|
+
//# sourceMappingURL=stateful.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stateful.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/stateful.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAUtD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,kBAAkB,EACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAOT;AAYD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CA4QtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stateless.d.ts","sourceRoot":"","sources":["../../../../src/transports/http/sessions/stateless.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAQtD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport
|
|
3
|
+
*
|
|
4
|
+
* Dual-protocol HTTP transport with OAuth 2.1 integration.
|
|
5
|
+
* Supports both Streamable HTTP (MCP 2025-03-26) and Legacy SSE
|
|
6
|
+
* (MCP 2024-11-05) simultaneously, with security headers, CORS,
|
|
7
|
+
* rate limiting, and body size enforcement.
|
|
8
|
+
*
|
|
9
|
+
* Modes:
|
|
10
|
+
* - Stateful (default): Multi-session management with SSE streaming
|
|
11
|
+
* - Stateless (opt-in): Lightweight serverless-compatible mode
|
|
12
|
+
*/
|
|
13
|
+
import express from "express";
|
|
14
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
15
|
+
import { type HttpTransportConfig } from "./types.js";
|
|
16
|
+
import type { OAuthResourceServer } from "../../auth/oauth-resource-server.js";
|
|
17
|
+
/**
|
|
18
|
+
* HTTP Transport for MCP with OAuth 2.1 integration.
|
|
19
|
+
*
|
|
20
|
+
* Supports both Streamable HTTP (MCP 2025-03-26) and Legacy SSE
|
|
21
|
+
* (MCP 2024-11-05) protocols simultaneously.
|
|
22
|
+
*
|
|
23
|
+
* Modes:
|
|
24
|
+
* - Stateful (default): Multi-session management with SSE streaming for notifications
|
|
25
|
+
* - Stateless: Single transport, no session management - ideal for serverless
|
|
26
|
+
*/
|
|
27
|
+
export declare class HttpTransport {
|
|
28
|
+
/** Internal state shared with session/middleware/oauth modules */
|
|
29
|
+
private readonly state;
|
|
30
|
+
constructor(config: HttpTransportConfig);
|
|
31
|
+
/**
|
|
32
|
+
* Initialize the transport with the MCP server.
|
|
33
|
+
*
|
|
34
|
+
* For stateful mode, the server reference is stored to connect new sessions.
|
|
35
|
+
* For stateless mode, a single transport is created and connected.
|
|
36
|
+
*
|
|
37
|
+
* @param server - The MCP server instance
|
|
38
|
+
*/
|
|
39
|
+
initialize(server: McpServer): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Start listening on the configured port
|
|
42
|
+
*/
|
|
43
|
+
start(): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Stop the server and close all active sessions
|
|
46
|
+
*/
|
|
47
|
+
stop(): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* Get the underlying Express app
|
|
50
|
+
*/
|
|
51
|
+
getApp(): express.Express | null;
|
|
52
|
+
/**
|
|
53
|
+
* Get the number of active sessions (stateful mode only)
|
|
54
|
+
*/
|
|
55
|
+
getActiveSessionCount(): number;
|
|
56
|
+
/**
|
|
57
|
+
* Get the OAuth Resource Server
|
|
58
|
+
*/
|
|
59
|
+
getResourceServer(): OAuthResourceServer | null;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Create an HTTP transport instance
|
|
63
|
+
*/
|
|
64
|
+
export declare function createHttpTransport(config: HttpTransportConfig): HttpTransport;
|
|
65
|
+
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/transports/http/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,OAAgC,MAAM,SAAS,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE,OAAO,EAKL,KAAK,mBAAmB,EAEzB,MAAM,YAAY,CAAC;AAgBpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAU/E;;;;;;;;;GASG;AACH,qBAAa,aAAa;IACxB,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqB;gBAE/B,MAAM,EAAE,mBAAmB;IAsBvC;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAoLlD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgD5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAuE3B;;OAEG;IACH,MAAM,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI;IAIhC;;OAEG;IACH,qBAAqB,IAAI,MAAM;IAI/B;;OAEG;IACH,iBAAiB,IAAI,mBAAmB,GAAG,IAAI;CAGhD;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,mBAAmB,GAC1B,aAAa,CAEf"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport Type Adapters
|
|
3
|
+
*
|
|
4
|
+
* Centralizes the Express ↔ Node.js HTTP type casts needed because
|
|
5
|
+
* Express v5 Request/Response types don't extend http.IncomingMessage /
|
|
6
|
+
* http.ServerResponse at the type level (they do at runtime).
|
|
7
|
+
*/
|
|
8
|
+
import type { Request, Response } from "express";
|
|
9
|
+
import type { IncomingMessage, ServerResponse } from "node:http";
|
|
10
|
+
/**
|
|
11
|
+
* Cast Express Request to Node.js IncomingMessage.
|
|
12
|
+
* Safe at runtime — Express Request extends IncomingMessage.
|
|
13
|
+
*/
|
|
14
|
+
export declare function asIncoming(req: Request): IncomingMessage;
|
|
15
|
+
/**
|
|
16
|
+
* Cast Express Response to Node.js ServerResponse.
|
|
17
|
+
* Safe at runtime — Express Response extends ServerResponse.
|
|
18
|
+
*/
|
|
19
|
+
export declare function asServerResponse(res: Response): ServerResponse;
|
|
20
|
+
//# sourceMappingURL=type-adapters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-adapters.d.ts","sourceRoot":"","sources":["../../../src/transports/http/type-adapters.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAExD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,cAAc,CAE9D"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HTTP Transport Types
|
|
3
|
+
*
|
|
4
|
+
* Shared interfaces and constants for the HTTP transport module.
|
|
5
|
+
*/
|
|
6
|
+
import type { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
|
|
7
|
+
import type { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
|
|
8
|
+
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
9
|
+
import type { OAuthResourceServer } from "../../auth/oauth-resource-server.js";
|
|
10
|
+
import type { AuthorizationServerDiscovery } from "../../auth/authorization-server-discovery.js";
|
|
11
|
+
import type { TokenValidator } from "../../auth/token-validator.js";
|
|
12
|
+
import type http from "node:http";
|
|
13
|
+
import type { Express } from "express";
|
|
14
|
+
export declare const DEFAULT_RATE_LIMIT_WINDOW_MS = 60000;
|
|
15
|
+
export declare const DEFAULT_RATE_LIMIT_MAX = 100;
|
|
16
|
+
export declare const DEFAULT_MAX_BODY_BYTES = 1048576;
|
|
17
|
+
export declare const DEFAULT_HSTS_MAX_AGE = 31536000;
|
|
18
|
+
/** JSON-RPC standard error codes */
|
|
19
|
+
export declare const JSONRPC_SERVER_ERROR = -32000;
|
|
20
|
+
export declare const JSONRPC_INTERNAL_ERROR = -32603;
|
|
21
|
+
/** HTTP request timeout (ms) — prevents slowloris-style DoS */
|
|
22
|
+
export declare const HTTP_REQUEST_TIMEOUT_MS = 120000;
|
|
23
|
+
/** Keep-alive timeout (ms) — slightly above common LB idle timeout */
|
|
24
|
+
export declare const HTTP_KEEP_ALIVE_TIMEOUT_MS = 65000;
|
|
25
|
+
/** Headers timeout (ms) — must be > keepAliveTimeout per Node.js docs */
|
|
26
|
+
export declare const HTTP_HEADERS_TIMEOUT_MS = 66000;
|
|
27
|
+
/**
|
|
28
|
+
* HTTP transport configuration
|
|
29
|
+
*/
|
|
30
|
+
export interface HttpTransportConfig {
|
|
31
|
+
/** Port to listen on */
|
|
32
|
+
port: number;
|
|
33
|
+
/** Host to bind to (default: '0.0.0.0') */
|
|
34
|
+
host?: string;
|
|
35
|
+
/**
|
|
36
|
+
* Enable stateless HTTP mode (no session management, no SSE streaming).
|
|
37
|
+
* Ideal for serverless deployments (Lambda, Workers, Vercel).
|
|
38
|
+
* Default: false (stateful mode with session management and SSE support)
|
|
39
|
+
*/
|
|
40
|
+
stateless?: boolean;
|
|
41
|
+
/** Explicitly bypass auth requirement */
|
|
42
|
+
noAuthEnforcement?: boolean;
|
|
43
|
+
/** OAuth 2.1 configuration */
|
|
44
|
+
oauth: {
|
|
45
|
+
/** Enable OAuth authentication */
|
|
46
|
+
enabled: boolean;
|
|
47
|
+
/** Authorization server URL */
|
|
48
|
+
authorizationServerUrl: string;
|
|
49
|
+
/** Expected audience in tokens */
|
|
50
|
+
audience: string;
|
|
51
|
+
/** Expected issuer (defaults to authorizationServerUrl) */
|
|
52
|
+
issuer?: string;
|
|
53
|
+
/** JWKS URI (auto-discovered if not provided) */
|
|
54
|
+
jwksUri?: string;
|
|
55
|
+
/** Clock tolerance in seconds (default: 60) */
|
|
56
|
+
clockTolerance?: number;
|
|
57
|
+
/** Paths that bypass authentication */
|
|
58
|
+
publicPaths?: string[];
|
|
59
|
+
};
|
|
60
|
+
/** CORS configuration */
|
|
61
|
+
cors?: {
|
|
62
|
+
/** Allowed origins */
|
|
63
|
+
origin?: string | string[] | boolean;
|
|
64
|
+
/** Allowed methods */
|
|
65
|
+
methods?: string[];
|
|
66
|
+
/** Allowed headers */
|
|
67
|
+
allowedHeaders?: string[];
|
|
68
|
+
/** Exposed headers */
|
|
69
|
+
exposedHeaders?: string[];
|
|
70
|
+
/** Allow credentials */
|
|
71
|
+
credentials?: boolean;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Allowed CORS origins. Defaults to [] (deny-all).
|
|
75
|
+
* Supports wildcard subdomains (e.g., "*.example.com" matches "app.example.com").
|
|
76
|
+
* Must be explicitly configured for production deployments.
|
|
77
|
+
*/
|
|
78
|
+
corsOrigins?: string[];
|
|
79
|
+
/** Maximum request body size in bytes (default: 1 MB) */
|
|
80
|
+
maxBodyBytes?: number;
|
|
81
|
+
/**
|
|
82
|
+
* Trust proxy headers for client IP extraction.
|
|
83
|
+
* Provide a list of trusted reverse proxy IPs or CIDR blocks.
|
|
84
|
+
* If running behind a proxy, this MUST be explicitly configured to prevent
|
|
85
|
+
* IP spoofing via X-Forwarded-For headers.
|
|
86
|
+
*/
|
|
87
|
+
trustedProxyIps?: string | string[];
|
|
88
|
+
/**
|
|
89
|
+
* Enable HTTP Strict Transport Security header (default: false).
|
|
90
|
+
* Should only be enabled when running behind HTTPS.
|
|
91
|
+
*/
|
|
92
|
+
enableHSTS?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* HSTS max-age in seconds (default: 31536000 = 1 year).
|
|
95
|
+
* Only used when enableHSTS is true.
|
|
96
|
+
*/
|
|
97
|
+
hstsMaxAge?: number;
|
|
98
|
+
/** Resource URI (defaults to http://localhost:{port}) */
|
|
99
|
+
resourceUri?: string;
|
|
100
|
+
/** Maximum number of concurrent stateful sessions (default: 1000) */
|
|
101
|
+
maxSessions?: number;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Internal state shared across HTTP transport modules.
|
|
105
|
+
* Passed to setup functions so they can access and modify transport state.
|
|
106
|
+
*/
|
|
107
|
+
export interface HttpTransportState {
|
|
108
|
+
readonly config: HttpTransportConfig;
|
|
109
|
+
app: Express | null;
|
|
110
|
+
httpServer: http.Server | null;
|
|
111
|
+
transports: Map<string, StreamableHTTPServerTransport>;
|
|
112
|
+
sseTransports: Map<string, SSEServerTransport>;
|
|
113
|
+
statelessTransport: StreamableHTTPServerTransport | null;
|
|
114
|
+
sessionOwners: Map<string, string | undefined>;
|
|
115
|
+
resourceServer: OAuthResourceServer | null;
|
|
116
|
+
authServerDiscovery: AuthorizationServerDiscovery | null;
|
|
117
|
+
tokenValidator: TokenValidator | null;
|
|
118
|
+
mcpServer: McpServer | null;
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/transports/http/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* db-mcp — Adapter Types
|
|
3
|
+
*
|
|
4
|
+
* Types for database adapter capabilities, tool/resource/prompt definitions,
|
|
5
|
+
* MCP icons, and tool annotations.
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolGroup } from "./filtering.js";
|
|
8
|
+
import type { OAuthScope, RequestContext } from "./auth.js";
|
|
9
|
+
/**
|
|
10
|
+
* MCP Icon Definition (MCP Spec 2025-11-25)
|
|
11
|
+
*
|
|
12
|
+
* Icons can be added to servers, tools, resources, and prompts for
|
|
13
|
+
* visual representation in client interfaces.
|
|
14
|
+
*/
|
|
15
|
+
export interface McpIcon {
|
|
16
|
+
/** Icon source — URL or data URI */
|
|
17
|
+
src: string;
|
|
18
|
+
/** MIME type (e.g., 'image/svg+xml', 'image/png') */
|
|
19
|
+
mimeType?: string;
|
|
20
|
+
/** Size descriptors (e.g., ['48x48'], ['any']) */
|
|
21
|
+
sizes?: string[];
|
|
22
|
+
/** Theme hint: 'light' or 'dark' */
|
|
23
|
+
theme?: "light" | "dark";
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Tool annotations provide behavioral hints to clients
|
|
27
|
+
* following the MCP 2025-11-25 specification.
|
|
28
|
+
*/
|
|
29
|
+
export interface ToolAnnotations {
|
|
30
|
+
/** Human-readable title for the tool */
|
|
31
|
+
title?: string;
|
|
32
|
+
/** If true, the tool is guaranteed not to modify any state */
|
|
33
|
+
readOnlyHint?: boolean;
|
|
34
|
+
/** If true, multiple identical requests have the same effect as a single request */
|
|
35
|
+
idempotentHint?: boolean;
|
|
36
|
+
/** If true, the operation is irreversible or causes significant data loss */
|
|
37
|
+
destructiveHint?: boolean;
|
|
38
|
+
/** If true, the tool interacts with external/"open world" systems (network, filesystem, etc.) */
|
|
39
|
+
openWorldHint?: boolean;
|
|
40
|
+
/** If true, the tool handles or returns sensitive data */
|
|
41
|
+
sensitiveHint?: boolean;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Capabilities supported by a database adapter
|
|
45
|
+
*/
|
|
46
|
+
export interface AdapterCapabilities {
|
|
47
|
+
/** Supports JSON operations */
|
|
48
|
+
json: boolean;
|
|
49
|
+
/** Supports full-text search */
|
|
50
|
+
fullTextSearch: boolean;
|
|
51
|
+
/** Supports vector/embedding operations */
|
|
52
|
+
vector: boolean;
|
|
53
|
+
/** Supports geospatial operations */
|
|
54
|
+
geospatial: boolean;
|
|
55
|
+
/** Supports transactions */
|
|
56
|
+
transactions: boolean;
|
|
57
|
+
/** Supports prepared statements */
|
|
58
|
+
preparedStatements: boolean;
|
|
59
|
+
/** Supports connection pooling */
|
|
60
|
+
connectionPooling: boolean;
|
|
61
|
+
/** Additional capability flags */
|
|
62
|
+
[key: string]: boolean;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Tool definition for registration
|
|
66
|
+
*/
|
|
67
|
+
export interface ToolDefinition {
|
|
68
|
+
/** Unique tool name */
|
|
69
|
+
name: string;
|
|
70
|
+
/** Human-readable description */
|
|
71
|
+
description: string;
|
|
72
|
+
/** Tool group for filtering */
|
|
73
|
+
group: ToolGroup;
|
|
74
|
+
/** Zod schema for input validation */
|
|
75
|
+
inputSchema?: unknown;
|
|
76
|
+
/** Zod schema for output validation (MCP 2025-11-25) */
|
|
77
|
+
outputSchema?: unknown;
|
|
78
|
+
/** Required OAuth scopes */
|
|
79
|
+
requiredScopes?: OAuthScope[];
|
|
80
|
+
/** MCP tool annotations (behavioral hints) */
|
|
81
|
+
annotations?: ToolAnnotations;
|
|
82
|
+
/** MCP icons for visual representation (MCP 2025-11-25) */
|
|
83
|
+
icons?: McpIcon[];
|
|
84
|
+
/** Tool handler function */
|
|
85
|
+
handler: (params: unknown, context: RequestContext) => Promise<unknown>;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* MCP Resource Annotations (SDK 1.25+)
|
|
89
|
+
* Provides metadata hints about resource content to help clients
|
|
90
|
+
* manage and display resources appropriately.
|
|
91
|
+
*/
|
|
92
|
+
export interface ResourceAnnotations {
|
|
93
|
+
/** Intended audience for the resource content */
|
|
94
|
+
audience?: ("user" | "assistant")[];
|
|
95
|
+
/** Priority hint for display ordering (0-1 range) */
|
|
96
|
+
priority?: number;
|
|
97
|
+
/** ISO 8601 timestamp of last modification for cache invalidation */
|
|
98
|
+
lastModified?: string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Resource definition for MCP
|
|
102
|
+
*/
|
|
103
|
+
export interface ResourceDefinition {
|
|
104
|
+
/** Resource URI template */
|
|
105
|
+
uri: string;
|
|
106
|
+
/** Human-readable name */
|
|
107
|
+
name: string;
|
|
108
|
+
/** Description */
|
|
109
|
+
description: string;
|
|
110
|
+
/** MIME type */
|
|
111
|
+
mimeType?: string;
|
|
112
|
+
/** MCP Resource Annotations for behavior hints */
|
|
113
|
+
annotations?: ResourceAnnotations;
|
|
114
|
+
/** MCP icons for visual representation (MCP 2025-11-25) */
|
|
115
|
+
icons?: McpIcon[];
|
|
116
|
+
/** Resource handler */
|
|
117
|
+
handler: (uri: string, context: RequestContext) => Promise<unknown>;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Prompt definition for MCP
|
|
121
|
+
*/
|
|
122
|
+
export interface PromptDefinition {
|
|
123
|
+
/** Prompt name */
|
|
124
|
+
name: string;
|
|
125
|
+
/** Description */
|
|
126
|
+
description: string;
|
|
127
|
+
/** Argument definitions */
|
|
128
|
+
arguments?: {
|
|
129
|
+
name: string;
|
|
130
|
+
description: string;
|
|
131
|
+
required?: boolean;
|
|
132
|
+
}[];
|
|
133
|
+
/** MCP icons for visual representation (MCP 2025-11-25) */
|
|
134
|
+
icons?: McpIcon[];
|
|
135
|
+
/** Prompt handler */
|
|
136
|
+
handler: (args: Record<string, string>, context: RequestContext) => Promise<unknown>;
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/types/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* db-mcp — OAuth & Auth Types
|
|
3
|
+
*
|
|
4
|
+
* OAuth 2.1 configuration, scopes, token claims, and request context.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* OAuth 2.1 configuration
|
|
8
|
+
*/
|
|
9
|
+
export interface OAuthConfig {
|
|
10
|
+
/** Enable OAuth authentication */
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
/** Authorization server URL */
|
|
13
|
+
authorizationServerUrl?: string;
|
|
14
|
+
/** Token validation endpoint */
|
|
15
|
+
tokenEndpoint?: string;
|
|
16
|
+
/** JWKS URI for token verification */
|
|
17
|
+
jwksUri?: string;
|
|
18
|
+
/** Expected audience in tokens */
|
|
19
|
+
audience?: string;
|
|
20
|
+
/** Expected issuer in tokens */
|
|
21
|
+
issuer?: string;
|
|
22
|
+
/** Clock tolerance for token validation (seconds) */
|
|
23
|
+
clockTolerance?: number;
|
|
24
|
+
/** JWKS cache TTL (seconds) */
|
|
25
|
+
jwksCacheTtl?: number;
|
|
26
|
+
/** Paths that bypass authentication */
|
|
27
|
+
publicPaths?: string[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* OAuth scopes for access control
|
|
31
|
+
*/
|
|
32
|
+
export type OAuthScope = "read" | "write" | "admin" | `db:${string}` | `table:${string}:${string}`;
|
|
33
|
+
/**
|
|
34
|
+
* Validated OAuth token claims
|
|
35
|
+
*/
|
|
36
|
+
export interface TokenClaims {
|
|
37
|
+
/** Subject (user ID) */
|
|
38
|
+
sub: string;
|
|
39
|
+
/** Granted scopes */
|
|
40
|
+
scopes: string[];
|
|
41
|
+
/** Token expiration time */
|
|
42
|
+
exp: number;
|
|
43
|
+
/** Token issued at time */
|
|
44
|
+
iat: number;
|
|
45
|
+
/** Token issuer */
|
|
46
|
+
iss?: string | undefined;
|
|
47
|
+
/** Token audience */
|
|
48
|
+
aud?: string | string[] | undefined;
|
|
49
|
+
/** Additional claims */
|
|
50
|
+
[key: string]: unknown;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Request context with authentication info
|
|
54
|
+
*/
|
|
55
|
+
export interface RequestContext {
|
|
56
|
+
/** Validated token claims (if authenticated) */
|
|
57
|
+
auth?: TokenClaims | undefined;
|
|
58
|
+
/** Raw access token */
|
|
59
|
+
accessToken?: string;
|
|
60
|
+
/** Request timestamp */
|
|
61
|
+
timestamp: Date;
|
|
62
|
+
/** Request ID for tracing */
|
|
63
|
+
requestId: string;
|
|
64
|
+
/**
|
|
65
|
+
* MCP Server instance for sending progress notifications.
|
|
66
|
+
* Only available when running in HTTP/SSE transport with stateful sessions.
|
|
67
|
+
*/
|
|
68
|
+
server?: unknown;
|
|
69
|
+
/**
|
|
70
|
+
* Progress token from client request _meta (MCP 2025-11-25).
|
|
71
|
+
* If present, the client has requested progress updates.
|
|
72
|
+
*/
|
|
73
|
+
progressToken?: string | number;
|
|
74
|
+
/**
|
|
75
|
+
* Client IP address for rate limiting fallback
|
|
76
|
+
*/
|
|
77
|
+
clientIp?: string | undefined;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,OAAO,EAAE,OAAO,CAAC;IAEjB,+BAA+B;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC,gCAAgC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uCAAuC;IACvC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,OAAO,GACP,OAAO,GACP,MAAM,MAAM,EAAE,GACd,SAAS,MAAM,IAAI,MAAM,EAAE,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,GAAG,EAAE,MAAM,CAAC;IAEZ,qBAAqB;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB,4BAA4B;IAC5B,GAAG,EAAE,MAAM,CAAC;IAEZ,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IAEZ,mBAAmB;IACnB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzB,qBAAqB;IACrB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAEpC,wBAAwB;IACxB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,IAAI,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAE/B,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,wBAAwB;IACxB,SAAS,EAAE,IAAI,CAAC;IAEhB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEhC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B"}
|