Skip to main content
SDL-MCP (Symbol Delta Ledger MCP Server) solves a fundamental problem with AI coding agents: every time an agent reads a file to answer a question, it burns thousands of tokens — most of which are irrelevant to the task.
A debugging session touching 20 files can consume 40,000+ tokens on context gathering alone.
SDL-MCP fixes this by indexing your codebase into a searchable symbol graph and serving precisely the right amount of context through a controlled escalation path. Agents understand your code better while consuming a fraction of the tokens.

How it works

        Your Codebase

      ┌──────┴──────┐
      │   Indexer    │   Native Rust (fast) or Tree-sitter (universal)
      │   12 langs   │   TS · JS · Python · Go · Java · C# · C · C++ · PHP · Rust · Kotlin · Shell
      └──────┬──────┘


 ┌───────────────────────┐
 │   Symbol Graph (DB)   │   Functions, classes, interfaces, types, edges, metrics
 │   LadybugDB (graph)   │   Persisted. Incremental. Versioned.
 └───────────┬───────────┘

  ┌──────────┼──────────┐
  │          │          │
  ▼          ▼          ▼
35 MCP    13 CLI    HTTP API
 Tools   Commands  (dev/network)


AI Coding Agent
(Claude Code, Claude Desktop, Cursor, Windsurf, any MCP client)
  1. Index once — SDL-MCP parses every symbol in your repo and stores it as a compact metadata record (a “Symbol Card”) in a graph database.
  2. Query efficiently — Agents use MCP tools to search, slice, and retrieve exactly the context they need.
  3. Escalate only when necessary — A four-rung ladder controls how much code the agent sees, from a 100-token card to full source (with justification required).

The Iris Gate Ladder

The core innovation. Named after the adjustable aperture that controls light flow in optics, the Iris Gate Ladder lets agents dial their context aperture from a pinhole to wide-open:
RungWhat the agent seesToken costTypical use
1 — Symbol CardName, signature, summary, dependencies, metrics~100”What does this function do?“
2 — Skeleton IRSignatures + control flow, bodies elided~300”What’s the shape of this class?“
3 — Hot-Path ExcerptLines matching specific identifiers + context~600”Where is this.cache initialized?“
4 — Raw Code WindowFull source (policy-gated, justification required)~2,000”I need to rewrite this error handler”
Most questions are answered at Rungs 1–2 without ever reading raw code.
ScenarioReading the fileUsing the LadderSavings
”What does parseConfig accept?”~2,000 tok~100 tok20x
”Show me the shape of AuthService~4,000 tok~300 tok13x
”Where is this.cache set?”~2,000 tok~500 tok4x

Tech stack

ComponentTechnology
RuntimeNode.js 24+ / TypeScript 5.9+ (strict ESM)
Graph databaseLadybugDB (embedded, single-file)
Indexer (default)Rust via napi-rs (multi-threaded)
Indexer (fallback)tree-sitter + tree-sitter-typescript
MCP SDK@modelcontextprotocol/sdk
ValidationZod schemas for all payloads
Transportsstdio (agents) · HTTP (dev/network)

Compatible clients

SDL-MCP works with any MCP-compatible client:
ClientTransportSetup command
Claude Codestdiosdl-mcp init --client claude-code
Claude Desktopstdiosdl-mcp init --client claude-code
CursorstdioStandard MCP server config
WindsurfstdioStandard MCP server config
Codex CLIstdiosdl-mcp init --client codex
Gemini CLIstdiosdl-mcp init --client gemini
OpenCodestdiosdl-mcp init --client opencode
Any MCP clientstdio / HTTPsdl-mcp serve --stdio or --http
A VSCode extension (sdl-mcp-vscode) provides live buffer integration for real-time indexing of unsaved edits.

Explore SDL-MCP

Quickstart

Install SDL-MCP, index your repo, and connect your first coding agent in under 5 minutes.

Client setup

Detailed configuration for Claude Code, Cursor, Windsurf, Gemini CLI, OpenCode, and more.

Core concepts

Understand the Iris Gate Ladder, Symbol Cards, Graph Slicing, and Delta analysis.

MCP tools reference

Full reference for all 35 MCP tools with parameters and response shapes.

Build docs developers (and LLMs) love