v1.5.0 · open source · local-first

Memory layer
for every AI.

Tessera sits between you and your AI tools. It captures what you discuss, indexes your documents, and makes everything searchable across Claude, ChatGPT, Gemini, and Copilot.

No cloud. No API keys. Your data stays on your machine, encrypted with AES-256.

claude
U

What auth method did we go with?

T
recall"JWT + refresh token. decided: 3/12 ChatGPT"

You decided on JWT + refresh token. Discussed in your ChatGPT session on March 12.

saved via ChatGPT · recalled in Claude

the problem

Every AI session
starts from zero.

You spend 20 minutes explaining your project to Claude. Next session, gone. Switch to ChatGPT for a different task — start over. Try Gemini — start over again.

Decisions, context, preferences — scattered across sessions that will never talk to each other.

×Claude doesn't know what you discussed in ChatGPT
×Last week's decisions vanish when the session ends
×You re-explain the same context every single time
×Your documents aren't accessible inside AI tools
×No way to search across past conversations
×No memory of your preferences or working style

the solution

One local knowledge base.
Every AI tool.

Tessera runs on your machine. Captures memories. Indexes documents. Builds a knowledge graph. Makes everything available to Claude, ChatGPT, Gemini, and Copilot simultaneously.

Claude
MCP
ChatGPT
Actions
Gemini
REST
Copilot
REST
Tessera
58 tools54 endpointsAES-256local
Memories
auto-captured
Documents
40+ types
Knowledge Graph
entities & relations

how it works

01

Install in 30 seconds

One pip install. One setup command. Tessera detects Claude Desktop and configures itself as an MCP server. No Docker, no database, no cloud account.

For ChatGPT, Gemini, Copilot — start the HTTP server with tessera api. ChatGPT Custom GPT Actions spec included.

$ pip install project-tessera
$ tessera setup
✓ Claude Desktop configured
✓ MCP server ready (58 tools)
$ tessera api
✓ HTTP :8394 (54 endpoints)
02

Feed it your knowledge

Point at any folder. PDF, DOCX, XLSX, CSV, Markdown, Python, TypeScript, HTML, YAML, JSON, images (OCR) — 40+ formats. Chunked, embedded, stored locally.

Conversations auto-captured. Decisions, preferences, facts — tagged, scored, deduplicated against existing memories.

$ tessera ingest ~/projects/api-docs
  scanning...
✓ 847 documents indexed
✓ 12,340 chunks embedded

$ tessera status
  memories:  2,156
  entities:  489
  relations: 1,203
03

Every AI remembers

Ask Claude about a decision you made in ChatGPT last week. Ask Gemini to find a document you discussed with Copilot. One knowledge base bridges them all.

Search by meaning (vector), keyword (BM25), entity graph, or natural language time — bilingual queries work in English and Korean.

# Claude (MCP)
recall("auth method")
→ JWT + refresh tokens (Mar 12)

# ChatGPT (REST)
GET /api/recall?q=auth+method
→ same result

# Natural language time
recall("decisions last week")
→ 3 decisions found
58
MCP tools
54
HTTP endpoints
1,102
tests passing
40+
file types

capabilities

58 MCP tools. 54 HTTP endpoints. 11 CLI commands. Everything below works out of the box.

Auto Memory

Conversations auto-captured, tagged, classified by type (decision, preference, fact, procedure). Importance scoring. Duplicate detection and merge. Old memories decay unless reinforced.

Document Ingestion

PDF, DOCX, XLSX, CSV, Markdown, Python, JS, TS, HTML, YAML, JSON, XML, images via OCR. 40+ formats. Incremental re-index on file changes. Point at a folder.

Cross-AI

MCP for Claude Desktop (stdio + SSE). REST API with 54 endpoints for ChatGPT, Gemini, Copilot. ChatGPT Custom GPT Actions OpenAPI spec. Chrome extension for web AI tools.

Knowledge Graph

Entities and relations auto-extracted. Temporal validity — knowledge expires when context changes. Sleep-cycle consolidation merges fragmented memories.

Encrypted Vault

AES-256-CBC. Per-memory encryption toggle. Lock, unlock, store, retrieve via MCP + REST. No master key stored — derived from passphrase at runtime.

Smart Retrieval

Vector (semantic), keyword (BM25), graph (entity traversal). Unified search combines all three. Bilingual NL time expressions — "last week", "yesterday", "early March" parse automatically in English and Korean.

User Profiling

Long-term profile built from conversations. Communication style, expertise areas, decision patterns. AI reads your profile for personalized responses.

Project Spaces

Isolate knowledge by project. Each has its own memory scope. Switch contexts without cross-contamination. List, assign, query within a project.

Provenance Chain

Every memory tracks origin — which AI session, which document, which parent memories. Trace any knowledge back to its source. Full lineage chain.

Session Priming

Start every session with context. Recent decisions, active topics, preferences, last session summary — assembled into a briefing automatically. No cold starts.

comparison

Tessera vs existing AI memory tools. Feature by feature.

TesseraMem0Basic Memorymcp-memory
Local-first
Auto memory
40+ file types
Cross-AI REST
Knowledge graph
NL time queries
Encrypted vault
Consolidation
User profiling
Project spaces
Provenance
Session priming
ChatGPT Actions
Chrome extension
Web dashboard
MCP tools58634
HTTP endpoints5400
Tests1,102

get started

Python 3.11+ required. Runs on macOS, Linux, Windows.

tessera setup auto-detects Claude Desktop and writes MCP config. For other AI tools, tessera api starts the HTTP server.

Or run without installing:uvx project-tessera setup

Python 3.11+LanceDBFastEmbedSQLiteFastAPIMCPAES-256PyPIuvxAGPL-3.0
# Install
pip install project-tessera

# Configure Claude Desktop
tessera setup

# Index documents
tessera ingest ~/docs

# Start REST API
tessera api

# Status
tessera status
✓ memories: 2,156 | entities: 489

Your AI should remember you.

Open source. Local-first. Encrypted. One install away from persistent AI memory.