Skip to main content
Glama

Turn scattered notes, project docs and agent memories into a knowledge base you can search and ask questions about — from your terminal, browser or MCP client.

loci combines vector search with BM25 and returns answers with file > section citations. Your files and index stay on your machine. Embedding and chat requests go to the providers you configure; local endpoints can keep the entire workflow offline.

Quick start · Web console · MCP setup · Usage guide · 中文说明

loci console — synthetic-data demo

Actual console UI with fictional demo data. No personal knowledge base, account or API key is connected; counts are illustrative.

loci console — dark theme, fictional demo data

What you can do

Need

How loci helps

Find a decision buried in your notes

Hybrid search across directories, with tag, path and date filters

Ask a question and check the evidence

Answers cite source sections; optional claim-by-claim verification

Carry context between AI tools

MCP tools share one instance; durable memories are Markdown files

See what each coding agent remembers

Harness discovery, file browsing, per-tool stats and digest notes

Manage the knowledge base visually

Built-in Web console for search, Q&A, memories, indexing and audit

Markdown, text, HTML, org-mode and chat exports work out of the box. Optional extras add PDF, Word and OCR support. Keep using your existing note editor or Obsidian vault.

Related MCP server: loci-mcp

Quick start

Requires Python 3.11+. Start from source so the example configuration is available:

git clone https://github.com/IvenKooLab/loci.git
cd loci
python -m pip install -e .
cp config.example.toml config.toml

Edit config.toml: fill in [llm] and [embed], and change [[sources]].path to your notes directory. The embedding endpoint must support /embeddings; chat and embeddings may use different providers.

loci ingest
loci search "deployment decisions"
loci ask "What did we decide about deployment, and why?"

Already have a configuration? Install the package with python -m pip install loci-rag and set LOCI_HOME to your instance directory. For optional document support, use python -m pip install 'loci-rag[pdf,docx]'.

API keys can be supplied through BRAIN_LLM_API_KEY and BRAIN_EMBED_API_KEY. After changing the embedding model, rebuild with loci ingest --force.

Web console

loci serve-http

Open 127.0.0.1:8765/ui to browse harness memories, search, ask questions, edit shared notes and inspect indexing activity. The console includes Chinese/English and light/dark switches; no frontend build is required.

By default, anonymous loopback clients have admin access. Behind a reverse proxy or SSH tunnel, set [http] local_admin = false and configure role-based tokens. See access control.

For DeepSeek Harness, loci-dsh brings search, Q&A and memory capture into the Harness workbench through the same HTTP backend.

Connect your AI tools

Point each MCP client at the same LOCI_HOME so they share the same config, index and memory files:

{
  "mcpServers": {
    "loci": {
      "command": "loci-mcp",
      "env": { "LOCI_HOME": "/absolute/path/to/your/loci-instance" }
    }
  }
}

Use an absolute executable path if your client cannot find loci-mcp. The instance directory must contain your config.toml.

MCP tools

Purpose

brain_search · brain_ask

Retrieve excerpts or get cited answers

brain_remember · brain_forget

Store or retract durable memories

brain_links · brain_graph

Explore note links and extracted relations

brain_wiki · brain_harness

Consolidate knowledge and inspect agent memories

brain_stats · brain_ingest

Inspect and refresh the index

The server also exposes note resources and briefing, study-plan and contradiction-check prompts. See the MCP guide for details.

A small daily workflow

loci watch                            # keep changed documents indexed
loci remember "Use staging for demos" --title "Demo environment"
loci search "demo environment" --tag memory
loci ask "How should I prepare a demo?" --verify
loci harness                          # inspect detected agent memories

Indexing is incremental. Notes stay readable as Markdown. For multiple machines, sync source files and memory notes, then rebuild each local index; keep credentials out of the repository.

loci terminal demo

The usage guide includes the original bilingual retrieval example and a small evaluation you can rerun against your own corpus.

Documentation

Guide

Covers

Usage guide / 中文指南

Commands, filters, harness setup, access control and local models

Configuration example

Provider settings, source directories and runtime options

Architecture

Modules and the retrieval pipeline

Changelog · Roadmap

Released changes and planned work

Contributing

Development conventions and offline testing

loci uses the OpenAI-compatible SDK and ChromaDB, with no LangChain or LlamaIndex dependency. BM25, loaders and the MCP transport are implemented in the project.

python -m pip install -e '.[dev,pdf]'
pytest  # offline tests; no API keys required

Find loci on Glama, ModelScope and awesome-mcp-servers. Source: GitHub · Gitee. Licensed under MIT.

Maintenance

ActivityActive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI hosts and agents to query a local hybrid index of scattered notes and documents, retrieve section-level citations, and access resources and prompts through MCP.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables MCP-compatible AI agents to search, ask, and retrieve section-level cited answers from a local hybrid index over scattered notes, documents, and chat logs.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents and MCP hosts to query a local index of scattered notes and documents through hybrid vector and BM25 retrieval, returning section-level citations and exposing tools, resources, and prompts.
    -
  • F
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents and MCP hosts to search and ask questions across a local hybrid-retrieval index of scattered notes, documents, PDFs, and chat logs, returning section-level citations and agent-usable tools, resources, and prompts.
    -