Skip to main content
Glama

Cairn

One private memory, shared by the AI tools you choose.

Cairn keeps the background you keep repeating — your projects, decisions, and preferences — in one private place you control, and lets the AI tools you authorize look up only the parts they need.

Cairn is a working name, chosen so implementation could proceed. It is not an approved brand. Everything user-visible comes from packages/config/src/product.ts.

Run it

pnpm install
pnpm setup      # generates a local encryption key and creates the database
pnpm demo:seed  # optional: fills it with an example project
pnpm dev        # http://localhost:3000

No account, API key, or cloud service is required. Sign in with any email address; the code is printed by the server rather than emailed, and the interface says so.

Requires Node 20.9+ and pnpm 9. The local database is a real PostgreSQL build (PGlite) that runs in-process — no Docker, no server to install.

Related MCP server: engram

What it does

  1. You add something: paste a note, upload a document, or read a web page.

  2. It finds the things worth remembering and shows you each one, with the exact sentence it came from.

  3. You keep, reword, or throw away anything. Nothing is saved until you keep it.

  4. You ask questions, and every answer shows its sources.

  5. If you want, you connect an AI tool. It can look up only what you saved, and you can turn it off at any time.

Everything you keep is stored as ordinary Markdown you can download at any moment, and the whole workspace can be deleted in one step.

Checks

pnpm verify

Runs format, lint, typecheck, unit tests, integration tests, security tests, MCP contract tests, and a production build. Browser tests run separately:

pnpm test:e2e:install   # once
pnpm test:e2e

Command

What it proves

pnpm test

Encryption, canonical Markdown, policy, extraction, archive formats

pnpm test:integration

Paste → review → approve → cited answer; conflicts; index rebuild; backup and restore

pnpm test:security

Tenant isolation and RLS, disclosure rules, immutability, key rotation, redaction, budgets

pnpm test:mcp

The MCP surface as a real client sees it

pnpm test:e2e

The journey in a browser, desktop and mobile, including accessibility

Layout

apps/web             the website and its application API
apps/worker          the background worker (needs a PostgreSQL database)
packages/domain      entities, policies, and every external interface
packages/db          schema, reviewed SQL migrations, repositories, tenancy
packages/crypto      envelope encryption and key providers
packages/vault       versioned Markdown, export, backup, restore
packages/search      embeddings, retrieval, citations, answers
packages/ingestion   normalize, chunk, extract, reconcile, jobs
packages/connectors  paste, upload, URL, Google Drive, GitHub
packages/mcp         the MCP server and its authorization
packages/ui          the accessible component set
packages/config      typed configuration and product identity

Documentation

Honest limits

  • This is not end-to-end encrypted. While the application is working on your memory it can read it; that is what lets it search and answer.

  • No SOC 2, GDPR compliance, or zero-retention claim is made or implied.

  • Google Drive and GitHub are implemented but need credentials; without them they report "setup required" and use sample documents.

  • The remote MCP endpoint's OAuth path is implemented but has not been exercised against a live issuer.

Project memory

This repository also carries the unified project memory the product was built from, under memory/. AGENTS.md and CLAUDE.md tell Codex and Claude Code how to read and update it.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/johnmontejano/cairn'

If you have feedback or need assistance with the MCP directory API, please join our Discord server