sdl-mcp 0.11.1 → 0.11.3
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 +28 -17
- package/config/sdlmcp.config.example.json +25 -0
- package/config/sdlmcp.config.schema.json +165 -2
- package/dist/.tsbuildinfo +1 -1
- package/dist/agent/context-engine.d.ts +2 -0
- package/dist/agent/context-engine.d.ts.map +1 -1
- package/dist/agent/context-engine.js +367 -32
- package/dist/agent/context-engine.js.map +1 -1
- package/dist/agent/context-ranking.d.ts.map +1 -1
- package/dist/agent/context-ranking.js +17 -4
- package/dist/agent/context-ranking.js.map +1 -1
- package/dist/agent/context-seeding.d.ts +6 -4
- package/dist/agent/context-seeding.d.ts.map +1 -1
- package/dist/agent/context-seeding.js +291 -60
- package/dist/agent/context-seeding.js.map +1 -1
- package/dist/agent/executor.d.ts +18 -5
- package/dist/agent/executor.d.ts.map +1 -1
- package/dist/agent/executor.js +347 -42
- package/dist/agent/executor.js.map +1 -1
- package/dist/agent/identifier-extraction.d.ts.map +1 -1
- package/dist/agent/identifier-extraction.js +6 -1
- package/dist/agent/identifier-extraction.js.map +1 -1
- package/dist/agent/types.d.ts +13 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/cli/argParsing.d.ts.map +1 -1
- package/dist/cli/argParsing.js +9 -0
- package/dist/cli/argParsing.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +5 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +62 -26
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/tool-actions.d.ts +4 -2
- package/dist/cli/commands/tool-actions.d.ts.map +1 -1
- package/dist/cli/commands/tool-actions.js +424 -4
- package/dist/cli/commands/tool-actions.js.map +1 -1
- package/dist/cli/commands/tool-arg-parser.d.ts.map +1 -1
- package/dist/cli/commands/tool-arg-parser.js +4 -1
- package/dist/cli/commands/tool-arg-parser.js.map +1 -1
- package/dist/cli/commands/tool-dispatch.d.ts +3 -0
- package/dist/cli/commands/tool-dispatch.d.ts.map +1 -1
- package/dist/cli/commands/tool-dispatch.js +101 -15
- package/dist/cli/commands/tool-dispatch.js.map +1 -1
- package/dist/cli/commands/tool-output.js +3 -3
- package/dist/cli/commands/tool-output.js.map +1 -1
- package/dist/cli/index.js +7 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/transport/http.d.ts +10 -6
- package/dist/cli/transport/http.d.ts.map +1 -1
- package/dist/cli/transport/http.js +382 -187
- package/dist/cli/transport/http.js.map +1 -1
- package/dist/cli/types.d.ts +1 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/code-mode/action-catalog.d.ts +2 -2
- package/dist/code-mode/action-catalog.d.ts.map +1 -1
- package/dist/code-mode/action-catalog.js +189 -107
- package/dist/code-mode/action-catalog.js.map +1 -1
- package/dist/code-mode/descriptions.d.ts.map +1 -1
- package/dist/code-mode/descriptions.js +3 -1
- package/dist/code-mode/descriptions.js.map +1 -1
- package/dist/code-mode/index.d.ts +13 -0
- package/dist/code-mode/index.d.ts.map +1 -1
- package/dist/code-mode/index.js +181 -148
- package/dist/code-mode/index.js.map +1 -1
- package/dist/code-mode/manual-generator.d.ts.map +1 -1
- package/dist/code-mode/manual-generator.js +13 -4
- package/dist/code-mode/manual-generator.js.map +1 -1
- package/dist/code-mode/types.d.ts +3 -0
- package/dist/code-mode/types.d.ts.map +1 -1
- package/dist/code-mode/types.js +2 -0
- package/dist/code-mode/types.js.map +1 -1
- package/dist/code-mode/workflow-executor.d.ts.map +1 -1
- package/dist/code-mode/workflow-executor.js +30 -2
- package/dist/code-mode/workflow-executor.js.map +1 -1
- package/dist/code-mode/workflow-parser.d.ts +1 -0
- package/dist/code-mode/workflow-parser.d.ts.map +1 -1
- package/dist/code-mode/workflow-parser.js +3 -2
- package/dist/code-mode/workflow-parser.js.map +1 -1
- package/dist/code-mode/workflow-truncation.d.ts.map +1 -1
- package/dist/code-mode/workflow-truncation.js +21 -0
- package/dist/code-mode/workflow-truncation.js.map +1 -1
- package/dist/config/admin-api.d.ts +67 -0
- package/dist/config/admin-api.d.ts.map +1 -0
- package/dist/config/admin-api.js +762 -0
- package/dist/config/admin-api.js.map +1 -0
- package/dist/config/admin-metadata.d.ts +46 -0
- package/dist/config/admin-metadata.d.ts.map +1 -0
- package/dist/config/admin-metadata.js +131 -0
- package/dist/config/admin-metadata.js.map +1 -0
- package/dist/config/constants.d.ts +16 -0
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +17 -0
- package/dist/config/constants.js.map +1 -1
- package/dist/config/types.d.ts +178 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +78 -7
- package/dist/config/types.js.map +1 -1
- package/dist/db/ladybug-core.d.ts +12 -3
- package/dist/db/ladybug-core.d.ts.map +1 -1
- package/dist/db/ladybug-core.js +192 -25
- package/dist/db/ladybug-core.js.map +1 -1
- package/dist/db/ladybug-processes.d.ts +1 -0
- package/dist/db/ladybug-processes.d.ts.map +1 -1
- package/dist/db/ladybug-processes.js +17 -0
- package/dist/db/ladybug-processes.js.map +1 -1
- package/dist/db/ladybug-queries.d.ts +2 -0
- package/dist/db/ladybug-queries.d.ts.map +1 -1
- package/dist/db/ladybug-queries.js +3 -0
- package/dist/db/ladybug-queries.js.map +1 -1
- package/dist/db/ladybug-schema.d.ts +2 -1
- package/dist/db/ladybug-schema.d.ts.map +1 -1
- package/dist/db/ladybug-schema.js +75 -18
- package/dist/db/ladybug-schema.js.map +1 -1
- package/dist/db/ladybug-semantic.d.ts +75 -0
- package/dist/db/ladybug-semantic.d.ts.map +1 -0
- package/dist/db/ladybug-semantic.js +457 -0
- package/dist/db/ladybug-semantic.js.map +1 -0
- package/dist/db/ladybug.d.ts +11 -3
- package/dist/db/ladybug.d.ts.map +1 -1
- package/dist/db/ladybug.js +31 -40
- package/dist/db/ladybug.js.map +1 -1
- package/dist/db/migrations/index.d.ts.map +1 -1
- package/dist/db/migrations/index.js +2 -0
- package/dist/db/migrations/index.js.map +1 -1
- package/dist/db/migrations/m014-add-packed-stats.js +3 -15
- package/dist/db/migrations/m014-add-packed-stats.js.map +1 -1
- package/dist/db/migrations/m015-backfill-packed-stats.js +3 -15
- package/dist/db/migrations/m015-backfill-packed-stats.js.map +1 -1
- package/dist/db/migrations/m018-add-semantic-enrichment-tables.d.ts +5 -0
- package/dist/db/migrations/m018-add-semantic-enrichment-tables.d.ts.map +1 -0
- package/dist/db/migrations/m018-add-semantic-enrichment-tables.js +100 -0
- package/dist/db/migrations/m018-add-semantic-enrichment-tables.js.map +1 -0
- package/dist/db/wal-maintenance.d.ts +57 -0
- package/dist/db/wal-maintenance.d.ts.map +1 -0
- package/dist/db/wal-maintenance.js +170 -0
- package/dist/db/wal-maintenance.js.map +1 -0
- package/dist/gateway/descriptions.d.ts.map +1 -1
- package/dist/gateway/descriptions.js +5 -2
- package/dist/gateway/descriptions.js.map +1 -1
- package/dist/gateway/legacy.d.ts.map +1 -1
- package/dist/gateway/legacy.js +3 -1
- package/dist/gateway/legacy.js.map +1 -1
- package/dist/gateway/router.d.ts.map +1 -1
- package/dist/gateway/router.js +21 -2
- package/dist/gateway/router.js.map +1 -1
- package/dist/gateway/schemas.d.ts +85 -3
- package/dist/gateway/schemas.d.ts.map +1 -1
- package/dist/gateway/schemas.js +116 -1
- package/dist/gateway/schemas.js.map +1 -1
- package/dist/graph/overview.js +6 -6
- package/dist/graph/overview.js.map +1 -1
- package/dist/indexer/derived-refresh-queue.d.ts +4 -0
- package/dist/indexer/derived-refresh-queue.d.ts.map +1 -1
- package/dist/indexer/derived-refresh-queue.js +190 -17
- package/dist/indexer/derived-refresh-queue.js.map +1 -1
- package/dist/indexer/indexer.d.ts.map +1 -1
- package/dist/indexer/indexer.js +15 -2
- package/dist/indexer/indexer.js.map +1 -1
- package/dist/main.js +21 -5
- package/dist/main.js.map +1 -1
- package/dist/mcp/context-response-projection.d.ts +15 -4
- package/dist/mcp/context-response-projection.d.ts.map +1 -1
- package/dist/mcp/context-response-projection.js +157 -6
- package/dist/mcp/context-response-projection.js.map +1 -1
- package/dist/mcp/dispatch-limiter.d.ts +27 -1
- package/dist/mcp/dispatch-limiter.d.ts.map +1 -1
- package/dist/mcp/dispatch-limiter.js +95 -1
- package/dist/mcp/dispatch-limiter.js.map +1 -1
- package/dist/mcp/indexing-gate.d.ts +4 -3
- package/dist/mcp/indexing-gate.d.ts.map +1 -1
- package/dist/mcp/indexing-gate.js +4 -3
- package/dist/mcp/indexing-gate.js.map +1 -1
- package/dist/mcp/response-compression.d.ts +24 -0
- package/dist/mcp/response-compression.d.ts.map +1 -0
- package/dist/mcp/response-compression.js +71 -0
- package/dist/mcp/response-compression.js.map +1 -0
- package/dist/mcp/session-delta.d.ts +103 -0
- package/dist/mcp/session-delta.d.ts.map +1 -0
- package/dist/mcp/session-delta.js +398 -0
- package/dist/mcp/session-delta.js.map +1 -0
- package/dist/mcp/telemetry.d.ts +4 -0
- package/dist/mcp/telemetry.d.ts.map +1 -1
- package/dist/mcp/telemetry.js +105 -5
- package/dist/mcp/telemetry.js.map +1 -1
- package/dist/mcp/timing-diagnostics.d.ts +20 -0
- package/dist/mcp/timing-diagnostics.d.ts.map +1 -0
- package/dist/mcp/timing-diagnostics.js +82 -0
- package/dist/mcp/timing-diagnostics.js.map +1 -0
- package/dist/mcp/tool-call-formatter.d.ts +2 -2
- package/dist/mcp/tool-call-formatter.d.ts.map +1 -1
- package/dist/mcp/tool-call-formatter.js +331 -16
- package/dist/mcp/tool-call-formatter.js.map +1 -1
- package/dist/mcp/tools/code.d.ts +3 -2
- package/dist/mcp/tools/code.d.ts.map +1 -1
- package/dist/mcp/tools/code.js +86 -6
- package/dist/mcp/tools/code.js.map +1 -1
- package/dist/mcp/tools/context-wire-format.d.ts +1 -0
- package/dist/mcp/tools/context-wire-format.d.ts.map +1 -1
- package/dist/mcp/tools/context-wire-format.js +22 -13
- package/dist/mcp/tools/context-wire-format.js.map +1 -1
- package/dist/mcp/tools/context.d.ts +2 -1
- package/dist/mcp/tools/context.d.ts.map +1 -1
- package/dist/mcp/tools/context.js +68 -4
- package/dist/mcp/tools/context.js.map +1 -1
- package/dist/mcp/tools/file-gateway.d.ts +112 -4
- package/dist/mcp/tools/file-gateway.d.ts.map +1 -1
- package/dist/mcp/tools/file-gateway.js +158 -10
- package/dist/mcp/tools/file-gateway.js.map +1 -1
- package/dist/mcp/tools/file-read.d.ts +2 -1
- package/dist/mcp/tools/file-read.d.ts.map +1 -1
- package/dist/mcp/tools/file-read.js +63 -9
- package/dist/mcp/tools/file-read.js.map +1 -1
- package/dist/mcp/tools/file-write.d.ts.map +1 -1
- package/dist/mcp/tools/file-write.js +52 -2
- package/dist/mcp/tools/file-write.js.map +1 -1
- package/dist/mcp/tools/prRisk.d.ts +8 -3
- package/dist/mcp/tools/prRisk.d.ts.map +1 -1
- package/dist/mcp/tools/prRisk.js +45 -6
- package/dist/mcp/tools/prRisk.js.map +1 -1
- package/dist/mcp/tools/repo.d.ts.map +1 -1
- package/dist/mcp/tools/repo.js +157 -30
- package/dist/mcp/tools/repo.js.map +1 -1
- package/dist/mcp/tools/response.d.ts +11 -0
- package/dist/mcp/tools/response.d.ts.map +1 -0
- package/dist/mcp/tools/response.js +53 -0
- package/dist/mcp/tools/response.js.map +1 -0
- package/dist/mcp/tools/runtime.d.ts.map +1 -1
- package/dist/mcp/tools/runtime.js +43 -16
- package/dist/mcp/tools/runtime.js.map +1 -1
- package/dist/mcp/tools/scip.d.ts.map +1 -1
- package/dist/mcp/tools/scip.js +11 -1
- package/dist/mcp/tools/scip.js.map +1 -1
- package/dist/mcp/tools/search-edit/index.d.ts +2 -1
- package/dist/mcp/tools/search-edit/index.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/index.js +22 -4
- package/dist/mcp/tools/search-edit/index.js.map +1 -1
- package/dist/mcp/tools/search-edit/planner.d.ts +10 -4
- package/dist/mcp/tools/search-edit/planner.d.ts.map +1 -1
- package/dist/mcp/tools/search-edit/planner.js +102 -38
- package/dist/mcp/tools/search-edit/planner.js.map +1 -1
- package/dist/mcp/tools/semantic-enrichment.d.ts +4 -0
- package/dist/mcp/tools/semantic-enrichment.d.ts.map +1 -0
- package/dist/mcp/tools/semantic-enrichment.js +12 -0
- package/dist/mcp/tools/semantic-enrichment.js.map +1 -0
- package/dist/mcp/tools/slice-wire-format.d.ts.map +1 -1
- package/dist/mcp/tools/slice-wire-format.js +2 -0
- package/dist/mcp/tools/slice-wire-format.js.map +1 -1
- package/dist/mcp/tools/slice.d.ts.map +1 -1
- package/dist/mcp/tools/slice.js +13 -0
- package/dist/mcp/tools/slice.js.map +1 -1
- package/dist/mcp/tools/symbol-wire-format.d.ts.map +1 -1
- package/dist/mcp/tools/symbol-wire-format.js +2 -0
- package/dist/mcp/tools/symbol-wire-format.js.map +1 -1
- package/dist/mcp/tools/tool-descriptors.d.ts.map +1 -1
- package/dist/mcp/tools/tool-descriptors.js +23 -3
- package/dist/mcp/tools/tool-descriptors.js.map +1 -1
- package/dist/mcp/tools/usage.d.ts.map +1 -1
- package/dist/mcp/tools/usage.js +19 -6
- package/dist/mcp/tools/usage.js.map +1 -1
- package/dist/mcp/tools.d.ts +343 -10
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +235 -11
- package/dist/mcp/tools.js.map +1 -1
- package/dist/observability/aggregator.d.ts +31 -1
- package/dist/observability/aggregator.d.ts.map +1 -1
- package/dist/observability/aggregator.js +240 -18
- package/dist/observability/aggregator.js.map +1 -1
- package/dist/observability/event-tap.d.ts +30 -0
- package/dist/observability/event-tap.d.ts.map +1 -1
- package/dist/observability/event-tap.js.map +1 -1
- package/dist/observability/index.d.ts +3 -3
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +1 -1
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/service.d.ts +9 -1
- package/dist/observability/service.d.ts.map +1 -1
- package/dist/observability/service.js +45 -1
- package/dist/observability/service.js.map +1 -1
- package/dist/observability/types.d.ts +64 -3
- package/dist/observability/types.d.ts.map +1 -1
- package/dist/observability/types.js +8 -0
- package/dist/observability/types.js.map +1 -1
- package/dist/retrieval/index-lifecycle.js +2 -2
- package/dist/retrieval/index-lifecycle.js.map +1 -1
- package/dist/retrieval/orchestrator.d.ts +1 -0
- package/dist/retrieval/orchestrator.d.ts.map +1 -1
- package/dist/retrieval/orchestrator.js +79 -8
- package/dist/retrieval/orchestrator.js.map +1 -1
- package/dist/retrieval/types.d.ts +4 -0
- package/dist/retrieval/types.d.ts.map +1 -1
- package/dist/runtime/response-artifacts.d.ts +104 -0
- package/dist/runtime/response-artifacts.d.ts.map +1 -0
- package/dist/runtime/response-artifacts.js +330 -0
- package/dist/runtime/response-artifacts.js.map +1 -0
- package/dist/scip/ingestion.d.ts.map +1 -1
- package/dist/scip/ingestion.js +26 -5
- package/dist/scip/ingestion.js.map +1 -1
- package/dist/scip/types.d.ts +7 -0
- package/dist/scip/types.d.ts.map +1 -1
- package/dist/semantic/cache-key.d.ts +15 -0
- package/dist/semantic/cache-key.d.ts.map +1 -0
- package/dist/semantic/cache-key.js +20 -0
- package/dist/semantic/cache-key.js.map +1 -0
- package/dist/semantic/enrichment.d.ts +50 -0
- package/dist/semantic/enrichment.d.ts.map +1 -0
- package/dist/semantic/enrichment.js +307 -0
- package/dist/semantic/enrichment.js.map +1 -0
- package/dist/semantic/index-utils.d.ts +4 -0
- package/dist/semantic/index-utils.d.ts.map +1 -0
- package/dist/semantic/index-utils.js +67 -0
- package/dist/semantic/index-utils.js.map +1 -0
- package/dist/semantic/language-packs.d.ts +19 -0
- package/dist/semantic/language-packs.d.ts.map +1 -0
- package/dist/semantic/language-packs.js +65 -0
- package/dist/semantic/language-packs.js.map +1 -0
- package/dist/semantic/precision.d.ts +13 -0
- package/dist/semantic/precision.d.ts.map +1 -0
- package/dist/semantic/precision.js +43 -0
- package/dist/semantic/precision.js.map +1 -0
- package/dist/semantic/providers/lsp/candidates.d.ts +69 -0
- package/dist/semantic/providers/lsp/candidates.d.ts.map +1 -0
- package/dist/semantic/providers/lsp/candidates.js +204 -0
- package/dist/semantic/providers/lsp/candidates.js.map +1 -0
- package/dist/semantic/providers/lsp/client.d.ts +58 -0
- package/dist/semantic/providers/lsp/client.d.ts.map +1 -0
- package/dist/semantic/providers/lsp/client.js +283 -0
- package/dist/semantic/providers/lsp/client.js.map +1 -0
- package/dist/semantic/providers/lsp/runner.d.ts +55 -0
- package/dist/semantic/providers/lsp/runner.d.ts.map +1 -0
- package/dist/semantic/providers/lsp/runner.js +602 -0
- package/dist/semantic/providers/lsp/runner.js.map +1 -0
- package/dist/semantic/providers/scip/adapter.d.ts +14 -0
- package/dist/semantic/providers/scip/adapter.d.ts.map +1 -0
- package/dist/semantic/providers/scip/adapter.js +78 -0
- package/dist/semantic/providers/scip/adapter.js.map +1 -0
- package/dist/semantic/source-selection.d.ts +27 -0
- package/dist/semantic/source-selection.d.ts.map +1 -0
- package/dist/semantic/source-selection.js +68 -0
- package/dist/semantic/source-selection.js.map +1 -0
- package/dist/semantic/types.d.ts +152 -0
- package/dist/semantic/types.d.ts.map +1 -0
- package/dist/semantic/types.js +2 -0
- package/dist/semantic/types.js.map +1 -0
- package/dist/semantic/writer.d.ts +20 -0
- package/dist/semantic/writer.d.ts.map +1 -0
- package/dist/semantic/writer.js +238 -0
- package/dist/semantic/writer.js.map +1 -0
- package/dist/server.d.ts +12 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +102 -67
- package/dist/server.js.map +1 -1
- package/dist/ui/admin-shell.css +58 -0
- package/dist/ui/config.css +130 -0
- package/dist/ui/config.d.ts +3 -0
- package/dist/ui/config.d.ts.map +1 -0
- package/dist/ui/config.html +96 -0
- package/dist/ui/config.js +1050 -0
- package/dist/ui/config.js.map +1 -0
- package/dist/ui/graph.css +108 -0
- package/dist/ui/graph.html +52 -0
- package/dist/ui/graph.js +213 -181
- package/dist/ui/observability.css +1332 -0
- package/dist/ui/observability.html +350 -0
- package/dist/ui/observability.js +849 -680
- package/dist/ui/observability.js.map +1 -1
- package/dist/util/concurrency.d.ts +16 -0
- package/dist/util/concurrency.d.ts.map +1 -1
- package/dist/util/concurrency.js +14 -1
- package/dist/util/concurrency.js.map +1 -1
- package/package.json +6 -3
- package/scripts/postinstall-tree-sitter.mjs +194 -0
- package/scripts/postinstall.mjs +10 -2
package/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
<div align="center">
|
|
2
|
-
<img src="https://github.com/GlitterKill/sdl-mcp/blob/main/docs/
|
|
2
|
+
<img src="https://github.com/GlitterKill/sdl-mcp/blob/main/docs/SDL-MCP_promo.webp" alt="Symbol Delta Ledger MCP">
|
|
3
3
|
|
|
4
4
|
<br/>
|
|
5
5
|
|
|
6
|
-
#
|
|
6
|
+
# SYMBOL DELTA LEDGER
|
|
7
7
|
|
|
8
8
|
### **Cards-first code context for AI coding agents**
|
|
9
9
|
|
|
@@ -80,7 +80,7 @@ flowchart TD
|
|
|
80
80
|
|
|
81
81
|
- **Node.js 24+** is required ([download](https://nodejs.org/)). SDL-MCP uses Node.js features not available in earlier versions. Run `node -v` to check.
|
|
82
82
|
|
|
83
|
-
> **Peer dependency warnings during install?** The tree-sitter grammar packages may produce `ERESOLVE` warnings about peer dependencies. These are harmless — the install succeeds and everything works correctly. Add `--legacy-peer-deps` to suppress them: `npm install -g sdl-mcp --legacy-peer-deps`
|
|
83
|
+
> **Peer dependency warnings during install?** The tree-sitter grammar packages may produce `ERESOLVE` warnings about peer dependencies. These are harmless — the install succeeds and everything works correctly. Add `--legacy-peer-deps` to suppress them: `npm install -g sdl-mcp --legacy-peer-deps`. SDL-MCP's postinstall also verifies tree-sitter grammar bindings and rebuilds missing ones before pruning sources; installs that use `--ignore-scripts` should run `npm rebuild tree-sitter tree-sitter-kotlin` if a grammar is unavailable.
|
|
84
84
|
|
|
85
85
|
<br/>
|
|
86
86
|
|
|
@@ -368,6 +368,8 @@ The sandboxed runtime execution tool (`sdl.runtime.execute`) has its own governa
|
|
|
368
368
|
|
|
369
369
|
`sdl.context` is SDL-MCP's task-shaped context engine. Give it a task type (`debug`, `review`, `implement`, `explain`), a description, and a budget — it selects the right Iris Gate rungs, collects evidence, and returns context tuned to the job. In Code Mode, `sdl.context` provides the same retrieval surface without dropping into `sdl.workflow`.
|
|
370
370
|
|
|
371
|
+
Unscoped natural-language context calls use confidence-gated hybrid retrieval by default. Exact symbol mentions and explicit `focusPaths` / `focusSymbols` stay on the fast path; low-confidence lexical results can escalate to bounded FTS + vector retrieval. Set `options.semantic: true` to force hybrid retrieval, or `options.semantic: false` to keep lexical-only behavior for deterministic debugging.
|
|
372
|
+
|
|
371
373
|
The feedback loop (`sdl.agent.feedback`) records which symbols were useful and which were missing, improving future slice quality.
|
|
372
374
|
|
|
373
375
|
For portable exports such as tickets and PR descriptions, use the CLI `sdl-mcp summary` command. It generates token-bounded context briefings in markdown, JSON, or clipboard format for use outside MCP environments.
|
|
@@ -375,6 +377,7 @@ For portable exports such as tickets and PR descriptions, use the CLI `sdl-mcp s
|
|
|
375
377
|
**Why it matters:**
|
|
376
378
|
|
|
377
379
|
- Task-shaped context retrieval plans the **right Iris Gate path** within a token budget
|
|
380
|
+
- Confidence-gated hybrid retrieval improves discovery without slowing known-target lookups
|
|
378
381
|
- Feedback loop records what was useful/missing, improving future slice quality
|
|
379
382
|
- Portable context summaries export findings for use outside MCP environments
|
|
380
383
|
|
|
@@ -474,7 +477,7 @@ flowchart LR
|
|
|
474
477
|
|
|
475
478
|
### CLI Tool Access — No MCP Server Required
|
|
476
479
|
|
|
477
|
-
Access
|
|
480
|
+
Access SDL-MCP direct action aliases plus the low-risk `action.search` and `manual` metadata proxies from the command line with `sdl-mcp tool`. No MCP server, transport, or SDK is required.
|
|
478
481
|
|
|
479
482
|
```bash
|
|
480
483
|
# Search for symbols
|
|
@@ -485,14 +488,22 @@ sdl-mcp tool slice.build --task-text "debug auth flow" --max-cards 50
|
|
|
485
488
|
|
|
486
489
|
# Pipe JSON args, chain commands
|
|
487
490
|
echo '{"repoId":"my-repo"}' | sdl-mcp tool symbol.search --query "auth"
|
|
491
|
+
|
|
492
|
+
# Apply a single-file targeted write
|
|
493
|
+
sdl-mcp tool file.write --repo-id my-repo --file-path config/app.json \
|
|
494
|
+
--json-path server.port --json-value 8080
|
|
495
|
+
|
|
496
|
+
# Discover and inspect metadata without opening the graph DB
|
|
497
|
+
sdl-mcp tool action.search --query manual --summary-only
|
|
498
|
+
sdl-mcp tool manual --actions action.search --format json
|
|
488
499
|
```
|
|
489
500
|
|
|
490
|
-
Features include typed argument coercion (string, number, boolean, string[], json), budget flag merging, stdin JSON piping with CLI
|
|
501
|
+
Features include typed argument coercion (string, number, boolean, string[], json), budget flag merging, stdin JSON piping with CLI flag precedence, auto-resolved `repoId` from cwd for graph actions, four output formats (json, json-compact, pretty, table), typo suggestions, and per-action `--help`. Direct graph actions dispatch through the same gateway router and Zod schemas as the MCP server; `action.search` and `manual` run in process against the same metadata handlers used by MCP registration.
|
|
491
502
|
|
|
492
503
|
**Why it matters:**
|
|
493
504
|
|
|
494
|
-
-
|
|
495
|
-
-
|
|
505
|
+
- 35 direct graph/action aliases plus `action.search` and `manual` metadata proxies accessible from **any terminal** - no server, transport, or SDK required
|
|
506
|
+
- Direct graph actions keep gateway-router/Zod parity; metadata proxies share the same MCP registration handlers
|
|
496
507
|
- Four output formats (json, json-compact, pretty, table) for scripting and CI pipelines
|
|
497
508
|
- Auto-resolves repoId from cwd, supports stdin JSON piping and per-action `--help`
|
|
498
509
|
|
|
@@ -502,12 +513,12 @@ Features include typed argument coercion (string, number, boolean, string[], jso
|
|
|
502
513
|
|
|
503
514
|
### Tool Gateway — Compact Tool Registration
|
|
504
515
|
|
|
505
|
-
The tool gateway projects the
|
|
516
|
+
The tool gateway projects the 34 gateway-routable SDL actions into **4 namespace-scoped tools** (`sdl.query`, `sdl.code`, `sdl.repo`, `sdl.agent`), reducing `tools/list` overhead from the full flat schema surface to a compact gateway surface.
|
|
506
517
|
|
|
507
518
|
```mermaid
|
|
508
519
|
%%{init: {"theme":"base","themeVariables":{"background":"#ffffff","primaryColor":"#E7F8F2","primaryBorderColor":"#0F766E","primaryTextColor":"#102A43","secondaryColor":"#E8F1FF","secondaryBorderColor":"#2563EB","secondaryTextColor":"#102A43","tertiaryColor":"#FFF4D6","tertiaryBorderColor":"#B45309","tertiaryTextColor":"#102A43","lineColor":"#0F766E","textColor":"#102A43","fontFamily":"Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif"},"flowchart":{"curve":"basis","htmlLabels":true}}}%%
|
|
509
520
|
flowchart LR
|
|
510
|
-
Before["Flat mode<br/>
|
|
521
|
+
Before["Flat mode<br/>37 tools<br/>2 universal + 35 flat"] e1@--> After["Gateway mode<br/>6 tools<br/>2 universal + 4 gateway"]
|
|
511
522
|
After e2@--> Savings["Smaller tools/list payload<br/>lower agent startup overhead"]
|
|
512
523
|
|
|
513
524
|
classDef source fill:#E7F8F2,stroke:#0F766E,stroke-width:2px,color:#102A43;
|
|
@@ -525,7 +536,7 @@ Each gateway tool accepts an `action` discriminator field (e.g., `{ action: "sym
|
|
|
525
536
|
**Why it matters:**
|
|
526
537
|
|
|
527
538
|
- Large reduction in `tools/list` overhead for gateway-first agents
|
|
528
|
-
-
|
|
539
|
+
- 34 gateway-routable actions consolidated into 4 namespace-scoped tools for simpler agent selection
|
|
529
540
|
- Fewer tool choices means faster and more accurate tool dispatch by the agent
|
|
530
541
|
- Choose Code Mode for task-shaped retrieval first; opt out of exclusive Code Mode when you also need regular flat or gateway tools
|
|
531
542
|
|
|
@@ -535,7 +546,7 @@ Each gateway tool accepts an `action` discriminator field (e.g., `{ action: "sym
|
|
|
535
546
|
|
|
536
547
|
### Observability Dashboard
|
|
537
548
|
|
|
538
|
-
Built-in read-only dashboard surfaces every metric needed to diagnose SDL-MCP behaviour without parsing stderr logs.
|
|
549
|
+
Built-in read-only dashboard surfaces every metric needed to diagnose SDL-MCP behaviour without parsing stderr logs. GlitterKill dark UI at `/ui/observability` on the HTTP transport or the loopback-only `sdl-mcp serve --stdio --dashboard-port <port>` sidecar, plus REST + SSE APIs (`/api/observability/snapshot`, `/timeseries`, `/beam-explain`, `/stream`) for programmatic access. Surfaces cache hit rates, hybrid-retrieval breakdowns (FTS / vector / PPR / RRF), beam-search decision traces, indexing pipeline metrics, write-pool and drain saturation, packed-wire token efficiency, and runtime CPU/memory/event-loop probes. See [Observability Dashboard Deep Dive](./docs/feature-deep-dives/observability-dashboard.md).
|
|
539
550
|
|
|
540
551
|
<br/>
|
|
541
552
|
|
|
@@ -547,10 +558,10 @@ Built-in read-only dashboard surfaces every metric needed to diagnose SDL-MCP be
|
|
|
547
558
|
|
|
548
559
|
| Mode | Tool count | Composition |
|
|
549
560
|
| :------------------ | :--------- | :--------------------------------------------------------------- |
|
|
550
|
-
| Flat | `
|
|
561
|
+
| Flat | `37` | `2` universal + `35` flat tools |
|
|
551
562
|
| Gateway | `6` | `2` universal + `4` gateway tools |
|
|
552
|
-
| Gateway + legacy | `
|
|
553
|
-
| Code Mode exclusive | `
|
|
563
|
+
| Gateway + legacy | `41` | `2` universal + `4` gateway + `35` flat tools |
|
|
564
|
+
| Code Mode exclusive | `5` | `sdl.action.search`, `sdl.context`, `sdl.file`, `sdl.manual`, `sdl.workflow` |
|
|
554
565
|
|
|
555
566
|
The generated source of truth is [`docs/generated/tool-inventory.md`](./docs/generated/tool-inventory.md).
|
|
556
567
|
|
|
@@ -639,7 +650,7 @@ The generated source of truth is [`docs/generated/tool-inventory.md`](./docs/gen
|
|
|
639
650
|
| `sdl-mcp doctor` | Validate runtime, config, DB, grammars, repo access |
|
|
640
651
|
| `sdl-mcp index` | Index repositories (with optional `--watch` mode) |
|
|
641
652
|
| `sdl-mcp serve` | Start MCP server (`--stdio` or `--http`) |
|
|
642
|
-
| `sdl-mcp tool` | Access
|
|
653
|
+
| `sdl-mcp tool` | Access 35 direct action aliases ([docs](./docs/feature-deep-dives/cli-tool-access.md)) |
|
|
643
654
|
| `sdl-mcp info` | Runtime diagnostics — version, Node.js, platform, database, config |
|
|
644
655
|
| `sdl-mcp summary` | Generate copy/paste context summaries from the CLI |
|
|
645
656
|
| `sdl-mcp health` | Compute composite health score with badge/JSON output |
|
|
@@ -761,8 +772,8 @@ flowchart TD
|
|
|
761
772
|
| [Context Modes](./docs/feature-deep-dives/context-modes.md) | Precise vs broad retrieval, adaptive symbol ranking, benchmark trade-offs |
|
|
762
773
|
| [Indexing & Languages](./docs/feature-deep-dives/indexing-languages.md) | Rust/TS engines, two-pass architecture, 12-language support |
|
|
763
774
|
| [Runtime Execution](./docs/feature-deep-dives/runtime-execution.md) | Sandboxed subprocess execution with governance |
|
|
764
|
-
| [CLI Tool Access](./docs/feature-deep-dives/cli-tool-access.md) | Direct CLI access to
|
|
765
|
-
| [Tool Gateway](./docs/feature-deep-dives/tool-gateway.md) |
|
|
775
|
+
| [CLI Tool Access](./docs/feature-deep-dives/cli-tool-access.md) | Direct CLI access to 35 action aliases, output formats, stdin piping, scripting |
|
|
776
|
+
| [Tool Gateway](./docs/feature-deep-dives/tool-gateway.md) | 34 gateway-routable actions, 4 namespace tools, thin schemas, migration guide |
|
|
766
777
|
| [Semantic Engine](./docs/feature-deep-dives/semantic-engine.md) | Pass-2 call resolution, embedding search, LLM summaries, confidence scoring |
|
|
767
778
|
| [Semantic Embeddings Setup](./docs/feature-deep-dives/semantic-embeddings-setup.md) | Dependencies, model installation, provider configuration, tier-by-tier setup |
|
|
768
779
|
| [Code Mode](./docs/feature-deep-dives/code-mode.md) | `sdl.context`, `sdl.workflow`, action discovery, manual reference, one-call workflows |
|
|
@@ -163,6 +163,27 @@
|
|
|
163
163
|
"candidateLimit": 100
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
|
+
"semanticEnrichment": {
|
|
167
|
+
"enabled": false,
|
|
168
|
+
"autoRunOnIndexRefresh": false,
|
|
169
|
+
"installPolicy": "never",
|
|
170
|
+
"cacheDir": null,
|
|
171
|
+
"concurrency": 1,
|
|
172
|
+
"timeoutMs": 300000,
|
|
173
|
+
"languages": [],
|
|
174
|
+
"providers": {
|
|
175
|
+
"scip": {
|
|
176
|
+
"enabled": true,
|
|
177
|
+
"indexes": []
|
|
178
|
+
},
|
|
179
|
+
"lsp": {
|
|
180
|
+
"enabled": true,
|
|
181
|
+
"confidence": 0.8,
|
|
182
|
+
"candidateLimit": 200,
|
|
183
|
+
"servers": {}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
},
|
|
166
187
|
"prefetch": {
|
|
167
188
|
"enabled": true,
|
|
168
189
|
"maxBudgetPercent": 20,
|
|
@@ -208,6 +229,10 @@
|
|
|
208
229
|
"maxStdoutBytes": 1048576,
|
|
209
230
|
"maxStderrBytes": 262144,
|
|
210
231
|
"maxArtifactBytes": 10485760,
|
|
232
|
+
"maxResponseArtifactsPerRepo": 128,
|
|
233
|
+
"maxResponseArtifactBytesPerRepo": 1342177280,
|
|
234
|
+
"maxResponseArtifactBytesTotal": 2684354560,
|
|
235
|
+
"maxResponseArtifactsTotal": 512,
|
|
211
236
|
"artifactTtlHours": 24,
|
|
212
237
|
"maxConcurrentJobs": 2,
|
|
213
238
|
"envAllowlist": [],
|
|
@@ -838,6 +838,145 @@
|
|
|
838
838
|
"embeddingConcurrency": 1
|
|
839
839
|
}
|
|
840
840
|
},
|
|
841
|
+
"semanticEnrichment": {
|
|
842
|
+
"type": "object",
|
|
843
|
+
"description": "Provider-backed graph precision enrichment. Separate from semantic embeddings/retrieval.",
|
|
844
|
+
"properties": {
|
|
845
|
+
"enabled": { "type": "boolean", "default": false },
|
|
846
|
+
"autoRunOnIndexRefresh": {
|
|
847
|
+
"type": "boolean",
|
|
848
|
+
"default": false,
|
|
849
|
+
"description": "When true, run eligible enrichment providers after index.refresh. SCIP keeps its existing mid-index ingest placement and is not moved to the post-index hook."
|
|
850
|
+
},
|
|
851
|
+
"installPolicy": {
|
|
852
|
+
"type": "string",
|
|
853
|
+
"enum": ["never", "verified"],
|
|
854
|
+
"default": "never",
|
|
855
|
+
"description": "Controls provider download behavior. 'verified' permits only checksum-verified downloads; package-manager install recipes are never executed automatically."
|
|
856
|
+
},
|
|
857
|
+
"cacheDir": {
|
|
858
|
+
"type": ["string", "null"],
|
|
859
|
+
"default": null,
|
|
860
|
+
"description": "Reserved cache root for future durable provider caches. V2 writes provider results to the graph and does not persist LSP response caches here."
|
|
861
|
+
},
|
|
862
|
+
"concurrency": {
|
|
863
|
+
"type": "integer",
|
|
864
|
+
"minimum": 1,
|
|
865
|
+
"maximum": 8,
|
|
866
|
+
"default": 1,
|
|
867
|
+
"description": "Reserved cap for future cross-provider scheduling. V2 runs selected providers serially, with provider-specific internal limits where needed."
|
|
868
|
+
},
|
|
869
|
+
"timeoutMs": {
|
|
870
|
+
"type": "integer",
|
|
871
|
+
"minimum": 1000,
|
|
872
|
+
"maximum": 1800000,
|
|
873
|
+
"default": 300000
|
|
874
|
+
},
|
|
875
|
+
"languages": {
|
|
876
|
+
"type": "array",
|
|
877
|
+
"items": { "type": "string" },
|
|
878
|
+
"default": [],
|
|
879
|
+
"description": "Language IDs to enrich. Empty means all current tree-sitter-backed languages."
|
|
880
|
+
},
|
|
881
|
+
"providers": {
|
|
882
|
+
"type": "object",
|
|
883
|
+
"description": "Provider-specific overrides. Source selection is fixed priority: SCIP > LSP.",
|
|
884
|
+
"properties": {
|
|
885
|
+
"scip": {
|
|
886
|
+
"type": "object",
|
|
887
|
+
"properties": {
|
|
888
|
+
"enabled": { "type": "boolean", "default": true },
|
|
889
|
+
"providerId": { "type": "string" },
|
|
890
|
+
"providerVersion": { "type": "string" },
|
|
891
|
+
"indexes": {
|
|
892
|
+
"type": "array",
|
|
893
|
+
"items": {
|
|
894
|
+
"type": "object",
|
|
895
|
+
"required": ["path"],
|
|
896
|
+
"properties": {
|
|
897
|
+
"path": { "type": "string" },
|
|
898
|
+
"label": { "type": "string" }
|
|
899
|
+
}
|
|
900
|
+
},
|
|
901
|
+
"default": []
|
|
902
|
+
}
|
|
903
|
+
}
|
|
904
|
+
},
|
|
905
|
+
"lsp": {
|
|
906
|
+
"type": "object",
|
|
907
|
+
"properties": {
|
|
908
|
+
"enabled": { "type": "boolean", "default": true },
|
|
909
|
+
"providerId": { "type": "string" },
|
|
910
|
+
"providerVersion": { "type": "string" },
|
|
911
|
+
"confidence": {
|
|
912
|
+
"type": "number",
|
|
913
|
+
"minimum": 0.5,
|
|
914
|
+
"maximum": 1,
|
|
915
|
+
"default": 0.8
|
|
916
|
+
},
|
|
917
|
+
"candidateLimit": {
|
|
918
|
+
"type": "integer",
|
|
919
|
+
"minimum": 0,
|
|
920
|
+
"maximum": 5000,
|
|
921
|
+
"default": 200
|
|
922
|
+
},
|
|
923
|
+
"servers": {
|
|
924
|
+
"type": "object",
|
|
925
|
+
"additionalProperties": {
|
|
926
|
+
"type": "object",
|
|
927
|
+
"required": ["serverId", "command"],
|
|
928
|
+
"properties": {
|
|
929
|
+
"enabled": { "type": "boolean", "default": true },
|
|
930
|
+
"serverId": { "type": "string" },
|
|
931
|
+
"command": { "type": "string" },
|
|
932
|
+
"args": {
|
|
933
|
+
"type": "array",
|
|
934
|
+
"items": { "type": "string" },
|
|
935
|
+
"default": []
|
|
936
|
+
},
|
|
937
|
+
"languages": {
|
|
938
|
+
"type": "array",
|
|
939
|
+
"items": { "type": "string" },
|
|
940
|
+
"default": []
|
|
941
|
+
},
|
|
942
|
+
"documentLanguageIds": {
|
|
943
|
+
"type": "array",
|
|
944
|
+
"items": { "type": "string" },
|
|
945
|
+
"default": []
|
|
946
|
+
},
|
|
947
|
+
"filePatterns": {
|
|
948
|
+
"type": "array",
|
|
949
|
+
"items": { "type": "string" },
|
|
950
|
+
"default": []
|
|
951
|
+
},
|
|
952
|
+
"capabilities": {
|
|
953
|
+
"type": "array",
|
|
954
|
+
"items": { "type": "string" },
|
|
955
|
+
"default": []
|
|
956
|
+
},
|
|
957
|
+
"readiness": { "type": "string" },
|
|
958
|
+
"initializationOptions": { "type": "object" }
|
|
959
|
+
}
|
|
960
|
+
},
|
|
961
|
+
"default": {}
|
|
962
|
+
}
|
|
963
|
+
}
|
|
964
|
+
}
|
|
965
|
+
},
|
|
966
|
+
"default": {}
|
|
967
|
+
}
|
|
968
|
+
},
|
|
969
|
+
"default": {
|
|
970
|
+
"enabled": false,
|
|
971
|
+
"autoRunOnIndexRefresh": false,
|
|
972
|
+
"installPolicy": "never",
|
|
973
|
+
"cacheDir": null,
|
|
974
|
+
"concurrency": 1,
|
|
975
|
+
"timeoutMs": 300000,
|
|
976
|
+
"languages": [],
|
|
977
|
+
"providers": {}
|
|
978
|
+
}
|
|
979
|
+
},
|
|
841
980
|
"prefetch": {
|
|
842
981
|
"type": "object",
|
|
843
982
|
"description": "Predictive prefetch configuration",
|
|
@@ -1054,7 +1193,7 @@
|
|
|
1054
1193
|
},
|
|
1055
1194
|
"toolQueueTimeoutMs": {
|
|
1056
1195
|
"type": "integer",
|
|
1057
|
-
"description": "
|
|
1196
|
+
"description": "How long a foreground MCP tool request can wait for a dispatch slot before its handler starts. Timed-out requests fail with a retryable unavailable error; running handlers are not canceled.",
|
|
1058
1197
|
"minimum": 5000,
|
|
1059
1198
|
"maximum": 120000,
|
|
1060
1199
|
"default": 30000
|
|
@@ -1114,6 +1253,30 @@
|
|
|
1114
1253
|
"minimum": 1024,
|
|
1115
1254
|
"default": 10485760
|
|
1116
1255
|
},
|
|
1256
|
+
"maxResponseArtifactsPerRepo": {
|
|
1257
|
+
"type": "integer",
|
|
1258
|
+
"description": "Maximum response artifacts retained per repository",
|
|
1259
|
+
"minimum": 1,
|
|
1260
|
+
"default": 128
|
|
1261
|
+
},
|
|
1262
|
+
"maxResponseArtifactBytesPerRepo": {
|
|
1263
|
+
"type": "integer",
|
|
1264
|
+
"description": "Maximum response-artifact bytes retained per repository",
|
|
1265
|
+
"minimum": 1024,
|
|
1266
|
+
"default": 1342177280
|
|
1267
|
+
},
|
|
1268
|
+
"maxResponseArtifactBytesTotal": {
|
|
1269
|
+
"type": "integer",
|
|
1270
|
+
"description": "Maximum response-artifact bytes retained across the artifact directory",
|
|
1271
|
+
"minimum": 1024,
|
|
1272
|
+
"default": 2684354560
|
|
1273
|
+
},
|
|
1274
|
+
"maxResponseArtifactsTotal": {
|
|
1275
|
+
"type": "integer",
|
|
1276
|
+
"description": "Maximum response artifacts retained across the artifact directory",
|
|
1277
|
+
"minimum": 1,
|
|
1278
|
+
"default": 512
|
|
1279
|
+
},
|
|
1117
1280
|
"artifactTtlHours": {
|
|
1118
1281
|
"type": "integer",
|
|
1119
1282
|
"description": "Time-to-live for stored artifacts in hours",
|
|
@@ -1195,7 +1358,7 @@
|
|
|
1195
1358
|
},
|
|
1196
1359
|
"rateLimit": {
|
|
1197
1360
|
"type": "object",
|
|
1198
|
-
"description": "Per-client token bucket for
|
|
1361
|
+
"description": "Per-client token bucket for failed HTTP auth attempts",
|
|
1199
1362
|
"properties": {
|
|
1200
1363
|
"bucketSize": {
|
|
1201
1364
|
"type": "integer",
|