Engram
Persistent, verbatim, searchable memory for AI assistants — one memory across every MCP client.
Links
README
From the repo.
Engram
Memory infrastructure for AI agents. Store every conversation verbatim. Search by meaning.
Engram is an MCP-native memory server that stores complete, uncompressed conversation transcripts and makes them searchable via semantic search. Connect any MCP-compatible client — Claude Desktop, Claude Code, Cursor, Windsurf, Zed — and your agent remembers everything across sessions.
Quick start
Claude Code
/plugin marketplace add get-engram/engram
/plugin install engram@engram
Restart Claude Code and approve access in the browser. There is no API key to copy and no config file to edit — the server implements the MCP authorization flow (RFC 9728 / 8414 / 7591, PKCE), so the client discovers it, registers itself, and signs you in. A free account is created as part of signing in.
The plugin also ships a skill that tells Claude when to search memory and what is worth saving, so context accumulates without being asked.
Any other MCP client
Point it at the remote server and let OAuth handle access:
{
"mcpServers": {
"engram": {
"type": "http",
"url": "https://mcp.getengram.app/mcp"
}
}
}
For a client that only speaks stdio, bridge to the remote server with mcp-remote — it drives the same browser OAuth flow, so there is still no key to copy:
{
"mcpServers": {
"engram": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.getengram.app/mcp"]
}
}
}
(An older version of this README suggested npx @getengram/cli mcp; the CLI
has no such command and that configuration never worked.)
How it works
- Verbatim storage — every message stored exactly as sent, no summarization or compression
- Semantic search — find relevant context by meaning using bge-base-en-v1.5 embeddings
- MCP-native — speaks the Model Context Protocol natively, works with any compatible client
- Multi-tenant — per-organization isolation, team seats, and API key management
Architecture
Runs entirely on Cloudflare's developer platform:
- Workers — Hono.js API and MCP server
- D1 — SQLite at the edge for messages and metadata
- Vectorize — semantic search index
- Workers AI — embedding generation
Read the full architecture deep-dive.
MCP tools
Engram exposes 6 tools via MCP:
| Tool | Description |
|---|---|
create_conversation | Start a new conversation with optional title, tags, metadata |
append_messages | Add messages to an existing conversation |
search | Semantic search across all conversations |
get_conversation | Retrieve a conversation with its messages |
list_conversations | List conversations with filtering and pagination |
delete_conversation | Remove a conversation and its data |
See the API reference for full parameters and examples.
Packages
| Package | Description |
|---|---|
apps/mcp-server | Cloudflare Worker — MCP server and REST API |
apps/cli | CLI and MCP bridge (@getengram/cli) |
packages/sdk | TypeScript SDK (@getengram/sdk) |
packages/db | Database queries and migrations |
packages/shared | Shared constants, types, and utilities |
Integration guides
Pricing
| Plan | Price | Messages/month |
|---|---|---|
| Free | $0 | 1,000 |
| Pro | $9/mo | 100,000 |
| Team | $27/seat/mo | 500,000 |
| Enterprise | Custom | Unlimited |
Links
- Website: getengram.app
- Documentation: getengram.app/docs
- Blog: getengram.app/blog
- npm: @getengram/cli
License
Business Source License 1.1 — see LICENSE for details.
Config for your environment
Use the endpoint URL below in your config. No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "https://mcp.getengram.app/mcp"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.