exocortex
Personal unified memory system for AI agents. SQLite-backed, local-first, hybrid RAG retrieval with MCP integration.
claude mcp add --transport stdio shawnhack-exocortex node /path/to/exocortex/packages/mcp/dist/index.js
How to use
Exocortex provides a local-first memory store with embeddings, full-text indexing, and a unified retrieval API exposed through an MCP server. It supports a wide range of tools via the MCP protocol, including memory_store, memory_search, memory_get, memory_update, memory_context, memory_browse, memory_feedback, memory_entities, memory_timeline, memory_ingest, memory_link, and more. The server runs locally and communicates over stdio so you can connect a variety of agents and CLIs that implement the MCP interface. Use it to persist memories across sessions, enrich them with embeddings, and retrieve them with hybrid ranking (RRF + BM25) and graph-aware expansion for richer context. The system also exposes a REST API and a React dashboard for browser-based management, plus a CLI for direct operations.
How to install
Prerequisites:
- Node.js >= 20
- pnpm (package manager)
- Git
Installation steps:
- Clone the repository: git clone https://github.com/shawnhack/exocortex.git
- Navigate to the project root: cd exocortex
- Install dependencies and build (first build downloads the embedding model): pnpm install pnpm build
- Start the MCP server via the MCP client/agent integration (see Quick Start) or connect via an MCP client using the path to the built MCP entrypoint, e.g.:
Example for an external MCP client when configured to invoke the server via node
node /path/to/exocortex/packages/mcp/dist/index.js - Open the dashboard (if using the REST API and dashboard): http://localhost:3210
Notes:
- The exact command to launch the MCP server may vary depending on your integration (CLI, VS Code, Claude, Gemini, etc.). The recommended integration uses the node entrypoint exposed by the @exocortex/mcp package.
Additional notes
Tips and considerations:
- The server runs embeddings locally using HuggingFace transformers—no external API keys required for embeddings.
- It stores memories in SQLite with a vector store for embeddings and a BM25 index for full-text search.
- The MCP tools support a wide range of operations including ingestion (markdowns), graph operations (memory_link, memory_graph), maintenance tasks (memory_maintenance), and knowledge management (memory_consolidate, memory_diff).
- Environment variables are typically optional; you can override defaults via your MCP client config or the server’s environment. Typical concerns include memory usage for embeddings and model sizes—first build downloads the embedding model (~80MB).
- If you encounter issues with connections from MCP clients, ensure the server process is reachable and that the path to the MCP entrypoint is correct in your integration configuration.
Related MCP Servers
openapi
OpenAPI definitions, converters and LLM function calling schema composer.
neurolink
Universal AI Development Platform with MCP server integration, multi-provider support, and professional CLI. Build, test, and deploy AI applications with multiple ai providers.
omega-memory
Persistent memory for AI coding agents
docmole
Dig through any documentation with AI - MCP server for Claude, Cursor, and other AI assistants
skill-to
Convert AI Skills (Claude Skills format) to MCP server resources - Part of BioContextAI
subcog
Persistent memory system for AI coding assistants. Captures decisions, learnings, and context from coding sessions. Features hybrid search (semantic + BM25), MCP server integration, SQLite persistence with knowledge graph, and proactive memory surfacing. Written in Rust.