Chronicle Beta

Chronicle Beta

A local-first personal RAG memory system that turns AI conversation history into a searchable, retrievable knowledge base via MCP, enabling LLMs to semantically search past conversations.

Category
访问服务器

README

Chronicle Beta

A local-first personal RAG memory system that turns your AI conversation history into a searchable, retrievable knowledge base. Designed to work with any LLM via MCP (Model Context Protocol).

What It Does

Chronicle Beta ingests your exported AI conversations, chunks and embeds them into a local vector store, and exposes a retrieval interface via MCP. When connected to an LLM like Claude, the LLM can semantically search your entire conversation history. It finds relevant context, past decisions, code snippets, and ideas on demand.

The LLM handles query decomposition and answer synthesis. Chronicle handles storage and retrieval.

Architecture

Your LLM (via MCP) -> Chronicle MCP Server -> Retriever -> ChromaDB
                                                ↑
                              Ingestion: parser -> embedder -> vector store

Two MCP tools:

  • retrieve_chunks - semantic search with optional metadata filters and date ranges
  • health_check - connectivity and status probe

Stack:

  • ChromaDB (persistent local vector store)
  • all-MiniLM-L6-v2 (sentence-transformers, ~22MB, runs locally)
  • MCP over stdio (JSON-RPC)

Quick Start

Full setup guide -> step-by-step instructions for macOS, Windows (WSL), and Linux, including how to install prerequisites.

The short version:

mkdir -p ~/Projects && cd ~/Projects
git clone https://github.com/AnirudhB-6001/chronicle_beta.git
cd chronicle_beta

Export your ChatGPT data (Settings -> Data Controls -> Export Data), unzip the archive, and place conversations.json in the data/ folder:

chronicle_beta/
└── data/
    └── conversations.json   ← place it here

Then run the install script:

bash scripts/install.sh

The script handles everything: verifies Python 3.10+, creates a virtual environment, installs dependencies (~2 GB first run), parses your conversations, embeds them into a local vector store, and prints the MCP config for Claude Desktop. It is idempotent, safe to re-run at any point, skipping completed steps.

Follow the printed instructions to connect to Claude Desktop, then ask Claude:

"Use chronicle health_check"

If it responds with status: ok and sample titles from your conversations, you're done.

Requirements: Python 3.10+, ~3 GB disk space, 30–90 minutes for first setup. See the full guide for how to install Python and other prerequisites on your OS.

Troubleshooting

See the Troubleshooting Guide for solutions to common installation, ingestion, and MCP connection issues across all platforms.

Configuration

Ingestion options

python -m scripts.embed_and_index \
  --input data/chunks.json \
  --db-path data/vector_store \
  --collection chronicle_memory \
  --model all-MiniLM-L6-v2 \
  --batch-size 100 \
  --reset  # drop and rebuild collection

Retrieval filters

The retrieve_chunks tool supports:

  • retrieval_query - string or list of strings for multi-query retrieval
  • k - number of results (default: 8)
  • date_from / date_to - ISO date strings for time-window filtering
  • filters - metadata filters: type, project, source, title, author, path

Eval

Chronicle Beta includes an evaluation pipeline for measuring retrieval quality.

# Run the eval suite
python -m eval.run_eval --dataset eval/golden_questions.json

See docs/eval.md for details on metrics (Precision@k, Recall@k, MRR, NDCG).

Project Structure

chronicle_beta/
├── mcp_server/
│   ├── server.py              # MCP JSON-RPC server (2 tools)
│   └── tools/
│       └── retrieve_chunks.py # Retrieval tool wrapper
├── retriever/
│   └── core.py                # Callable retriever: search(q, k, filters, dates)
├── scripts/
│   ├── install.sh             # One-command setup (install + ingest)
│   ├── parser.py              # ChatGPT export -> chunks.json
│   └── embed_and_index.py     # Chunks -> ChromaDB (stable IDs, rich metadata)
├── tests/                     # Unit + integration tests
├── eval/                      # Evaluation pipeline + golden datasets
├── data/                      # User data directory (gitignored)
├── docs/                      # Documentation
│   ├── QUICKSTART.md          # Full setup guide (macOS, Windows, Linux)
│   ├── TROUBLESHOOTING.md     # Solutions to common issues
│   └── eval.md                # Evaluation metrics and methodology
├── .github/ISSUE_TEMPLATE/    # Issue templates (setup, retrieval, feature request)
├── CONTRIBUTING.md            # Contribution guidelines
├── pyproject.toml
├── LICENSE                    # Apache 2.0
├── SECURITY.md                # Vulnerability reporting
└── README.md

Privacy

Chronicle Beta is local-first by design. Your conversation data never leaves your machine.

  • No cloud dependencies. Embeddings are computed locally using sentence-transformers. No OpenAI API, no external embedding services.
  • No telemetry. Chronicle Beta does not phone home, collect analytics, or transmit any data.
  • No API keys required. Everything runs on your hardware.
  • All user data is gitignored. The data/ directory (conversations, chunks, vector store) is excluded from version control by default.
  • MCP data flow. When connected to an LLM client like Claude Desktop, retrieved chunks are sent to the LLM via stdio for answer synthesis. At that point, the LLM provider's data handling policies apply. Chronicle Beta itself does not control what happens after chunks leave the MCP interface.

Security

See SECURITY.md for vulnerability reporting instructions.

License

License

Chronicle Beta v0.1.x was released under the Apache 2.0 license.

From v0.2.0 onwards, Chronicle Beta is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

You are free to use, modify, and distribute this software for personal and open-source use.
Any commercial use, hosted deployment, or product built on Chronicle requires explicit written permission from the author.

Copyright (C) 2024-2026 Anirudh Batra Contact for commercial licensing: [hello@anirudhbatraofficial.com]

See LICENSE for full terms.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选