# yantrikdb-mcp

An MCP server that gives your coding agent a memory between sessions: semantic lookup of earlier notes, a knowledge graph, and flags for facts that contradict each other.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 25
- Author: yantrikos
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/yantrikos/yantrikdb-mcp
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/mcp/yantrikdb-mcp

## What it does

Memory lives in a local SQLite file, `~/.yantrikdb/memory.db` unless you point it elsewhere. The agent gets tools such as `remember`, `recall`, `forget`, `correct`, `think`, `graph` and `conflict`. It pulls context on its own, records decisions, and notices when two stored beliefs disagree. Semantic search runs on a small bundled 64-dim embedder; the `[onnx]` extra swaps in a 384-dim model, and a 256-dim multilingual one is available too.

Three deployment modes. Local runs the engine in-process with no outside services. Cluster mode makes the server a thin client of a YantrikDB HTTP cluster, so several machines read the same memory. SSE mode serves a long-lived instance with its own database, though idle connections can drop, which makes the cluster the sturdier pick for shared use.

The `uvx` config needs `uv` on PATH; without it the server will not start. Cluster mode expects node URLs in `YANTRIKDB_SERVER_URL` plus a `YANTRIKDB_TOKEN`. Agents cannot author skills unless you set `YANTRIKDB_SKILLS_WRITE_ENABLED=true`.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `YANTRIKDB_DB_PATH`, `YANTRIKDB_TOOL_PROFILE` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env YANTRIKDB_DB_PATH=<YANTRIKDB_DB_PATH> --env YANTRIKDB_TOOL_PROFILE=<YANTRIKDB_TOOL_PROFILE> --transport stdio yantrikdb-mcp -- uvx yantrikdb-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from yantrikdb-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add yantrikdb-mcp --env YANTRIKDB_DB_PATH=<YANTRIKDB_DB_PATH> --env YANTRIKDB_TOOL_PROFILE=<YANTRIKDB_TOOL_PROFILE> -- uvx yantrikdb-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from yantrikdb-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "yantrikdb-mcp": {
            "command": "uvx",
            "args": [
                "yantrikdb-mcp"
            ],
            "env": {
                "YANTRIKDB_DB_PATH": "<YANTRIKDB_DB_PATH>",
                "YANTRIKDB_TOOL_PROFILE": "<YANTRIKDB_TOOL_PROFILE>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from yantrikdb-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "yantrikdb-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "yantrikdb-mcp"
            ],
            "env": {
                "YANTRIKDB_DB_PATH": "<YANTRIKDB_DB_PATH>",
                "YANTRIKDB_TOOL_PROFILE": "<YANTRIKDB_TOOL_PROFILE>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from yantrikdb-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e YANTRIKDB_DB_PATH=<YANTRIKDB_DB_PATH> -e YANTRIKDB_TOOL_PROFILE=<YANTRIKDB_TOOL_PROFILE> yantrikdb-mcp uvx yantrikdb-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from yantrikdb-mcp <command>

## When to use it
- recall a decision from an earlier session without retelling it
- find a stored note by meaning rather than exact wording
- spot two saved facts that conflict with each other
- share one memory across machines via an HTTP cluster
- keep agent memory on local disk with no external service

## Example prompts
- Remember that releases go through `make release` and bring it up next session.
- What did we settle on for request timeouts? Search by meaning.
- Check whether my notes about the on-call owner contradict each other.

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
