Skip to content

cmxdev1/MNEMOS

Repository files navigation

MNEMOS

Encrypted, wallet-owned memory for AI.

TypeScript Next.js React Neon Postgres Vercel License: MIT npm

Live App  ·  Documentation  ·  MCP Server on npm


MNEMOS gives AI assistants long-term memory about you — your goals, decisions, values, relationships, and health — without ever exposing your data to a third party. All memories are encrypted client-side with AES-256-GCM before they leave your browser. Only your wallet can decrypt them.

Connect via MCP and your AI has persistent, structured context across every conversation.


Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        YOUR BROWSER                             │
│                                                                 │
│  Wallet Signs  →  SHA-256(signature)  →  AES-256-GCM Key       │
│                         ↓                                       │
│              Encrypt(plaintext, key) = ciphertext               │
└──────────────────────────────┬──────────────────────────────────┘
                               │  ciphertext only (never plaintext)
                               ▼
┌─────────────────────────────────────────────────────────────────┐
│                       MNEMOS SERVER                             │
│                                                                 │
│  Neon Postgres  ←  ciphertext + wallet + category + tags        │
│                                                                 │
│  Server has zero access to plaintext content.                   │
└──────────────────────────────┬──────────────────────────────────┘
                               │  MCP protocol
                               ▼
┌─────────────────────────────────────────────────────────────────┐
│                      YOUR AI CLIENT                             │
│                                                                 │
│  Claude / Cursor / any MCP-compatible client                    │
│  ← memories surfaced automatically on every query →            │
└─────────────────────────────────────────────────────────────────┘

Memory Modules

# Module What It Stores
01 Context General knowledge, facts, preferences, notes
02 Relationships People, contacts, social context, interactions
03 Goals Objectives, milestones, aspirations with status tracking
04 Decisions Choices made, rationale, outcome tracking
05 Health Physical, mental, and wellbeing data over time
06 API Gateway Third-party integrations and external data feeds
07 Principles Values, beliefs — your personal constitution

How It Works

1.  wallet.connect()                        // connect your Ethereum wallet
2.  wallet.signMessage(SIGN_MSG)            // one-time signature per session
3.  SHA-256(signature) → CryptoKey          // AES-256-GCM key derived in-browser
4.  crypto.encrypt(plaintext, key)          // memory encrypted before leaving browser
5.  db.write({ ciphertext, wallet, tags })  // only ciphertext reaches the server
6.  mcp.recall(query)                       // AI retrieves relevant memories at runtime

MCP Server

MNEMOS ships a standalone MCP server so any MCP-compatible AI client can access your vault.

Quick start

npx @mnemos-ai/mcp-server

Claude Desktop

{
  "mcpServers": {
    "mnemos": {
      "command": "npx",
      "args": ["-y", "@mnemos-ai/mcp-server"],
      "env": {
        "MNEMOS_API_URL": "https://mnemosbase.com",
        "MNEMOS_API_KEY": "your-api-key-from-vault"
      }
    }
  }
}

Available Tools

Tool Description
remember Store a new memory in your vault
recall Semantic search across your memories
forget Delete a memory by stream ID
update_memory Update an existing memory
list_tags List all tags in your vault
list_categories List available memory categories

Stack

Language      TypeScript 5.x
Framework     Next.js 15 (App Router) + React 19
Database      Neon Postgres (serverless)
Encryption    AES-256-GCM — wallet-derived key — client-side only
Auth          EIP-191 wallet signatures (wagmi + viem)
AI Protocol   Model Context Protocol (MCP)
Deployment    Vercel

Local Development

Prerequisites: Node.js 18+, Neon Postgres database, Ethereum wallet for testing

git clone https://github.com/cmxdev1/MNEMOS.git
cd MNEMOS
npm install
cp .env.example .env.local

Fill in .env.local:

DATABASE_URL=          # Neon connection string
ENCRYPTION_KEY=        # 32-byte hex — openssl rand -hex 32
ANTHROPIC_API_KEY=     # optional — enables AI title/tag suggestions
NEXT_PUBLIC_SITE_URL=http://localhost:3000
npm run dev            # → http://localhost:3000

Project Structure

src/
├── app/
│   ├── api/           API routes — memory CRUD, MCP endpoint, enrichment
│   ├── docs/          Documentation pages
│   ├── vault/         Vault dashboard
│   └── waitlist/      Waitlist signup
├── components/
│   ├── vault/         Vault dashboard components
│   ├── home/          Homepage components
│   └── ui/            Shared UI primitives
├── lib/               Core logic — crypto, auth, DB, types
└── providers/         React context providers
mcp/                   Standalone MCP server package (@mnemos-ai/mcp-server)

Documentation

Full docs at mnemosbase.com/docs:


Security

All memory content is encrypted before it leaves your browser. The server stores only ciphertext and has no access to plaintext — a database compromise exposes nothing readable.

Found a vulnerability? See SECURITY.md. Do not open a public issue.


Contributing

See CONTRIBUTING.md.

License

MIT — see LICENSE.

About

Sovereign AI Memory Protocol

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors