Skip to main content
Glama
RemanenetSpy

smriti-kaal-mcp

by RemanenetSpy

๐Ÿ“– What is Smriti?

The Problem: Traditional "agent memory" relies on fuzzy vector databases that suffer from temporal drift. When tracking deals, deployments, contracts, or multi-step workflows, you need a deterministic event ledger โ€” not a chatbot guessing from old embeddings.

The Solution: Smriti is a temporal event memory layer โ€” a bi-temporal hippocampus for AI agents that tracks state changes perfectly across systems and sessions.

Feature

Smriti (Event Memory)

Traditional RAG (Chat Memory)

Structure

SVO Tuples: Tracks concrete actions (Agent โ†’ Deployed โ†’ Build42)

Vector Sludge: Dumps unstructured text into a vector DB

Time

Bi-Temporal: Tracks both when it happened and when it was recorded

Timeless: Cannot distinguish old facts from current state

Updates

Supersession: Safely overrides state without deleting history

Overwrite: Hard deletes or creates confusing duplicates


Related MCP server: Unforget MCP Server

๐Ÿš€ Quick Start (5 Minutes)

Step 1 โ€” Get a free API key

curl -X POST "https://smriti-kaal.vercel.app/billing/keys?tier=explorer"

Step 2 โ€” Store a memory

curl -X POST https://smriti-kaal.vercel.app/ingest \
  -H "X-API-Key: chrn_your_key" \
  -H "Content-Type: application/json" \
  -d '{"source_id": "demo", "events": [{"text": "Alice joined as Lead Engineer on July 15"}]}'

Step 3 โ€” Recall it

curl -X POST https://smriti-kaal.vercel.app/query \
  -H "X-API-Key: chrn_your_key" \
  -H "Content-Type: application/json" \
  -d '{"query": "Who joined the team recently?"}'

Response:

{
  "results": [
    {
      "subject": "Alice",
      "verb": "joined",
      "object": "the team as Lead Engineer",
      "timestamp": "2026-07-15T00:00:00Z",
      "confidence_score": 0.94
    }
  ]
}

๐Ÿ”Œ MCP Server โ€” Claude, Cursor, VS Code

Smriti ships with a built-in Model Context Protocol (MCP) server. It runs as a lightweight local process โ€” no backend to host, no infrastructure to manage.

Install

pip install smriti-kaal-mcp
# or zero-install via uvx (no pip needed):
uvx smriti-kaal-mcp

Configure Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "smriti": {
      "command": "uvx",
      "args": ["smriti-kaal-mcp"],
      "env": {
        "SMRITI_API_KEY": "chrn_your_key_here",
        "SMRITI_SOURCE_ID": "claude-desktop"
      }
    }
  }
}

Configure Cursor

Add to .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "smriti": {
      "command": "uvx",
      "args": ["smriti-kaal-mcp"],
      "env": {
        "SMRITI_API_KEY": "chrn_your_key_here",
        "SMRITI_SOURCE_ID": "cursor-project"
      }
    }
  }
}

Available MCP Tools

Tool

What It Does

smriti_remember

Store text โ€” auto-extracts causal SVO events

smriti_recall

Hybrid search (semantic + temporal) across all memories

smriti_timeline

Generate a chronological timeline of events

smriti_forget

Supersede outdated memories cleanly

smriti_health

View service health and DB status


๐Ÿ˜ Bring Your Own Database (BYODB)

Keep your memory data in your own infrastructure using Supabase (PostgreSQL + pgvector). Just pass your Session Pooler URL as a header โ€” no code changes required:

curl -X POST https://smriti-kaal.vercel.app/ingest \
  -H "X-API-Key: chrn_your_key" \
  -H "X-Supabase-Url: postgresql://postgres.xxxx:YOUR_PASSWORD@aws-0-REGION.pooler.supabase.com:5432/postgres" \
  -H "Content-Type: application/json" \
  -d '{"source_id": "my-app", "events": [{"text": "Alice joined the team"}]}'

๐Ÿ‘‰ Full 3-step BYODB setup guide โ†’


๐Ÿ—๏ธ Architecture

When you send text to Smriti, it passes through four discrete layers:

  1. Ingest Gate โ€” Accepts raw text from chat logs, emails, or code

  2. Decomposition โ€” LLM extracts structured Subject โ†’ Verb โ†’ Object tuples

  3. Temporal Binding โ€” Assigns exact temporal boundaries to track state changes over time

  4. Dual-Store Indexing โ€” Saves to PostgreSQL (exact chronological queries) + pgvector (semantic search)


๐Ÿ“– REST API Reference

Base URL: https://smriti-kaal.vercel.app
Auth: X-API-Key: chrn_your_key

Endpoint

Method

Purpose

/billing/keys

POST

Generate a new API key

/ingest

POST

Convert raw text into structured memories

/query

POST

Natural language memory retrieval

/agent/run

POST

Chat with the memory-aware LangGraph agent

/health

GET

System uptime and DB status


๐Ÿ’ป Integration Examples

Node.js

const headers = { "X-API-Key": "chrn_...", "Content-Type": "application/json" };

await fetch("https://smriti-kaal.vercel.app/ingest", {
  method: "POST", headers,
  body: JSON.stringify({ source_id: "app", events: [{ text: "Upgraded to Pro" }] })
});

const res = await fetch("https://smriti-kaal.vercel.app/query", {
  method: "POST", headers,
  body: JSON.stringify({ query: "Who upgraded?" })
});
console.log(await res.json());

Python

import httpx

API = "https://smriti-kaal.vercel.app"
HEADERS = {"X-API-Key": "chrn_..."}

httpx.post(f"{API}/ingest", headers=HEADERS, json={
    "source_id": "my-app",
    "events": [{"text": "User completed onboarding on July 15"}]
})

result = httpx.post(f"{API}/query", headers=HEADERS, json={"query": "What did the user do?"})
print(result.json()["results"])

โš™๏ธ Environment Variables (MCP)

Variable

Required

Description

SMRITI_API_KEY

โœ…

Your API key (chrn_...) from smriti-kaal.vercel.app

SMRITI_SOURCE_ID

No

Namespace for your memories (e.g. claude-desktop, my-project)

SMRITI_SUPABASE_URL

No

Session Pooler URL to route memory to your own Supabase DB

SMRITI_SCOPE

No

Memory scope (default unless you need multi-tenant isolation)

SMRITI_BASE_URL

No

Override the API base URL (advanced)


๐Ÿ“Š Pricing

Tier

Price

Limits

Explorer

Free

10,000 events/mo ยท 3 connected tools

Builder

$49/mo

500,000 events/mo ยท 25 tools

Scale

$249/mo

5,000,000 events/mo ยท unlimited tools

Manage keys and view memory timelines at smriti-kaal.vercel.app


๐Ÿ”’ Security

  • All API requests require a bearer token (X-API-Key)

  • API keys are scoped per source_id โ€” one application cannot read another's memories

  • BYODB mode: your data never touches Smriti's cloud storage

  • MCP server runs locally on your machine; only outbound HTTPS calls are made


๐Ÿ“„ License

MIT ยฉ 2026 Smriti / Chronos Labs


Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to remember and search everything that appeared on your screen using local OCR and embeddings. Provides tools for semantic search, activity timeline, and code change tracking.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Long-term memory for Claude Code, Cursor, and MCP clients with zero-config embedded PostgreSQL. Stores and retrieves facts, preferences, and decisions using 4-channel semantic, BM25, entity, and temporal search with cross-encoder reranking.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Gives Claude durable, queryable memory by logging every prompt/response to Supabase Postgres and exposing MCP tools to save, search, and retrieve conversation history.
    225 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides Claude with shared, durable memory across clients, backed by Supabase Postgres and pgvector. It lets agents save decisions, preferences, and project context, then recall them later with project-scoped visibility and semantic or text search.
    8 npm
    1
    MIT