MCP.so
登录

Smriti MCP Server

@tejzpr

基本信息

分类

记忆与知识

传输方式

stdio

作者

tejzpr

提交者

Tejus

关于 Smriti MCP Server

Smriti is a Model Context Protocol (MCP) server that provides persistent, graph-based memory for LLM applications. Built on LadybugDB (embedded property graph database), it uses EcphoryRAG-inspired multi-stage retrieval - combining cue extraction, graph traversal, vector similari

#smriti#memory#human

Smriti MCP Server 配置

使用下面的配置,将此服务器添加到你的 MCP 客户端。

{
  "mcpServers": {
    "smriti": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/Users/yourname/.smriti:/home/smriti/.smriti",
        "-e",
        "LLM_API_KEY=your-api-key",
        "-e",
        "EMBEDDING_API_KEY=your-embedding-key",
        "tejzpr/smriti-mcp"
      ]
    }
  }
}

Smriti MCP Server 工具

工具列表暂未提供

当前收录暂时没有可展示的工具列表,不代表服务没有工具。请查阅项目文档了解支持的能力。

工具是从 README 中自动提取的。维护者可以在 ## Tools 标题下列出工具,即可填充这部分内容。

概览

What is Smriti?

Smriti is a Model Context Protocol (MCP) server that provides persistent, graph-based memory for LLM applications. It is built on LadybugDB (an embedded property graph database) and uses EcphoryRAG-inspired multi-stage retrieval — combining cue extraction, graph traversal, vector similarity, and multi-hop association — to deliver human-like memory recall. The server automatically detects communities of related memories using the Leiden algorithm, enabling cluster-aware retrieval that scales beyond thousands of memories.

How to use Smriti?

Build from source with CGO_ENABLED=1 go build -o smriti-mcp ., set the required environment variables (LLM_API_KEY and optionally ACCESSING_USER), then run the binary. Smriti exposes three MCP tools — smriti_store, smriti_recall, and smriti_manage — and integrates with any MCP client (Cursor, Claude Desktop, Windsurf) via stdio using a native binary, go run, Docker, or a pre-built release binary.

Key features of Smriti

  • Graph-based memory with engrams linked via Cues and Associations
  • EcphoryRAG multi-stage retrieval with composite scoring
  • Leiden algorithm for automatic community detection
  • Multi-user support with separate LadybugDB per user
  • Automatic consolidation with decay, pruning, and re-clustering
  • Flexible backup via GitHub, S3, or local-only

Use cases of Smriti

  • Providing persistent long-term memory for AI coding assistants
  • Storing and retrieving conversation context across sessions for LLM agents
  • Enabling multi-user memory isolation in collaborative AI applications
  • Building knowledge-grounded AI systems that recall related information via associative retrieval

常见问题

1

What runtime dependencies does Smriti require?

Smriti requires Go 1.25+ for building from source, Git 2.x+ for GitHub backups, GCC/build tools for CGO (LadybugDB), and the liblbug shared library (bundled in Docker and release binaries).

2

Where does Smriti store memory data?

Memory data is stored in a LadybugDB property graph under the root directory specified by `STORAGE_LOCATION` (default: `~/.smriti`). Each user has a separate database, and the data persists on disk.

3

What transport and authentication does Smriti use?

Smriti communicates with MCP clients via stdio. Authentication to LLM and embedding APIs is handled through environment variables (`LLM_API_KEY` and `EMBEDDING_API_KEY`), and the server supports any OpenAI-compatible provider.

4

Does Smriti support multiple users?

Yes. Smriti provides multi-user support by maintaining a separate LadybugDB instance per user, identified by the `ACCESSING_USER` environment variable. This scales to thousands of isolated memory stores.

5

Are there any known performance limits?

Smriti gracefully skips Leiden clustering on small graphs (< 3 nodes or 0 edges). Clustering 60 nodes takes ~40ms on the first run (with auto-tune) and ~14ms with a cached resolution. The server lazily creates HNSW vector and FTS indexes when the engram count exceeds a configurable threshold (default: 50).

评论

记忆与知识 分类下的更多 MCP 服务器