Skip to content

Releases: GlitterKill/sdl-mcp

v0.9.2

23 Mar 01:07

Choose a tag to compare

Changes since v0.9.1

Added

  • User-visible token savings meter via MCP logging notifications (notifications/message)
    • Per-call: compact meter bar showing that call's savings (for example, ████████░░ 84%)
    • End-of-task: session + lifetime cumulative stats sent when sdl.usage.stats is called
  • Human-readable tool call formatter with concise per-tool summaries while keeping JSON responses unchanged for the LLM
  • logging capability declared in MCP Server capabilities
  • Repo overview performance cache with singleflight deduplication (5s TTL)

Changed

  • Session usage summaries now combine session and lifetime data from LadybugDB and emit the formatted summary as an MCP notification instead of extra tool payload
  • Pass2 edge-builder logic was split into focused sub-modules (enclosing-symbol, symbol-mapping, target-selection, unresolved-imports)
  • The indexer.ts monolith was split into focused init, pass1, pass2, versioning, and memory modules for safer maintenance
  • Post-install pruning now keeps only required install artifacts, reducing package footprint by roughly 312 MB
  • Runtime tool maximum duration increased to 10 minutes, with broader runtime, config, and documentation hardening across the release

Fixed

  • Semantic summary generation bug in the native TypeScript extraction path
  • Orchestrator tool execution regressions and additional tool logic edge cases
  • LadybugDB Cypher query issues in memory ordering and word-boundary search handling
  • Repo overview performance regression, plus broader hardening across indexing, runtime, and benchmark paths

Removed

  • renderTaskSummary function (redundant with renderSessionSummary)

Full Changelog: v0.9.1...v0.9.2

v0.9.1

20 Mar 23:08

Choose a tag to compare

Changes since v0.9.0

Added

  • Unified runtime diagnostics via CLI sdl-mcp info and MCP sdl.info
  • prepare-release and inspector npm workflows for release preflight and MCP inspection

Changed

  • MCP tool registration now publishes human-friendly titles, version-stamped descriptions, and shared request normalization across flat, gateway, and CLI tool-dispatch surfaces
  • Gateway tools/list schemas now preserve action-specific fields, descriptions, and defaults instead of collapsing to a bare envelope
  • Logging is now file-first with SDL_LOG_FILE, SDL_CONSOLE_LOGGING, temp-path fallback, and explicit shutdown flushing
  • Documentation was refreshed across CLI, architecture, troubleshooting, gateway, code-mode, and release workflow references

Fixed

  • Native platform package versions are synchronized with the root sdl-mcp release version
  • prepare-release now launches npm subcommands correctly on Windows
  • Release preflight packaging and stdio smoke coverage now validate the new diagnostics and tool registration surfaces

Full Changelog: v0.9.0...v0.9.1

v0.9.0

17 Mar 17:11

Choose a tag to compare

v0.9.0 — Memory System, Code-Mode Chaining, Call Edge Resolution

Highlights

  • Development Memory System — Four new MCP tools (sdl.memory.store, sdl.memory.query, sdl.memory.remove, sdl.memory.surface) backed by graph database persistence with file sync to .sdl-memory/. Memories attach to symbols, files, and repos, and are automatically surfaced for relevant tasks.

  • Code-Mode Tool Chaining — New sdl.code.chain tool executes multi-step tool chains with budget tracking, ETag caching, ladder validation, and reference resolution for composable context retrieval.

  • Call Edge Resolution Dramatically Improved — Three fixes that address the ~5% call edge coverage problem:

    1. ESM .js.ts extension remapping — Resolves the primary cause of broken cross-file links in TypeScript codebases using ESM imports
    2. Global disambiguation — When multiple symbols share a name, prefers the exported definition over test-local redeclarations
    3. Deferred TS compiler resolver — Pass 2 now gets type-aware call resolution even when the Rust indexer handles Pass 1
  • Database Migration Framework — Versioned migration runner with idempotent execution, so database upgrades no longer require a full re-index.

Other Changes

  • HTTP transport auth refactored for cleaner token handling
  • Semantic embedding progress visible during indexing
  • GitHub Actions upgraded to Node.js 24
  • CI test failures and security audit (flatted override) resolved
  • Stress test and code hardening improvements across MCP, indexing, and test infrastructure

Full Changelog: v0.8.9...v0.9.0

v0.8.9

15 Mar 23:48

Choose a tag to compare

Ci fixes and improved test coverage.

v0.8.8

15 Mar 21:01

Choose a tag to compare

Added

  • CLI tool access for direct MCP action invocation, including argument parsing, dispatch, structured output, and gateway-focused test coverage
  • Tool gateway routing plus compact and thin schemas to reduce MCP token overhead, alongside measurement tooling and config-schema support
  • Graph slice orchestration with beam-search start-node resolution, graph snapshot caching, serialization, and supporting metrics/repository integration

Changed

  • Local semantic embedding support now defaults to the nomic-embed-text-v1.5 provider, with downloader, registry, and runtime docs aligned to the new model
  • README and deep-dive documentation were expanded across CLI access, graph slicing, governance policy, runtime execution, indexing languages, and semantic workflows
  • MCP, DB, live-index, policy, and code-window paths received a broader hardening pass before release, including stricter error handling and safer gating behavior

Fixed

  • HTTP auth token handling across the CLI transport path and stress harness client scenarios
  • Stress-test reliability around Ladybug initialization and concurrent client execution
  • Release-train regressions across slice, symbol, and code tools, plus telemetry, watcher/live-index parsing, and database query safety paths

v0.8.7

13 Mar 12:17

Choose a tag to compare

Added

  • Multi-language Rust native extraction now covers Python, Go, Java, C, Shell, Rust, C#, C++, and PHP symbol, import, and call extraction, plus richer doc-comment, invariant, side-effect, and role detection
  • Pass2 and indexer resolution coverage now includes C#, C++, C, Shell, Python, Kotlin, Rust, and PHP adapters, with matching resolve-call harness and stress tooling updates
  • Local semantic embedding runtime support and the new sdl.runtime tool broaden the runtime surface for higher-output tasks and semantic workflows
  • Stress-test coverage expanded for multiple concurrent clients and the growing multi-language resolver pipeline

Changed

  • Native extraction internals were restructured into language-dispatched modules and enabled across all supported languages
  • Slice responses now use a refactored wire format with typed MCP errors, alongside general code, CI, and test hardening across the release train

Fixed

  • Native fallback and config-edge traversal regressions, including deeper and larger-file parsing hardening in the Rust extraction path
  • Runtime tool policy handling, spillover signature regressions, and UI asset stream failure handling

v0.8.6

11 Mar 01:24

Choose a tag to compare

Added

  • Shared startup bootstrap logic and focused regression coverage to register configured repositories before watcher startup on fresh graph databases.

Changed

  • Startup conflict messaging now explains the real pidfile scope, including the exact PID file path and the requirement to use a different database directory for a separate server instance.

Fixed

  • npm run dev and the CLI serve path now follow the same repository-registration bootstrap, preventing fresh-database startup failures with Repository ... not found.
  • PID-file conflict handling now gives accurate recovery guidance when another sdl-mcp process is already running for the same database directory.

v0.8.5

10 Mar 23:41

Choose a tag to compare

Added

  • Multi-session HTTP MCP session management and streamable transport handling so concurrent clients can share one server process with isolated session state
  • Configurable MCP dispatch limiting plus new session-manager, dispatch-limiter, and Ladybug connection-pool regression coverage

Changed

  • Ladybug reads and writes now run through pooled and serialized access paths across CLI, MCP, indexing, sync, and live-index flows to reduce write conflicts under concurrent load
  • The config schema and example config now expose concurrency controls for MCP dispatch and graph database access
  • Benchmark and release lockfile coverage were refreshed to keep CI and publish-path validation stable after the concurrency changes

Fixed

  • TypeScript indexer fallback logic now recovers more reliably when native language support is unavailable
  • CI regression guards around Ladybug E2E coverage and release lockfile checks were tightened after recent infrastructure changes

v0.8.4

10 Mar 13:22

Choose a tag to compare

Added

  • Ladybug package-contract, query-coverage, and MCP language regression coverage to lock the migration behavior in place across DB, indexing, and code-access paths
  • Actionable rebuild guidance when older graph databases cannot be opened after the backend migration

Changed

  • The embedded graph backend is now consistently named Ladybug across DB modules, tests, scripts, configs, and documentation while continuing to load @ladybugdb/core through the existing kuzu compatibility seam
  • Default graph database paths and examples now use the .lbug extension, and the benchmark/migration tooling was refreshed to match the Ladybug naming
  • README, configuration, troubleshooting, and release-test docs were updated to reflect the Ladybug-backed storage model and current release workflow

Fixed

  • Post-refactor DB issues across slice building, metrics, versioning, sync, and MCP tool flows after the Ladybug rename
  • Kotlin grammar loading and TSX/JSX component export handling in indexing and code-access paths, with matching regression tests
  • CI and release follow-up issues uncovered during the migration, including lockfile and publish-path stability fixes

Upgrade Notes

  • Existing .kuzu graph directories should be recreated or migrated to the Ladybug-backed .lbug path before relying on older persisted data

v0.8.3

09 Mar 19:19

Choose a tag to compare

Changes

Added

  • Release-publish lockfile coverage to keep npm bootstrap behavior under test in CI.
  • Broader multi-language code-access handling in tree-sitter-backed skeleton and hot-path flows.

Changed

  • Release publishing now bootstraps on Node 20 with a more reliable npm install path in the publish workflow.
  • Slice start-node resolution, graph metrics writes, watcher logging, and pass2/indexing internals were tightened to reduce noisy results and improve stability under load.

Fixed

  • ENOENT and parser crash paths across indexing, watcher, and code-access flows to reduce unexpected failures during file churn.
  • Security hardening across DB init, plugin loading, regex compilation, symlink handling, JSON parsing, repo path validation, and MCP request budget limits.