About ChatCrystal
ChatCrystal is an MCP server in the RAG category: crystallize knowledge from AI conversations. Import from Claude Code / Cursor / Codex CLI, summarize with LLM, search by semantics.
Install
git clone https://github.com/ZengLiangYi/ChatCrystalThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about ChatCrystal
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
ChatCrystal
Turn your AI conversations into searchable knowledge
English | 简体中文
ChatCrystal collects conversations from AI coding tools, distills them into structured notes with LLMs, and builds a local searchable knowledge base from your real problem-solving history.
Supported sources: Claude Code, Cursor, Codex CLI, Trae, and GitHub Copilot.
Quick Start
Desktop App (Recommended)
Download the latest Windows installer from GitHub Releases. After installing, launch ChatCrystal, configure your LLM and embedding providers in Settings, then click Import.
CLI / Web
npm install -g chatcrystal
crystal serve -d
crystal import
Then open http://localhost:3721 in your browser.
What It Does
- Imports AI coding conversations from local tool data directories.
- Distills conversations into structured notes with titles, summaries, conclusions, snippets, and tags.
- Searches knowledge semantically with embeddings and relation-aware result expansion.
- Builds a knowledge graph across related notes and decisions.
- Exposes CLI and MCP tools so agents can recall and write back reusable experience.
- Runs locally with configurable LLM and embedding providers.
Screenshots
Common Commands
crystal status # Server status and DB stats
crystal import [--source claude-code] # Scan and import conversations
crystal search "query" [--limit 10] # Semantic search
crystal notes list [--tag X] # Browse notes
crystal notes get <id> # View note detail
crystal summarize --all # Batch summarize
crystal config get # View config
crystal serve -d # Start server in background
crystal serve stop # Stop background server
crystal mcp # Start MCP stdio server
Documentation
| Topic | English | 简体中文 |
|---|---|---|
| User guide | docs/USER_GUIDE.md | docs/USER_GUIDE.zh-CN.md |
| Development | docs/DEVELOPMENT.md | docs/DEVELOPMENT.zh-CN.md |
| MCP and agents | docs/MCP.md | docs/MCP.zh-CN.md |
| Experience quality gate | docs/EXPERIENCE_GATE.md | docs/EXPERIENCE_GATE.zh-CN.md |
| Agent skills | docs/agent-skills.md | docs/agent-skills.zh-CN.md |
Requirements
- Node.js >= 20
- An LLM provider for summarization
- An embedding provider for semantic search
LLM and embedding providers are configured separately. Large language models such as Claude, GPT, and Qwen are not embedding models. See the user guide for provider examples.
Local Development
git clone https://github.com/ZengLiangYi/ChatCrystal.git
cd ChatCrystal
npm install
npm run dev
Development server ports:
- API/server: http://localhost:3721
- Vite client: http://localhost:13721
See docs/DEVELOPMENT.md for architecture, testing, build, and release details.
License
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.