Get the FREE Ultimate OpenClaw Setup Guide →

engram

🧠 Persistent memory for AI agents. SQLite for agent state. Zero cloud dependencies. Local embeddings. MCP-native integration with Claude Desktop/Code, Cursor, Windsurf & more.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio hbarefoot-engram engram start --mcp-only

How to use

Engram is a local-first memory server that integrates with MCP clients to give AI agents persistent memory without relying on cloud services. It runs on your machine and exposes a REST API as well as an MCP-native interface, allowing agents like Claude, Cursor, Cline, and Windsurf to store memories, recall relevant information, and manage memory through a set of tools. The server provides a web dashboard for browsing memories, supports namespace isolation to organize data, and includes safety features such as secret detection to avoid storing sensitive information. With the MCP integration, your agent can call engram_remember to store memories and engram_recall to retrieve them, enabling long-term, context-aware interactions across sessions and clients. Tools include memory creation, retrieval, deletion, feedback on usefulness, context generation, and a health/status check, all designed to work seamlessly via the MCP protocol.

To use Engram with an MCP client, start the server and configure the client to point at the Engram MCP endpoint. Once connected, your agent can store memories with metadata like category, namespace, and tags, and later query memories semantically or via filters. The REST API is also available for custom integrations, along with a web dashboard at the default port for direct management and exploration of memories.

How to install

Prerequisites:\n- Node.js v20.x or newer installed on your system (Engram is distributed as an npm package).\n- npm or yarn for package installation.\n\nInstallation steps:\n1) Install Engram globally via npm:\nbash\nnpm install -g @hbarefoot/engram\n\n2) Verify installation:\nbash\nengram --version\n\n3) Start Engram MCP server (MCP-enabled mode):\nbash\nengram start --mcp-only\n\n4) (Optional) If you prefer using npx without a global install:\nbash\nnpx -y @hbarefoot/engram start --mcp-only\n\n5) Access the REST API at http://localhost:3838 (default) and connect MCP clients to the Engram MCP endpoint. If you need a non-default port, set the ENGRAM_PORT environment variable (see additional notes).

Additional notes

Notes and tips:\n- Default REST API port is 3838. To change it, set the ENGRAM_PORT environment variable before starting Engram (e.g., ENGRAM_PORT=3940).\n- Engram is designed to run entirely locally with SQLite storage and local embeddings; no external cloud services are required.\n- Use the MCP tool set to interact with Engram: engram_remember, engram_recall, engram_forget, engram_feedback, engram_context, and engram_status. These tools enable memory storage, retrieval, lifecycle management, and quality improvements over time.\n- For Claude Desktop integration, you can add Engram as an MCP server in the client config with command and arguments corresponding to starting Engram in MCP-only mode.\n- If you encounter performance issues on CPU, the local embeddings model (all-MiniLM-L6-v2) is lightweight and designed for CPU usage; ensure your device has adequate memory for the SQLite store and vector indices.\n- The Web Dashboard is available when running the full server (not always in MCP-only mode).

Related MCP Servers

Sponsor this space

Reach thousands of developers ↗