# sdl-mcp

> SDL-MCP (Symbol Delta Ledger MCP Server) is a cards-first context system for coding agents that saves tokens and improves context.

- **URL**: https://www.freshcrate.ai/projects/sdl-mcp
- **Author**: GlitterKill
- **Category**: MCP Servers
- **Latest version**: `v0.11.4` (2026-05-21)
- **License**: NOASSERTION
- **Source**: https://github.com/GlitterKill/sdl-mcp
- **Language**: TypeScript
- **GitHub**: 256 stars, 18 forks
- **Registry**: github
- **Tags**: `agent-context`, `agent-tools`, `agentic-coding`, `agentic-workflow`, `agents`, `ai-agents`, `code-analysis`, `code-context`, `typescript`

## Description

SDL-MCP (Symbol Delta Ledger MCP Server) is a cards-first context system for coding agents that saves tokens and improves context.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v0.11.4` | 2026-05-21 | High | ### Added  - Added outcome-trained predictive context policy storage and observability: prefetch outcomes now persist to LadybugDB, aggregate by repo/task/client/strategy/resource kind, and surface safe-mode suppression/boost metrics in `repo.status` and `/ui/observability`.  ### Changed  - Default semantic indexing now uses specialized embedding lanes: Jina for Symbol embeddings and Nomic for FileSummary embeddings. Added `semantic.embeddingProfile`, `symbolEmbeddingModels`, and `fileSumm |
| `v0.11.3` | 2026-05-14 | High | ## [0.11.3] - 2026-05-14  ### Added  - Added a dependency-free `/ui/config` visual configuration admin console with loopback-only write APIs, schema/semantic validation, redacted raw/effective snapshots, atomic save/backup/rollback, high-risk diff confirmation, and reusable JSON Pointer profiles. - Added opt-in phase timing diagnostics for `sdl.context`, `sdl.workflow`, `sdl.runtime.execute`, and `sdl.file`, plus observability aggregation for per-tool phase p95/max latency and LadybugDB qu |
| `v0.11.2` | 2026-05-11 | High | ## [0.11.2] - 2026-05-11  ### Added  - Semantic enrichment bridge V1 with provider-neutral config/types, SCIP > LSP source selection, explicit refresh/status actions, lightweight stdio LSP client support, and LadybugDB provider-run/provenance/precision tables. - Semantic enrichment V2 TypeScript/JavaScript LSP call-definition enrichment that plans tree-sitter call candidates, queries configured stdio LSP servers, and writes exact call edges through the generic semantic writer. - Generic LSP |
| `v0.11.0` | 2026-05-07 | High | ## [0.11.0] - 2026-05-07  ### Performance  - **Pass-2 read amplification eliminated (A1).** Each language resolver   previously did `getFileByRepoPath` per imported module + `getSymbolsByFile`   per resolved target file — ~30k point reads per refresh on a 1000-file TS   repo. New pass-level `Pass2ImportCache` (in `src/indexer/pass2/types.ts`)   populated once at dispatcher start with two batched reads   (`getFilesByRepo` + new `getExportedSymbolsLiteByFileIds`); resolvers do   O(1) map |
| `v0.10.10` | 2026-04-28 | High | ## Highlights  `packed` line-oriented wire format ships across slice/search/context with a token-aware auto-gate (~45% token savings on representative slices, 8/8 emitting packed). Concurrent `serve --stdio` no longer corrupts the LadybugDB WAL. Cross-platform fix for `sdl-mcp init`. **Breaking**: compact wire formats v1 and v2 retired.  ## Added — `packed` wire format  - **New `wireFormat: "packed"` and `"auto"` for `sdl.slice.build`, plus optional `wireFormat` on `sdl.symbol.search` and `sdl.c |
| `v0.10.8` | 2026-04-23 | High | ## ⚠️ Migration for existing users  Your `CLAUDE.md` / `AGENTS.md` / `GEMINI.md` / `CODEX.md` likely still contain the inlined SDL-MCP workflow from earlier versions. **Remove those sections** and replace them with a single pointer near the top of each file:  ```markdown > Optimized tool-use workflow for agents: see [SDL.md](./SDL.md). ```  `SDL.md` now owns the canonical decision ladder, budget patterns, and anti-patterns. Keeping the workflow in one file means future agent-behavior upd |
| `v0.10.7` | 2026-04-20 | High | ### Added  - **`sdl.context` defaults to hybrid retrieval end-to-end**: hybrid seeding (entitySearch   via FTS + vector + RRF) now runs **alongside** path-inference, not instead of it.   Path-inferred refs are preserved first; hybrid adds semantically related refs   the heuristic misses. `TaskOptions.semantic` (default `true`) and   `TaskOptions.includeRetrievalEvidence` (default `true`) toggle the behavior. - **Retrieval evidence surfaced on `sdl.context` responses**: `ContextSeedResult`   gain |
| `models-v1` | 2026-04-19 | High | Mirror of the ONNX embedding models used by SDL-MCP's semantic retrieval, for use as a fallback when HuggingFace is unavailable.  Fetched automatically by `scripts/postinstall-models.mjs` when the primary HuggingFace download fails.  ## Assets  ### jina-embeddings-v2-base-code (~162 MB) Primary: https://huggingface.co/jinaai/jina-embeddings-v2-base-code  ### nomic-embed-text-v1.5 (~137 MB) Primary: https://huggingface.co/nomic-ai/nomic-embed-text-v1.5  Both models are 768-dim quantized ONNX. |
| `v0.10.6` | 2026-04-19 | High | ## v0.10.6 — Stability & Tool UX Fixes  ### ⚠️ Important: Write Pool Rollback  The write connection pool introduced in v0.10.5 (4 warm connections with two-layer concurrency control) has been **reverted to a single serialized write connection**. LadybugDB has a known bug where concurrent writes on separate connections can trigger N-API GC crashes and use-after-free in native code. **The bug has been patched upstream but not yet released.** This rollback trades write throughput for stability unti |
| `v0.10.5` | 2026-04-14 | High | # SDL-MCP v0.10.5  ## Important: Default Embedding Model Changed  **Action Required for Existing Users**: This release changes the default embedding model from `all-MiniLM-L6-v2` (384-dim, 256-token) to `jina-embeddings-v2-base-code` (768-dim, 8192-token).  If you have an existing SDL-MCP installation with semantic search enabled, you need to:  1. **Update your config** - The config field `embedding.model` now defaults to `"jina-embeddings-v2-base-code"`. If you explicitly set a model, verify it |

## Citation

- HTML: https://www.freshcrate.ai/projects/sdl-mcp
- Markdown: https://www.freshcrate.ai/projects/sdl-mcp.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/sdl-mcp/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
