@debian777/kairos-mcp 3.0.1-beta.6
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 +22 -0
- package/README.md +78 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/cli/api-client.d.ts +31 -0
- package/dist/cli/api-client.d.ts.map +1 -0
- package/dist/cli/api-client.js +110 -0
- package/dist/cli/api-client.js.map +1 -0
- package/dist/cli/commands/attest.d.ts +6 -0
- package/dist/cli/commands/attest.d.ts.map +1 -0
- package/dist/cli/commands/attest.js +52 -0
- package/dist/cli/commands/attest.js.map +1 -0
- package/dist/cli/commands/begin.d.ts +6 -0
- package/dist/cli/commands/begin.d.ts.map +1 -0
- package/dist/cli/commands/begin.js +32 -0
- package/dist/cli/commands/begin.js.map +1 -0
- package/dist/cli/commands/delete.d.ts +6 -0
- package/dist/cli/commands/delete.d.ts.map +1 -0
- package/dist/cli/commands/delete.js +32 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/mint.d.ts +6 -0
- package/dist/cli/commands/mint.d.ts.map +1 -0
- package/dist/cli/commands/mint.js +48 -0
- package/dist/cli/commands/mint.js.map +1 -0
- package/dist/cli/commands/next.d.ts +6 -0
- package/dist/cli/commands/next.d.ts.map +1 -0
- package/dist/cli/commands/next.js +89 -0
- package/dist/cli/commands/next.js.map +1 -0
- package/dist/cli/commands/search.d.ts +6 -0
- package/dist/cli/commands/search.d.ts.map +1 -0
- package/dist/cli/commands/search.js +32 -0
- package/dist/cli/commands/search.js.map +1 -0
- package/dist/cli/commands/update.d.ts +6 -0
- package/dist/cli/commands/update.d.ts.map +1 -0
- package/dist/cli/commands/update.js +72 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/config.d.ts +9 -0
- package/dist/cli/config.d.ts.map +1 -0
- package/dist/cli/config.js +14 -0
- package/dist/cli/config.js.map +1 -0
- package/dist/cli/index.d.ts +6 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +40 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/output.d.ts +10 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +20 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/config.d.ts +58 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +161 -0
- package/dist/config.js.map +1 -0
- package/dist/debian777-kairos-mcp-3.0.1-beta.6.tgz +0 -0
- package/dist/embed-docs/mem/00000000-0000-0000-0000-000000002001.md +324 -0
- package/dist/embed-docs/mem/00000000-0000-0000-0000-000000002002.md +48 -0
- package/dist/http/bearer-validate.d.ts +14 -0
- package/dist/http/bearer-validate.d.ts.map +1 -0
- package/dist/http/bearer-validate.js +111 -0
- package/dist/http/bearer-validate.js.map +1 -0
- package/dist/http/http-api-attest.d.ts +7 -0
- package/dist/http/http-api-attest.d.ts.map +1 -0
- package/dist/http/http-api-attest.js +103 -0
- package/dist/http/http-api-attest.js.map +1 -0
- package/dist/http/http-api-begin-step.d.ts +8 -0
- package/dist/http/http-api-begin-step.d.ts.map +1 -0
- package/dist/http/http-api-begin-step.js +108 -0
- package/dist/http/http-api-begin-step.js.map +1 -0
- package/dist/http/http-api-begin.d.ts +8 -0
- package/dist/http/http-api-begin.d.ts.map +1 -0
- package/dist/http/http-api-begin.js +167 -0
- package/dist/http/http-api-begin.js.map +1 -0
- package/dist/http/http-api-delete.d.ts +9 -0
- package/dist/http/http-api-delete.d.ts.map +1 -0
- package/dist/http/http-api-delete.js +67 -0
- package/dist/http/http-api-delete.js.map +1 -0
- package/dist/http/http-api-dump.d.ts +8 -0
- package/dist/http/http-api-dump.d.ts.map +1 -0
- package/dist/http/http-api-dump.js +34 -0
- package/dist/http/http-api-dump.js.map +1 -0
- package/dist/http/http-api-mint.d.ts +9 -0
- package/dist/http/http-api-mint.d.ts.map +1 -0
- package/dist/http/http-api-mint.js +100 -0
- package/dist/http/http-api-mint.js.map +1 -0
- package/dist/http/http-api-next.d.ts +9 -0
- package/dist/http/http-api-next.d.ts.map +1 -0
- package/dist/http/http-api-next.js +193 -0
- package/dist/http/http-api-next.js.map +1 -0
- package/dist/http/http-api-routes.d.ts +13 -0
- package/dist/http/http-api-routes.d.ts.map +1 -0
- package/dist/http/http-api-routes.js +28 -0
- package/dist/http/http-api-routes.js.map +1 -0
- package/dist/http/http-api-snapshot.d.ts +9 -0
- package/dist/http/http-api-snapshot.d.ts.map +1 -0
- package/dist/http/http-api-snapshot.js +38 -0
- package/dist/http/http-api-snapshot.js.map +1 -0
- package/dist/http/http-api-update.d.ts +9 -0
- package/dist/http/http-api-update.d.ts.map +1 -0
- package/dist/http/http-api-update.js +105 -0
- package/dist/http/http-api-update.js.map +1 -0
- package/dist/http/http-auth-callback.d.ts +6 -0
- package/dist/http/http-auth-callback.d.ts.map +1 -0
- package/dist/http/http-auth-callback.js +183 -0
- package/dist/http/http-auth-callback.js.map +1 -0
- package/dist/http/http-auth-middleware.d.ts +30 -0
- package/dist/http/http-auth-middleware.d.ts.map +1 -0
- package/dist/http/http-auth-middleware.js +224 -0
- package/dist/http/http-auth-middleware.js.map +1 -0
- package/dist/http/http-error-handlers.d.ts +7 -0
- package/dist/http/http-error-handlers.d.ts.map +1 -0
- package/dist/http/http-error-handlers.js +35 -0
- package/dist/http/http-error-handlers.js.map +1 -0
- package/dist/http/http-health-routes.d.ts +9 -0
- package/dist/http/http-health-routes.d.ts.map +1 -0
- package/dist/http/http-health-routes.js +117 -0
- package/dist/http/http-health-routes.js.map +1 -0
- package/dist/http/http-mcp-handler.d.ts +8 -0
- package/dist/http/http-mcp-handler.d.ts.map +1 -0
- package/dist/http/http-mcp-handler.js +136 -0
- package/dist/http/http-mcp-handler.js.map +1 -0
- package/dist/http/http-metrics-middleware.d.ts +7 -0
- package/dist/http/http-metrics-middleware.d.ts.map +1 -0
- package/dist/http/http-metrics-middleware.js +56 -0
- package/dist/http/http-metrics-middleware.js.map +1 -0
- package/dist/http/http-server-config.d.ts +11 -0
- package/dist/http/http-server-config.d.ts.map +1 -0
- package/dist/http/http-server-config.js +15 -0
- package/dist/http/http-server-config.js.map +1 -0
- package/dist/http/http-server-startup.d.ts +9 -0
- package/dist/http/http-server-startup.d.ts.map +1 -0
- package/dist/http/http-server-startup.js +26 -0
- package/dist/http/http-server-startup.js.map +1 -0
- package/dist/http/http-server.d.ts +4 -0
- package/dist/http/http-server.d.ts.map +1 -0
- package/dist/http/http-server.js +39 -0
- package/dist/http/http-server.js.map +1 -0
- package/dist/http/http-well-known.d.ts +13 -0
- package/dist/http/http-well-known.d.ts.map +1 -0
- package/dist/http/http-well-known.js +32 -0
- package/dist/http/http-well-known.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +100 -0
- package/dist/index.js.map +1 -0
- package/dist/metrics-server.d.ts +14 -0
- package/dist/metrics-server.d.ts.map +1 -0
- package/dist/metrics-server.js +41 -0
- package/dist/metrics-server.js.map +1 -0
- package/dist/resources/docs-resources.d.ts +2 -0
- package/dist/resources/docs-resources.d.ts.map +1 -0
- package/dist/resources/docs-resources.js +47 -0
- package/dist/resources/docs-resources.js.map +1 -0
- package/dist/resources/embedded-mcp-resources.d.ts +73 -0
- package/dist/resources/embedded-mcp-resources.d.ts.map +1 -0
- package/dist/resources/embedded-mcp-resources.js +132 -0
- package/dist/resources/embedded-mcp-resources.js.map +1 -0
- package/dist/resources/mem-resources-boot.d.ts +10 -0
- package/dist/resources/mem-resources-boot.d.ts.map +1 -0
- package/dist/resources/mem-resources-boot.js +164 -0
- package/dist/resources/mem-resources-boot.js.map +1 -0
- package/dist/resources/prompt-resources.d.ts +5 -0
- package/dist/resources/prompt-resources.d.ts.map +1 -0
- package/dist/resources/prompt-resources.js +42 -0
- package/dist/resources/prompt-resources.js.map +1 -0
- package/dist/resources/resource-bootstrap.d.ts +7 -0
- package/dist/resources/resource-bootstrap.d.ts.map +1 -0
- package/dist/resources/resource-bootstrap.js +33 -0
- package/dist/resources/resource-bootstrap.js.map +1 -0
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +79 -0
- package/dist/server.js.map +1 -0
- package/dist/services/chain-utils.d.ts +22 -0
- package/dist/services/chain-utils.d.ts.map +1 -0
- package/dist/services/chain-utils.js +95 -0
- package/dist/services/chain-utils.js.map +1 -0
- package/dist/services/code-block-processor.d.ts +40 -0
- package/dist/services/code-block-processor.d.ts.map +1 -0
- package/dist/services/code-block-processor.js +169 -0
- package/dist/services/code-block-processor.js.map +1 -0
- package/dist/services/embedding/config.d.ts +5 -0
- package/dist/services/embedding/config.d.ts.map +1 -0
- package/dist/services/embedding/config.js +13 -0
- package/dist/services/embedding/config.js.map +1 -0
- package/dist/services/embedding/providers.d.ts +5 -0
- package/dist/services/embedding/providers.d.ts.map +1 -0
- package/dist/services/embedding/providers.js +141 -0
- package/dist/services/embedding/providers.js.map +1 -0
- package/dist/services/embedding/service.d.ts +39 -0
- package/dist/services/embedding/service.d.ts.map +1 -0
- package/dist/services/embedding/service.js +302 -0
- package/dist/services/embedding/service.js.map +1 -0
- package/dist/services/embedding/types.d.ts +17 -0
- package/dist/services/embedding/types.d.ts.map +1 -0
- package/dist/services/embedding/types.js +2 -0
- package/dist/services/embedding/types.js.map +1 -0
- package/dist/services/id-generator.d.ts +63 -0
- package/dist/services/id-generator.d.ts.map +1 -0
- package/dist/services/id-generator.js +101 -0
- package/dist/services/id-generator.js.map +1 -0
- package/dist/services/key-value-store-factory.d.ts +7 -0
- package/dist/services/key-value-store-factory.d.ts.map +1 -0
- package/dist/services/key-value-store-factory.js +15 -0
- package/dist/services/key-value-store-factory.js.map +1 -0
- package/dist/services/key-value-store.d.ts +24 -0
- package/dist/services/key-value-store.d.ts.map +1 -0
- package/dist/services/key-value-store.js +6 -0
- package/dist/services/key-value-store.js.map +1 -0
- package/dist/services/memory/chain-builder-proof.d.ts +18 -0
- package/dist/services/memory/chain-builder-proof.d.ts.map +1 -0
- package/dist/services/memory/chain-builder-proof.js +70 -0
- package/dist/services/memory/chain-builder-proof.js.map +1 -0
- package/dist/services/memory/chain-builder.d.ts +4 -0
- package/dist/services/memory/chain-builder.d.ts.map +1 -0
- package/dist/services/memory/chain-builder.js +185 -0
- package/dist/services/memory/chain-builder.js.map +1 -0
- package/dist/services/memory/store-chain-default-handler.d.ts +9 -0
- package/dist/services/memory/store-chain-default-handler.d.ts.map +1 -0
- package/dist/services/memory/store-chain-default-handler.js +118 -0
- package/dist/services/memory/store-chain-default-handler.js.map +1 -0
- package/dist/services/memory/store-chain-header-handler.d.ts +8 -0
- package/dist/services/memory/store-chain-header-handler.d.ts.map +1 -0
- package/dist/services/memory/store-chain-header-handler.js +98 -0
- package/dist/services/memory/store-chain-header-handler.js.map +1 -0
- package/dist/services/memory/store-chain-helpers.d.ts +27 -0
- package/dist/services/memory/store-chain-helpers.d.ts.map +1 -0
- package/dist/services/memory/store-chain-helpers.js +102 -0
- package/dist/services/memory/store-chain-helpers.js.map +1 -0
- package/dist/services/memory/store-chain.d.ts +15 -0
- package/dist/services/memory/store-chain.d.ts.map +1 -0
- package/dist/services/memory/store-chain.js +56 -0
- package/dist/services/memory/store-chain.js.map +1 -0
- package/dist/services/memory/store-init.d.ts +3 -0
- package/dist/services/memory/store-init.d.ts.map +1 -0
- package/dist/services/memory/store-init.js +127 -0
- package/dist/services/memory/store-init.js.map +1 -0
- package/dist/services/memory/store-methods.d.ts +35 -0
- package/dist/services/memory/store-methods.d.ts.map +1 -0
- package/dist/services/memory/store-methods.js +308 -0
- package/dist/services/memory/store-methods.js.map +1 -0
- package/dist/services/memory/store.d.ts +36 -0
- package/dist/services/memory/store.d.ts.map +1 -0
- package/dist/services/memory/store.js +119 -0
- package/dist/services/memory/store.js.map +1 -0
- package/dist/services/memory-store.d.ts +33 -0
- package/dist/services/memory-store.d.ts.map +1 -0
- package/dist/services/memory-store.js +158 -0
- package/dist/services/memory-store.js.map +1 -0
- package/dist/services/metrics/agent-metrics.d.ts +12 -0
- package/dist/services/metrics/agent-metrics.d.ts.map +1 -0
- package/dist/services/metrics/agent-metrics.js +34 -0
- package/dist/services/metrics/agent-metrics.js.map +1 -0
- package/dist/services/metrics/embedding-metrics.d.ts +12 -0
- package/dist/services/metrics/embedding-metrics.d.ts.map +1 -0
- package/dist/services/metrics/embedding-metrics.js +41 -0
- package/dist/services/metrics/embedding-metrics.js.map +1 -0
- package/dist/services/metrics/http-metrics.d.ts +12 -0
- package/dist/services/metrics/http-metrics.d.ts.map +1 -0
- package/dist/services/metrics/http-metrics.js +41 -0
- package/dist/services/metrics/http-metrics.js.map +1 -0
- package/dist/services/metrics/mcp-metrics.d.ts +16 -0
- package/dist/services/metrics/mcp-metrics.d.ts.map +1 -0
- package/dist/services/metrics/mcp-metrics.js +55 -0
- package/dist/services/metrics/mcp-metrics.js.map +1 -0
- package/dist/services/metrics/memory-metrics.d.ts +10 -0
- package/dist/services/metrics/memory-metrics.d.ts.map +1 -0
- package/dist/services/metrics/memory-metrics.js +28 -0
- package/dist/services/metrics/memory-metrics.js.map +1 -0
- package/dist/services/metrics/qdrant-metrics.d.ts +11 -0
- package/dist/services/metrics/qdrant-metrics.d.ts.map +1 -0
- package/dist/services/metrics/qdrant-metrics.js +35 -0
- package/dist/services/metrics/qdrant-metrics.js.map +1 -0
- package/dist/services/metrics/registry.d.ts +9 -0
- package/dist/services/metrics/registry.d.ts.map +1 -0
- package/dist/services/metrics/registry.js +19 -0
- package/dist/services/metrics/registry.js.map +1 -0
- package/dist/services/metrics/system-metrics.d.ts +10 -0
- package/dist/services/metrics/system-metrics.d.ts.map +1 -0
- package/dist/services/metrics/system-metrics.js +35 -0
- package/dist/services/metrics/system-metrics.js.map +1 -0
- package/dist/services/proof-of-work-store.d.ts +66 -0
- package/dist/services/proof-of-work-store.d.ts.map +1 -0
- package/dist/services/proof-of-work-store.js +141 -0
- package/dist/services/proof-of-work-store.js.map +1 -0
- package/dist/services/qdrant/connection.d.ts +24 -0
- package/dist/services/qdrant/connection.d.ts.map +1 -0
- package/dist/services/qdrant/connection.js +126 -0
- package/dist/services/qdrant/connection.js.map +1 -0
- package/dist/services/qdrant/index.d.ts +3 -0
- package/dist/services/qdrant/index.d.ts.map +1 -0
- package/dist/services/qdrant/index.js +4 -0
- package/dist/services/qdrant/index.js.map +1 -0
- package/dist/services/qdrant/initialization.d.ts +25 -0
- package/dist/services/qdrant/initialization.d.ts.map +1 -0
- package/dist/services/qdrant/initialization.js +170 -0
- package/dist/services/qdrant/initialization.js.map +1 -0
- package/dist/services/qdrant/listing.d.ts +26 -0
- package/dist/services/qdrant/listing.d.ts.map +1 -0
- package/dist/services/qdrant/listing.js +88 -0
- package/dist/services/qdrant/listing.js.map +1 -0
- package/dist/services/qdrant/memory-retrieval.d.ts +14 -0
- package/dist/services/qdrant/memory-retrieval.d.ts.map +1 -0
- package/dist/services/qdrant/memory-retrieval.js +110 -0
- package/dist/services/qdrant/memory-retrieval.js.map +1 -0
- package/dist/services/qdrant/memory-store.d.ts +16 -0
- package/dist/services/qdrant/memory-store.d.ts.map +1 -0
- package/dist/services/qdrant/memory-store.js +108 -0
- package/dist/services/qdrant/memory-store.js.map +1 -0
- package/dist/services/qdrant/memory-updates.d.ts +8 -0
- package/dist/services/qdrant/memory-updates.d.ts.map +1 -0
- package/dist/services/qdrant/memory-updates.js +206 -0
- package/dist/services/qdrant/memory-updates.js.map +1 -0
- package/dist/services/qdrant/protocol.d.ts +16 -0
- package/dist/services/qdrant/protocol.d.ts.map +1 -0
- package/dist/services/qdrant/protocol.js +48 -0
- package/dist/services/qdrant/protocol.js.map +1 -0
- package/dist/services/qdrant/quality.d.ts +14 -0
- package/dist/services/qdrant/quality.d.ts.map +1 -0
- package/dist/services/qdrant/quality.js +101 -0
- package/dist/services/qdrant/quality.js.map +1 -0
- package/dist/services/qdrant/resources.d.ts +7 -0
- package/dist/services/qdrant/resources.d.ts.map +1 -0
- package/dist/services/qdrant/resources.js +108 -0
- package/dist/services/qdrant/resources.js.map +1 -0
- package/dist/services/qdrant/search.d.ts +22 -0
- package/dist/services/qdrant/search.d.ts.map +1 -0
- package/dist/services/qdrant/search.js +75 -0
- package/dist/services/qdrant/search.js.map +1 -0
- package/dist/services/qdrant/service.d.ts +90 -0
- package/dist/services/qdrant/service.d.ts.map +1 -0
- package/dist/services/qdrant/service.js +95 -0
- package/dist/services/qdrant/service.js.map +1 -0
- package/dist/services/qdrant/snapshots.d.ts +19 -0
- package/dist/services/qdrant/snapshots.d.ts.map +1 -0
- package/dist/services/qdrant/snapshots.js +126 -0
- package/dist/services/qdrant/snapshots.js.map +1 -0
- package/dist/services/qdrant/types.d.ts +39 -0
- package/dist/services/qdrant/types.d.ts.map +1 -0
- package/dist/services/qdrant/types.js +2 -0
- package/dist/services/qdrant/types.js.map +1 -0
- package/dist/services/qdrant/utils.d.ts +20 -0
- package/dist/services/qdrant/utils.d.ts.map +1 -0
- package/dist/services/qdrant/utils.js +121 -0
- package/dist/services/qdrant/utils.js.map +1 -0
- package/dist/services/redis-cache.d.ts +43 -0
- package/dist/services/redis-cache.d.ts.map +1 -0
- package/dist/services/redis-cache.js +214 -0
- package/dist/services/redis-cache.js.map +1 -0
- package/dist/services/redis.d.ts +43 -0
- package/dist/services/redis.d.ts.map +1 -0
- package/dist/services/redis.js +234 -0
- package/dist/services/redis.js.map +1 -0
- package/dist/services/stats/bonuses.d.ts +28 -0
- package/dist/services/stats/bonuses.d.ts.map +1 -0
- package/dist/services/stats/bonuses.js +96 -0
- package/dist/services/stats/bonuses.js.map +1 -0
- package/dist/services/stats/healer.d.ts +6 -0
- package/dist/services/stats/healer.d.ts.map +1 -0
- package/dist/services/stats/healer.js +24 -0
- package/dist/services/stats/healer.js.map +1 -0
- package/dist/services/stats/model-stats.d.ts +53 -0
- package/dist/services/stats/model-stats.d.ts.map +1 -0
- package/dist/services/stats/model-stats.js +238 -0
- package/dist/services/stats/model-stats.js.map +1 -0
- package/dist/services/stats/protocol.d.ts +11 -0
- package/dist/services/stats/protocol.d.ts.map +1 -0
- package/dist/services/stats/protocol.js +55 -0
- package/dist/services/stats/protocol.js.map +1 -0
- package/dist/services/stats/scoring.d.ts +19 -0
- package/dist/services/stats/scoring.d.ts.map +1 -0
- package/dist/services/stats/scoring.js +102 -0
- package/dist/services/stats/scoring.js.map +1 -0
- package/dist/services/stats/types.d.ts +39 -0
- package/dist/services/stats/types.d.ts.map +1 -0
- package/dist/services/stats/types.js +8 -0
- package/dist/services/stats/types.js.map +1 -0
- package/dist/tools/kairos_attest.d.ts +7 -0
- package/dist/tools/kairos_attest.d.ts.map +1 -0
- package/dist/tools/kairos_attest.js +179 -0
- package/dist/tools/kairos_attest.js.map +1 -0
- package/dist/tools/kairos_begin.d.ts +9 -0
- package/dist/tools/kairos_begin.d.ts.map +1 -0
- package/dist/tools/kairos_begin.js +149 -0
- package/dist/tools/kairos_begin.js.map +1 -0
- package/dist/tools/kairos_begin_schema.d.ts +48 -0
- package/dist/tools/kairos_begin_schema.d.ts.map +1 -0
- package/dist/tools/kairos_begin_schema.js +48 -0
- package/dist/tools/kairos_begin_schema.js.map +1 -0
- package/dist/tools/kairos_delete.d.ts +2 -0
- package/dist/tools/kairos_delete.d.ts.map +1 -0
- package/dist/tools/kairos_delete.js +113 -0
- package/dist/tools/kairos_delete.js.map +1 -0
- package/dist/tools/kairos_dump.d.ts +14 -0
- package/dist/tools/kairos_dump.d.ts.map +1 -0
- package/dist/tools/kairos_dump.js +148 -0
- package/dist/tools/kairos_dump.js.map +1 -0
- package/dist/tools/kairos_mint.d.ts +7 -0
- package/dist/tools/kairos_mint.d.ts.map +1 -0
- package/dist/tools/kairos_mint.js +233 -0
- package/dist/tools/kairos_mint.js.map +1 -0
- package/dist/tools/kairos_next-pow-helpers.d.ts +57 -0
- package/dist/tools/kairos_next-pow-helpers.d.ts.map +1 -0
- package/dist/tools/kairos_next-pow-helpers.js +269 -0
- package/dist/tools/kairos_next-pow-helpers.js.map +1 -0
- package/dist/tools/kairos_next-previous-step.d.ts +27 -0
- package/dist/tools/kairos_next-previous-step.d.ts.map +1 -0
- package/dist/tools/kairos_next-previous-step.js +85 -0
- package/dist/tools/kairos_next-previous-step.js.map +1 -0
- package/dist/tools/kairos_next.d.ts +12 -0
- package/dist/tools/kairos_next.d.ts.map +1 -0
- package/dist/tools/kairos_next.js +262 -0
- package/dist/tools/kairos_next.js.map +1 -0
- package/dist/tools/kairos_next_schema.d.ts +80 -0
- package/dist/tools/kairos_next_schema.d.ts.map +1 -0
- package/dist/tools/kairos_next_schema.js +82 -0
- package/dist/tools/kairos_next_schema.js.map +1 -0
- package/dist/tools/kairos_search.d.ts +15 -0
- package/dist/tools/kairos_search.d.ts.map +1 -0
- package/dist/tools/kairos_search.js +262 -0
- package/dist/tools/kairos_search.js.map +1 -0
- package/dist/tools/kairos_spaces.d.ts +10 -0
- package/dist/tools/kairos_spaces.d.ts.map +1 -0
- package/dist/tools/kairos_spaces.js +129 -0
- package/dist/tools/kairos_spaces.js.map +1 -0
- package/dist/tools/kairos_update.d.ts +2 -0
- package/dist/tools/kairos_update.d.ts.map +1 -0
- package/dist/tools/kairos_update.js +158 -0
- package/dist/tools/kairos_update.js.map +1 -0
- package/dist/types/index.d.ts +60 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +21 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/memory.d.ts +38 -0
- package/dist/types/memory.d.ts.map +1 -0
- package/dist/types/memory.js +2 -0
- package/dist/types/memory.js.map +1 -0
- package/dist/utils/build-version.d.ts +15 -0
- package/dist/utils/build-version.d.ts.map +1 -0
- package/dist/utils/build-version.js +46 -0
- package/dist/utils/build-version.js.map +1 -0
- package/dist/utils/global-error-handlers.d.ts +7 -0
- package/dist/utils/global-error-handlers.d.ts.map +1 -0
- package/dist/utils/global-error-handlers.js +61 -0
- package/dist/utils/global-error-handlers.js.map +1 -0
- package/dist/utils/log-core.d.ts +11 -0
- package/dist/utils/log-core.d.ts.map +1 -0
- package/dist/utils/log-core.js +78 -0
- package/dist/utils/log-core.js.map +1 -0
- package/dist/utils/logger.d.ts +22 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +63 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/memory-body.d.ts +6 -0
- package/dist/utils/memory-body.d.ts.map +1 -0
- package/dist/utils/memory-body.js +21 -0
- package/dist/utils/memory-body.js.map +1 -0
- package/dist/utils/memory-store-utils.d.ts +14 -0
- package/dist/utils/memory-store-utils.d.ts.map +1 -0
- package/dist/utils/memory-store-utils.js +83 -0
- package/dist/utils/memory-store-utils.js.map +1 -0
- package/dist/utils/qdrant-collection-utils.d.ts +11 -0
- package/dist/utils/qdrant-collection-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-collection-utils.js +62 -0
- package/dist/utils/qdrant-collection-utils.js.map +1 -0
- package/dist/utils/qdrant-query-utils.d.ts +6 -0
- package/dist/utils/qdrant-query-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-query-utils.js +23 -0
- package/dist/utils/qdrant-query-utils.js.map +1 -0
- package/dist/utils/qdrant-utils.d.ts +5 -0
- package/dist/utils/qdrant-utils.d.ts.map +1 -0
- package/dist/utils/qdrant-utils.js +5 -0
- package/dist/utils/qdrant-utils.js.map +1 -0
- package/dist/utils/qdrant-vector-management.d.ts +25 -0
- package/dist/utils/qdrant-vector-management.d.ts.map +1 -0
- package/dist/utils/qdrant-vector-management.js +284 -0
- package/dist/utils/qdrant-vector-management.js.map +1 -0
- package/dist/utils/qdrant-vector-types.d.ts +35 -0
- package/dist/utils/qdrant-vector-types.d.ts.map +1 -0
- package/dist/utils/qdrant-vector-types.js +42 -0
- package/dist/utils/qdrant-vector-types.js.map +1 -0
- package/dist/utils/space-display.d.ts +11 -0
- package/dist/utils/space-display.d.ts.map +1 -0
- package/dist/utils/space-display.js +25 -0
- package/dist/utils/space-display.js.map +1 -0
- package/dist/utils/space-filter.d.ts +15 -0
- package/dist/utils/space-filter.d.ts.map +1 -0
- package/dist/utils/space-filter.js +18 -0
- package/dist/utils/space-filter.js.map +1 -0
- package/dist/utils/structured-logger.d.ts +41 -0
- package/dist/utils/structured-logger.d.ts.map +1 -0
- package/dist/utils/structured-logger.js +133 -0
- package/dist/utils/structured-logger.js.map +1 -0
- package/dist/utils/tenant-context.d.ts +67 -0
- package/dist/utils/tenant-context.d.ts.map +1 -0
- package/dist/utils/tenant-context.js +154 -0
- package/dist/utils/tenant-context.js.map +1 -0
- package/dist/utils/uri-builder.d.ts +37 -0
- package/dist/utils/uri-builder.d.ts.map +1 -0
- package/dist/utils/uri-builder.js +60 -0
- package/dist/utils/uri-builder.js.map +1 -0
- package/package.json +133 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-mcp-handler.js","sourceRoot":"","sources":["../../src/http/http-mcp-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
/**
|
|
3
|
+
* HTTP metrics middleware for Prometheus
|
|
4
|
+
* Tracks requests, response times, payload sizes, and active connections
|
|
5
|
+
*/
|
|
6
|
+
export declare function httpMetricsMiddleware(req: express.Request, res: express.Response, next: express.NextFunction): void;
|
|
7
|
+
//# sourceMappingURL=http-metrics-middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-metrics-middleware.d.ts","sourceRoot":"","sources":["../../src/http/http-metrics-middleware.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAU9B;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,QAwD5G"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { httpRequests, httpRequestDuration, httpRequestSize, httpResponseSize, httpActiveConnections } from '../services/metrics/http-metrics.js';
|
|
2
|
+
import { getTenantId } from '../utils/tenant-context.js';
|
|
3
|
+
/**
|
|
4
|
+
* HTTP metrics middleware for Prometheus
|
|
5
|
+
* Tracks requests, response times, payload sizes, and active connections
|
|
6
|
+
*/
|
|
7
|
+
export function httpMetricsMiddleware(req, res, next) {
|
|
8
|
+
const tenantId = getTenantId(req);
|
|
9
|
+
const method = req.method;
|
|
10
|
+
const route = req.route?.path || req.path;
|
|
11
|
+
// Track request size
|
|
12
|
+
const requestSize = req.headers['content-length'] ? parseInt(req.headers['content-length'], 10) : 0;
|
|
13
|
+
if (requestSize > 0) {
|
|
14
|
+
httpRequestSize.observe({ method, route, tenant_id: tenantId }, requestSize);
|
|
15
|
+
}
|
|
16
|
+
// Increment active connections
|
|
17
|
+
httpActiveConnections.inc({ tenant_id: tenantId });
|
|
18
|
+
// Start duration timer
|
|
19
|
+
const timer = httpRequestDuration.startTimer({
|
|
20
|
+
method,
|
|
21
|
+
route,
|
|
22
|
+
tenant_id: tenantId
|
|
23
|
+
});
|
|
24
|
+
// Track response size
|
|
25
|
+
const originalSend = res.send;
|
|
26
|
+
res.send = function (body) {
|
|
27
|
+
const responseSize = typeof body === 'string' ? Buffer.byteLength(body) : JSON.stringify(body).length;
|
|
28
|
+
httpResponseSize.observe({
|
|
29
|
+
method,
|
|
30
|
+
route,
|
|
31
|
+
status: res.statusCode.toString(),
|
|
32
|
+
tenant_id: tenantId
|
|
33
|
+
}, responseSize);
|
|
34
|
+
return originalSend.call(this, body);
|
|
35
|
+
};
|
|
36
|
+
res.on('finish', () => {
|
|
37
|
+
// Track request
|
|
38
|
+
httpRequests.inc({
|
|
39
|
+
method,
|
|
40
|
+
route,
|
|
41
|
+
status: res.statusCode.toString(),
|
|
42
|
+
tenant_id: tenantId
|
|
43
|
+
});
|
|
44
|
+
// End duration timer
|
|
45
|
+
timer({
|
|
46
|
+
method,
|
|
47
|
+
route,
|
|
48
|
+
status: res.statusCode.toString(),
|
|
49
|
+
tenant_id: tenantId
|
|
50
|
+
});
|
|
51
|
+
// Decrement active connections
|
|
52
|
+
httpActiveConnections.dec({ tenant_id: tenantId });
|
|
53
|
+
});
|
|
54
|
+
next();
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=http-metrics-middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-metrics-middleware.js","sourceRoot":"","sources":["../../src/http/http-metrics-middleware.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAoB,EAAE,GAAqB,EAAE,IAA0B;IAC3G,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC;IAE1C,qBAAqB;IACrB,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpG,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED,+BAA+B;IAC/B,qBAAqB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnD,uBAAuB;IACvB,MAAM,KAAK,GAAG,mBAAmB,CAAC,UAAU,CAAC;QAC3C,MAAM;QACN,KAAK;QACL,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;IAEH,sBAAsB;IACtB,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC;IAC9B,GAAG,CAAC,IAAI,GAAG,UAAS,IAAS;QAC3B,MAAM,YAAY,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;QACtG,gBAAgB,CAAC,OAAO,CAAC;YACvB,MAAM;YACN,KAAK;YACL,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE;YACjC,SAAS,EAAE,QAAQ;SACpB,EAAE,YAAY,CAAC,CAAC;QACjB,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC,CAAC;IAEF,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACpB,gBAAgB;QAChB,YAAY,CAAC,GAAG,CAAC;YACf,MAAM;YACN,KAAK;YACL,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE;YACjC,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QAEH,qBAAqB;QACrB,KAAK,CAAC;YACJ,MAAM;YACN,KAAK;YACL,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE;YACjC,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QAEH,+BAA+B;QAC/B,qBAAqB,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,IAAI,EAAE,CAAC;AACT,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
declare global {
|
|
3
|
+
var _mcpRequestContext: any;
|
|
4
|
+
var _mcpTransport: any;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Configure Express application with middleware
|
|
8
|
+
* @param app Express application instance
|
|
9
|
+
*/
|
|
10
|
+
export declare function configureMiddleware(app: express.Express): void;
|
|
11
|
+
//# sourceMappingURL=http-server-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server-config.d.ts","sourceRoot":"","sources":["../../src/http/http-server-config.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAK9B,OAAO,CAAC,MAAM,CAAC;IACX,IAAI,kBAAkB,EAAE,GAAG,CAAC;IAC5B,IAAI,aAAa,EAAE,GAAG,CAAC;CAC1B;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,QAMvD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
import { httpLogger } from '../utils/structured-logger.js';
|
|
3
|
+
import { httpMetricsMiddleware } from './http-metrics-middleware.js';
|
|
4
|
+
/**
|
|
5
|
+
* Configure Express application with middleware
|
|
6
|
+
* @param app Express application instance
|
|
7
|
+
*/
|
|
8
|
+
export function configureMiddleware(app) {
|
|
9
|
+
// Structured HTTP access logging middleware
|
|
10
|
+
app.use(httpLogger);
|
|
11
|
+
// HTTP metrics middleware for Prometheus
|
|
12
|
+
app.use(httpMetricsMiddleware);
|
|
13
|
+
app.use(express.json());
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=http-server-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server-config.js","sourceRoot":"","sources":["../../src/http/http-server-config.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAQrE;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAoB;IACpD,4CAA4C;IAC5C,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACpB,yCAAyC;IACzC,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC/B,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
/**
|
|
3
|
+
* Start HTTP server with error handling
|
|
4
|
+
* @param app Express application instance
|
|
5
|
+
* @param port Port to listen on
|
|
6
|
+
* @returns HTTP server instance
|
|
7
|
+
*/
|
|
8
|
+
export declare function startHttpServerWithErrorHandling(app: express.Express, port: number): import("node:http").Server<typeof import("node:http").IncomingMessage, typeof import("node:http").ServerResponse>;
|
|
9
|
+
//# sourceMappingURL=http-server-startup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server-startup.d.ts","sourceRoot":"","sources":["../../src/http/http-server-startup.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,qHAkBlF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { structuredLogger } from '../utils/structured-logger.js';
|
|
2
|
+
/**
|
|
3
|
+
* Start HTTP server with error handling
|
|
4
|
+
* @param app Express application instance
|
|
5
|
+
* @param port Port to listen on
|
|
6
|
+
* @returns HTTP server instance
|
|
7
|
+
*/
|
|
8
|
+
export function startHttpServerWithErrorHandling(app, port) {
|
|
9
|
+
const httpServer = app.listen(port, '0.0.0.0', () => {
|
|
10
|
+
structuredLogger.success('HTTP server', 'listening on port ' + port);
|
|
11
|
+
structuredLogger.info('Health check: http://localhost:' + port + '/health');
|
|
12
|
+
structuredLogger.info('MCP endpoint: http://localhost:' + port + '/mcp');
|
|
13
|
+
});
|
|
14
|
+
httpServer.on('error', (error) => {
|
|
15
|
+
if (error.code === 'EADDRINUSE') {
|
|
16
|
+
structuredLogger.error(`Port ${port} is already in use. Please choose a different port.`);
|
|
17
|
+
process.exit(1);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
structuredLogger.error('HTTP server error:', error.message);
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
return httpServer;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=http-server-startup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server-startup.js","sourceRoot":"","sources":["../../src/http/http-server-startup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGjE;;;;;GAKG;AACH,MAAM,UAAU,gCAAgC,CAAC,GAAoB,EAAE,IAAY;IAC/E,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE;QAChD,gBAAgB,CAAC,OAAO,CAAC,aAAa,EAAE,oBAAoB,GAAG,IAAI,CAAC,CAAC;QACrE,gBAAgB,CAAC,IAAI,CAAC,iCAAiC,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;QAC5E,gBAAgB,CAAC,IAAI,CAAC,iCAAiC,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;QACpD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC9B,gBAAgB,CAAC,KAAK,CAAC,QAAQ,IAAI,qDAAqD,CAAC,CAAC;YAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACJ,gBAAgB,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { MemoryQdrantStore } from '../services/memory/store.js';
|
|
2
|
+
export declare function startHttpServer(port: number, server: any, memoryStore: MemoryQdrantStore): import("node:http").Server<typeof import("node:http").IncomingMessage, typeof import("node:http").ServerResponse>;
|
|
3
|
+
export declare function startServer(server: any, memoryStore: MemoryQdrantStore): Promise<void>;
|
|
4
|
+
//# sourceMappingURL=http-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../../src/http/http-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAgBhE,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,iBAAiB,qHAqBxF;AAED,wBAAsB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,iBAAiB,iBAQ5E"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
import { structuredLogger } from '../utils/structured-logger.js';
|
|
3
|
+
import { PORT } from '../config.js';
|
|
4
|
+
// Import modular components
|
|
5
|
+
import { configureMiddleware } from './http-server-config.js';
|
|
6
|
+
import { authMiddleware } from './http-auth-middleware.js';
|
|
7
|
+
import { setupAuthCallback } from './http-auth-callback.js';
|
|
8
|
+
import { setupHealthRoutes } from './http-health-routes.js';
|
|
9
|
+
import { setupWellKnown } from './http-well-known.js';
|
|
10
|
+
import { setupApiRoutes } from './http-api-routes.js';
|
|
11
|
+
import { setupMcpRoutes } from './http-mcp-handler.js';
|
|
12
|
+
import { setupErrorHandlers } from './http-error-handlers.js';
|
|
13
|
+
import { startHttpServerWithErrorHandling } from './http-server-startup.js';
|
|
14
|
+
import { qdrantService } from '../services/qdrant/index.js';
|
|
15
|
+
export function startHttpServer(port, server, memoryStore) {
|
|
16
|
+
const app = express();
|
|
17
|
+
// Configure middleware
|
|
18
|
+
configureMiddleware(app);
|
|
19
|
+
setupAuthCallback(app);
|
|
20
|
+
// Well-known must be registered before auth middleware so RFC 9728 discovery
|
|
21
|
+
// is reachable without credentials (MCP clients call it before authenticating).
|
|
22
|
+
setupWellKnown(app);
|
|
23
|
+
app.use(authMiddleware);
|
|
24
|
+
// Protected route handlers (require auth when AUTH_ENABLED)
|
|
25
|
+
setupHealthRoutes(app, memoryStore);
|
|
26
|
+
setupApiRoutes(app, memoryStore, { qdrantService });
|
|
27
|
+
setupMcpRoutes(app, server);
|
|
28
|
+
setupErrorHandlers(app);
|
|
29
|
+
// Start server with error handling
|
|
30
|
+
return startHttpServerWithErrorHandling(app, port);
|
|
31
|
+
}
|
|
32
|
+
export async function startServer(server, memoryStore) {
|
|
33
|
+
const httpPort = PORT;
|
|
34
|
+
structuredLogger.success('🚀 KAIROS MCP Server starting', 'HTTP transport only');
|
|
35
|
+
structuredLogger.info('HTTP transport: enabled');
|
|
36
|
+
structuredLogger.info('Port: ' + httpPort);
|
|
37
|
+
startHttpServer(httpPort, server, memoryStore);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=http-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-server.js","sourceRoot":"","sources":["../../src/http/http-server.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,4BAA4B;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE5D,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,MAAW,EAAE,WAA8B;IACrF,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,uBAAuB;IACvB,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACzB,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEvB,6EAA6E;IAC7E,gFAAgF;IAChF,cAAc,CAAC,GAAG,CAAC,CAAC;IAEpB,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAExB,4DAA4D;IAC5D,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACpC,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IACpD,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC5B,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAExB,mCAAmC;IACnC,OAAO,gCAAgC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAW,EAAE,WAA8B;IACzE,MAAM,QAAQ,GAAG,IAAI,CAAC;IAEtB,gBAAgB,CAAC,OAAO,CAAC,+BAA+B,EAAE,qBAAqB,CAAC,CAAC;IACjF,gBAAgB,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACjD,gBAAgB,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAE3C,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OAuth 2.0 Protected Resource Metadata (RFC 9728) for MCP authorization discovery.
|
|
3
|
+
*
|
|
4
|
+
* Serves metadata at:
|
|
5
|
+
* GET /.well-known/oauth-protected-resource (root — fallback)
|
|
6
|
+
* GET /.well-known/oauth-protected-resource/mcp (path-specific — tried first by spec-compliant clients)
|
|
7
|
+
*
|
|
8
|
+
* MCP clients use this to discover the authorization server and initiate OAuth 2.1 flows.
|
|
9
|
+
* See: https://modelcontextprotocol.io/specification/2025-11-25/basic/authorization
|
|
10
|
+
*/
|
|
11
|
+
import type { Express } from 'express';
|
|
12
|
+
export declare function setupWellKnown(app: Express): void;
|
|
13
|
+
//# sourceMappingURL=http-well-known.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-well-known.d.ts","sourceRoot":"","sources":["../../src/http/http-well-known.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,SAAS,CAAC;AAyB1D,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAajD"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AUTH_CALLBACK_BASE_URL, KEYCLOAK_URL, KEYCLOAK_REALM } from '../config.js';
|
|
2
|
+
import { structuredLogger } from '../utils/structured-logger.js';
|
|
3
|
+
function buildProtectedResourceMetadata() {
|
|
4
|
+
const base = AUTH_CALLBACK_BASE_URL.replace(/\/$/, '');
|
|
5
|
+
const resource = `${base}/mcp`;
|
|
6
|
+
const issuer = KEYCLOAK_URL
|
|
7
|
+
? `${KEYCLOAK_URL.replace(/\/$/, '')}/realms/${KEYCLOAK_REALM}`
|
|
8
|
+
: '';
|
|
9
|
+
const metadata = {
|
|
10
|
+
resource,
|
|
11
|
+
authorization_servers: issuer ? [issuer] : [],
|
|
12
|
+
scopes_supported: ['openid'],
|
|
13
|
+
bearer_methods_supported: ['header'],
|
|
14
|
+
resource_name: 'KAIROS MCP'
|
|
15
|
+
};
|
|
16
|
+
// RFC 9728 allows additional parameters. MCP clients that support it should add these
|
|
17
|
+
// to the authorization request (e.g. prompt=login) to avoid already_logged_in when
|
|
18
|
+
// the user is logged in elsewhere, without disabling SSO for normal browser use.
|
|
19
|
+
metadata['authorization_request_parameters'] = { prompt: 'login' };
|
|
20
|
+
return metadata;
|
|
21
|
+
}
|
|
22
|
+
export function setupWellKnown(app) {
|
|
23
|
+
if (!AUTH_CALLBACK_BASE_URL) {
|
|
24
|
+
structuredLogger.warn('[well-known] AUTH_CALLBACK_BASE_URL is empty — Protected Resource Metadata will use relative URIs (non-compliant with RFC 9728). Set AUTH_CALLBACK_BASE_URL for production.');
|
|
25
|
+
}
|
|
26
|
+
const handler = (_req, res) => {
|
|
27
|
+
res.json(buildProtectedResourceMetadata());
|
|
28
|
+
};
|
|
29
|
+
app.get('/.well-known/oauth-protected-resource', handler);
|
|
30
|
+
app.get('/.well-known/oauth-protected-resource/mcp', handler);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=http-well-known.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-well-known.js","sourceRoot":"","sources":["../../src/http/http-well-known.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjE,SAAS,8BAA8B;IACrC,MAAM,IAAI,GAAG,sBAAsB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,GAAG,IAAI,MAAM,CAAC;IAC/B,MAAM,MAAM,GAAG,YAAY;QACzB,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,cAAc,EAAE;QAC/D,CAAC,CAAC,EAAE,CAAC;IAEP,MAAM,QAAQ,GAA4B;QACxC,QAAQ;QACR,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;QAC7C,gBAAgB,EAAE,CAAC,QAAQ,CAAC;QAC5B,wBAAwB,EAAE,CAAC,QAAQ,CAAC;QACpC,aAAa,EAAE,YAAY;KAC5B,CAAC;IACF,sFAAsF;IACtF,mFAAmF;IACnF,iFAAiF;IACjF,QAAQ,CAAC,kCAAkC,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACnE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5B,gBAAgB,CAAC,IAAI,CACnB,6KAA6K,CAC9K,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC/C,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC;IAEF,GAAG,CAAC,GAAG,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,CAAC,2CAA2C,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,OAAO,sCAAsC,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KAIROS MCP Server
|
|
3
|
+
*
|
|
4
|
+
* Supporting HTTP transport only (STDIO removed for simplicity)
|
|
5
|
+
*/
|
|
6
|
+
import { structuredLogger } from './utils/structured-logger.js';
|
|
7
|
+
import { installGlobalErrorHandlers } from './utils/global-error-handlers.js';
|
|
8
|
+
import { logger } from './utils/logger.js';
|
|
9
|
+
import { MemoryQdrantStore } from './services/memory/store.js';
|
|
10
|
+
import { createServer } from './server.js';
|
|
11
|
+
import { startServer } from './http/http-server.js';
|
|
12
|
+
import { injectMemResourcesAtBoot } from './resources/mem-resources-boot.js';
|
|
13
|
+
import { startMetricsServer } from './metrics-server.js';
|
|
14
|
+
import { PORT, METRICS_PORT, QDRANT_SNAPSHOT_ON_START, QDRANT_SNAPSHOT_DIR } from './config.js';
|
|
15
|
+
import { qdrantService } from './services/qdrant/index.js';
|
|
16
|
+
import { triggerQdrantSnapshot } from './services/qdrant/snapshots.js';
|
|
17
|
+
// Import system metrics to ensure they're initialized
|
|
18
|
+
import './services/metrics/system-metrics.js';
|
|
19
|
+
/**
|
|
20
|
+
* Wait for Qdrant to be available with retries
|
|
21
|
+
* Uses shorter intervals for faster detection when Qdrant becomes available quickly
|
|
22
|
+
*/
|
|
23
|
+
async function waitForQdrant(memoryStore, maxRetries = 30, intervalMs = 1000) {
|
|
24
|
+
structuredLogger.info('Waiting for Qdrant to be available...');
|
|
25
|
+
for (let attempt = 1; attempt <= maxRetries; attempt++) {
|
|
26
|
+
try {
|
|
27
|
+
const isHealthy = await memoryStore.checkHealth(5000); // 5 second timeout per check
|
|
28
|
+
if (isHealthy) {
|
|
29
|
+
structuredLogger.info(`Qdrant is available after ${attempt} attempt(s)`);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
catch (err) {
|
|
34
|
+
const errorMessage = err instanceof Error ? err.message : String(err);
|
|
35
|
+
structuredLogger.debug(`Qdrant health check error on attempt ${attempt}: ${errorMessage}`);
|
|
36
|
+
// Health check failed, will retry
|
|
37
|
+
}
|
|
38
|
+
if (attempt < maxRetries) {
|
|
39
|
+
structuredLogger.info(`Qdrant not ready yet (attempt ${attempt}/${maxRetries}), retrying in ${intervalMs}ms...`);
|
|
40
|
+
await new Promise(resolve => setTimeout(resolve, intervalMs));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
throw new Error(`Qdrant did not become available after ${maxRetries} attempts (${maxRetries * intervalMs / 1000}s)`);
|
|
44
|
+
}
|
|
45
|
+
async function main() {
|
|
46
|
+
try {
|
|
47
|
+
// Install once at startup to capture any background errors/warnings
|
|
48
|
+
installGlobalErrorHandlers();
|
|
49
|
+
const memoryStore = new MemoryQdrantStore();
|
|
50
|
+
// Wait for Qdrant to be available before initializing
|
|
51
|
+
await waitForQdrant(memoryStore);
|
|
52
|
+
structuredLogger.info('Initializing Qdrant memory store...');
|
|
53
|
+
await memoryStore.init();
|
|
54
|
+
structuredLogger.info('Memory store ready');
|
|
55
|
+
if (QDRANT_SNAPSHOT_ON_START) {
|
|
56
|
+
const snapshotResult = await triggerQdrantSnapshot(qdrantService, {
|
|
57
|
+
enabled: true,
|
|
58
|
+
directory: QDRANT_SNAPSHOT_DIR,
|
|
59
|
+
reason: 'startup'
|
|
60
|
+
});
|
|
61
|
+
if (!snapshotResult.success) {
|
|
62
|
+
structuredLogger.warn(`Startup snapshot failed: ${snapshotResult.message || 'unknown error'}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
structuredLogger.info('Startup snapshot disabled (QDRANT_SNAPSHOT_ON_START=false)');
|
|
67
|
+
}
|
|
68
|
+
// Inject mem resources from embedded-mcp-resources into Qdrant at boot
|
|
69
|
+
// Use --force flag to allow override in new versions
|
|
70
|
+
await injectMemResourcesAtBoot(memoryStore, { force: true });
|
|
71
|
+
// Start dedicated metrics server on separate port
|
|
72
|
+
// This runs independently from the main application server
|
|
73
|
+
startMetricsServer();
|
|
74
|
+
structuredLogger.info(`Application server: ${PORT}`);
|
|
75
|
+
structuredLogger.info(`Metrics server: ${METRICS_PORT} (isolated)`);
|
|
76
|
+
const server = createServer(memoryStore);
|
|
77
|
+
await startServer(server, memoryStore);
|
|
78
|
+
}
|
|
79
|
+
catch (err) {
|
|
80
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
81
|
+
// Prefer structured HTTP logger for fatal errors
|
|
82
|
+
try {
|
|
83
|
+
structuredLogger.error('Fatal error during KAIROS MCP startup', error);
|
|
84
|
+
}
|
|
85
|
+
catch {
|
|
86
|
+
// Ignore logging failures from structured logger
|
|
87
|
+
}
|
|
88
|
+
// Fallback to generic logger (stdio-safe)
|
|
89
|
+
try {
|
|
90
|
+
logger.error('Fatal error during KAIROS MCP startup', error);
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
// Ignore logging failures from generic logger
|
|
94
|
+
}
|
|
95
|
+
// Ensure non-zero exit so supervisors can detect failure
|
|
96
|
+
process.exitCode = 1;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
await main();
|
|
100
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import './services/metrics/system-metrics.js';
|
|
2
|
+
/**
|
|
3
|
+
* Start dedicated metrics server on separate port.
|
|
4
|
+
*
|
|
5
|
+
* This server ONLY exposes /metrics endpoint for Prometheus scraping.
|
|
6
|
+
*
|
|
7
|
+
* Production benefits:
|
|
8
|
+
* - Complete isolation from application traffic
|
|
9
|
+
* - Can be restricted to internal networks only
|
|
10
|
+
* - No impact on application performance
|
|
11
|
+
* - Standard Prometheus deployment pattern
|
|
12
|
+
*/
|
|
13
|
+
export declare function startMetricsServer(port?: number): void;
|
|
14
|
+
//# sourceMappingURL=metrics-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics-server.d.ts","sourceRoot":"","sources":["../src/metrics-server.ts"],"names":[],"mappings":"AAKA,OAAO,sCAAsC,CAAC;AAE9C;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,GAAE,MAAqB,GAAG,IAAI,CAwBpE"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import express from 'express';
|
|
2
|
+
import { register } from './services/metrics/registry.js';
|
|
3
|
+
import { structuredLogger } from './utils/structured-logger.js';
|
|
4
|
+
import { METRICS_PORT } from './config.js';
|
|
5
|
+
// Import system metrics to ensure they're initialized
|
|
6
|
+
import './services/metrics/system-metrics.js';
|
|
7
|
+
/**
|
|
8
|
+
* Start dedicated metrics server on separate port.
|
|
9
|
+
*
|
|
10
|
+
* This server ONLY exposes /metrics endpoint for Prometheus scraping.
|
|
11
|
+
*
|
|
12
|
+
* Production benefits:
|
|
13
|
+
* - Complete isolation from application traffic
|
|
14
|
+
* - Can be restricted to internal networks only
|
|
15
|
+
* - No impact on application performance
|
|
16
|
+
* - Standard Prometheus deployment pattern
|
|
17
|
+
*/
|
|
18
|
+
export function startMetricsServer(port = METRICS_PORT) {
|
|
19
|
+
const app = express();
|
|
20
|
+
// ONLY route: /metrics endpoint
|
|
21
|
+
app.get('/metrics', async (req, res) => {
|
|
22
|
+
try {
|
|
23
|
+
res.set('Content-Type', register.contentType);
|
|
24
|
+
const metrics = await register.metrics();
|
|
25
|
+
res.end(metrics);
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
structuredLogger.error('Error generating metrics', error);
|
|
29
|
+
res.status(500).end('Error generating metrics');
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
// Health check for metrics server (optional but recommended)
|
|
33
|
+
app.get('/health', (req, res) => {
|
|
34
|
+
res.status(200).json({ status: 'ok', service: 'metrics' });
|
|
35
|
+
});
|
|
36
|
+
app.listen(port, () => {
|
|
37
|
+
structuredLogger.info(`Metrics server listening on port ${port}`);
|
|
38
|
+
structuredLogger.info(`Metrics endpoint: http://localhost:${port}/metrics`);
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=metrics-server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics-server.js","sourceRoot":"","sources":["../src/metrics-server.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,sDAAsD;AACtD,OAAO,sCAAsC,CAAC;AAE9C;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe,YAAY;IAC5D,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAEtB,gCAAgC;IAChC,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACrC,IAAI,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;YACzC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gBAAgB,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAC1D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,6DAA6D;IAC7D,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC9B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QACpB,gBAAgB,CAAC,IAAI,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;QAClE,gBAAgB,CAAC,IAAI,CAAC,sCAAsC,IAAI,UAAU,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-resources.d.ts","sourceRoot":"","sources":["../../src/resources/docs-resources.ts"],"names":[],"mappings":"AASA,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,GAAG,QAqDhD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { getResource, getResources } from './embedded-mcp-resources.js';
|
|
2
|
+
import { logger } from '../utils/logger.js';
|
|
3
|
+
function mdOrFallback(uri, text, notFound = 'Document not found') {
|
|
4
|
+
return {
|
|
5
|
+
contents: [{ uri: uri.href, mimeType: 'text/markdown', text: text || `# ${notFound}` }]
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
export function registerDocsResources(server) {
|
|
9
|
+
logger.info('Registering docs resources dynamically from embedded resources (excluding templates)');
|
|
10
|
+
const resources = getResources();
|
|
11
|
+
const toTitle = (s) => s.replace(/_/g, ' ').replace(/\b\w/g, (l) => l.toUpperCase());
|
|
12
|
+
// Handle both flat resources (directly in resources/) and nested resources (in subdirectories)
|
|
13
|
+
for (const [key, value] of Object.entries(resources)) {
|
|
14
|
+
if (typeof value === 'string') {
|
|
15
|
+
// Flat resource: treat as if in 'doc' subdirectory
|
|
16
|
+
const subdir = 'doc';
|
|
17
|
+
const filename = key;
|
|
18
|
+
const prefix = `kairos://${subdir}`;
|
|
19
|
+
const uri = `${prefix}/${filename}`;
|
|
20
|
+
const name = toTitle(filename);
|
|
21
|
+
const description = `Documentation for ${name}`;
|
|
22
|
+
server.registerResource(`${subdir}-${filename}`, uri, { name, description, mimeType: 'text/markdown' }, (uriObj) => {
|
|
23
|
+
const resourceContent = getResource(filename);
|
|
24
|
+
return mdOrFallback(uriObj, resourceContent);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
else if (typeof value === 'object' && value !== null) {
|
|
28
|
+
// Nested resource: subdirectory structure (doc, mem, etc.)
|
|
29
|
+
const subdir = key;
|
|
30
|
+
const prefix = `kairos://${subdir}`;
|
|
31
|
+
// Iterate through files in this subdirectory
|
|
32
|
+
for (const [filename, content] of Object.entries(value)) {
|
|
33
|
+
if (typeof content === 'string') {
|
|
34
|
+
const uri = `${prefix}/${filename}`;
|
|
35
|
+
const name = toTitle(filename);
|
|
36
|
+
const description = `Documentation for ${name}`;
|
|
37
|
+
server.registerResource(`${subdir}-${filename}`, uri, { name, description, mimeType: 'text/markdown' }, (uriObj) => {
|
|
38
|
+
const resourceContent = getResource(`${subdir}.${filename}`);
|
|
39
|
+
return mdOrFallback(uriObj, resourceContent);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
// Tools docs are not registered as resources to keep resources/list lean.
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=docs-resources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-resources.js","sourceRoot":"","sources":["../../src/resources/docs-resources.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AUTO-GENERATED FILE - DO NOT EDIT
|
|
3
|
+
*
|
|
4
|
+
* Generated by: scripts/embed-docs.ts
|
|
5
|
+
* Contains: MCP guide resources dynamically embedded at build time
|
|
6
|
+
* Structure reflects src/embed-docs/ directory structure
|
|
7
|
+
*
|
|
8
|
+
* To update: npm run build (or manually run ts-node scripts/embed-docs.ts)
|
|
9
|
+
*/
|
|
10
|
+
export declare const mcpResources: {
|
|
11
|
+
prompts: {
|
|
12
|
+
"contextual-prompt": string;
|
|
13
|
+
};
|
|
14
|
+
resources: {
|
|
15
|
+
"building-kairos-workflows": string;
|
|
16
|
+
};
|
|
17
|
+
templates: {
|
|
18
|
+
"kairos-memory": string;
|
|
19
|
+
};
|
|
20
|
+
tools: {
|
|
21
|
+
kairos_attest: string;
|
|
22
|
+
kairos_begin: string;
|
|
23
|
+
kairos_delete: string;
|
|
24
|
+
kairos_dump: string;
|
|
25
|
+
kairos_mint: string;
|
|
26
|
+
kairos_next: string;
|
|
27
|
+
kairos_search: string;
|
|
28
|
+
kairos_spaces: string;
|
|
29
|
+
kairos_update: string;
|
|
30
|
+
};
|
|
31
|
+
mem: {};
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Get prompts object
|
|
35
|
+
*/
|
|
36
|
+
export declare function getPrompts(): Record<string, any>;
|
|
37
|
+
/**
|
|
38
|
+
* Get resources object
|
|
39
|
+
*/
|
|
40
|
+
export declare function getResources(): Record<string, any>;
|
|
41
|
+
/**
|
|
42
|
+
* Get templates object
|
|
43
|
+
*/
|
|
44
|
+
export declare function getTemplates(): Record<string, any>;
|
|
45
|
+
/**
|
|
46
|
+
* Get tools object
|
|
47
|
+
*/
|
|
48
|
+
export declare function getTools(): Record<string, any>;
|
|
49
|
+
/**
|
|
50
|
+
* Get mem object
|
|
51
|
+
*/
|
|
52
|
+
export declare function getMem(): Record<string, any>;
|
|
53
|
+
/**
|
|
54
|
+
* Get a prompt by key (e.g. 'contextual-prompt')
|
|
55
|
+
*/
|
|
56
|
+
export declare function getPrompt(key: string): string | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* Get a resource by key (e.g. 'TEST', 'doc.TEST', 'mem.<uuid>')
|
|
59
|
+
*/
|
|
60
|
+
export declare function getResource(key: string): string | any | undefined;
|
|
61
|
+
/**
|
|
62
|
+
* Get a template by key (e.g. 'kairos-memory')
|
|
63
|
+
*/
|
|
64
|
+
export declare function getTemplate(key: string): string | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* Get a tool doc by key (e.g. 'kairos_begin')
|
|
67
|
+
*/
|
|
68
|
+
export declare function getToolDoc(key: string): string | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* Get all available resource categories and names
|
|
71
|
+
*/
|
|
72
|
+
export declare function listResourceKeys(): Record<string, string[]>;
|
|
73
|
+
//# sourceMappingURL=embedded-mcp-resources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embedded-mcp-resources.d.ts","sourceRoot":"","sources":["../../src/resources/embedded-mcp-resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;CAsBxB,CAAC;AAEF;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAEhD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAElD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAElD;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE9C;AAED;;GAEG;AACH,wBAAgB,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAE5C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,SAAS,CAYjE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG3D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAkB3D"}
|