In-depth architectural comparison of the ChatCrystal and Codebase Memory MCP MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
ChatCrystal
Knowledge & Memory · Local stdio
Quality: 59/100 (Good) | Auth: No auth required
Codebase Memory MCP
Knowledge & Memory · Local stdio
Quality: 73/100 (Great) | Auth: No auth required
Verdict Summary: Choose ChatCrystal if you need specialized Knowledge & Memory tools running via a local process. Choose Codebase Memory MCP if your workspace requires Knowledge & Memory integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose ChatCrystal when:
You need dedicated capabilities in the Knowledge & Memory domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Primary tools included: Imports Claude Code, Cursor, Codex CLI, Trae, and GitHub Copilot chats, Distills conversations into tagged structured notes, Provides embedding-based semantic search.
Local-first AI PKM memory server for coding conversations. Imports Claude Code, Cursor, Codex CLI, Trae, and GitHub Copilot chats into notes, semantic search, tag graphs, Markdown exports, and reusable MCP memory. npx -y chatcrystal mcp
Code-intelligence engine that indexes a repo into a persistent knowledge graph — functions, classes, call chains, HTTP routes, cross-service links. 159 languages via tree-sitter + Hybrid LSP, sub-ms structural queries, 99% fewer tokens than grep. Single static binary, zero dependencies, 100% local. npx codebase-memory-mcp
Category & Scope
Tools & Capabilities Breakdown
ChatCrystal Tools (6)
Imports Claude Code, Cursor, Codex CLI, Trae, and GitHub Copilot chats
Distills conversations into tagged structured notes
Provides embedding-based semantic search
Builds a tag knowledge graph
Exposes CLI and MCP access
Exports notes to Markdown
Codebase Memory MCP Tools (17)
index_repository
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
ChatCrystal is categorized under Knowledge & Memory and uses a local stdio subprocess. In contrast, Codebase Memory MCP belongs to Knowledge & Memory using local stdio subprocess. Select ChatCrystal when you need capabilities focused on knowledge & memory and Codebase Memory MCP when you require tools for knowledge & memory.
Index a repository. full/moderate add semantics; fast omits them; cross-repo-intelligence links services. Reports coverage gaps.
search_graph
Find symbols via BM25 query, regex name/qn filters, or semantic_query. Rows keep qn/file/lines and in/out over CALLS/USAGE/CALL_REFERENCE/INHERITS/IMPLEMENTS.
query_graph
Read-only Cypher for multi-hop, aggregation, complexity, or cross-service analysis. Default: 200 visible rows with exact/lower-bound totals and truncation; continue safely with next_cursor. graph=missed is a file tree of flagged coverage gaps; absence is not proof of completeness. Use get_graph_schema(diagnostics=full) for properties.
trace_path
Trace callers/callees, data flow, or cross-service paths. Defaults exclude tests and resolver evidence. Rows keep qn/hop with explicit totals, relations, and continuations.
get_code_snippet
Read a search_graph symbol. auto bounds source and outlines large containers; full restores up to 500 lines. Source/outline pages continue; coverage_note marks gaps.
get_file_outline
Declaration outline of one exact repository-relative file: optional exact label filter, source order, exact total/offset/limit paging; file/folder/container nodes excluded.
get_graph_schema
Get node-label and edge-type counts. diagnostics=full also lists queryable properties.
compare_graphs
Compare two indexed snapshots: deterministic target-only additions and base-only removals of stable node/edge identities; each set capped by limit and a 512 KiB budget with exact totals and truncation reasons.