Architecture

debug-recorder-mcp keeps runtime responsibilities intentionally narrow:


flowchart TD

  Client["MCP client"] --> Transport["stdio or Streamable HTTP transport"]

  Transport --> Server["src/mcp.ts wiring + tool registration"]

  Server --> Tools["src/tools/* handlers"]

  Tools --> Store["Store"]

  Store --> DB["SQLite sessions.db"]

  DB --> FTS["FTS5 index + triggers"]

  Tools --> Search["search.ts"]

  Search --> FTS

  Search --> Store

Module map

Runtime notes

Architecture decisions