ICM
Permanent memory for AI agents. Single binary, zero dependencies, MCP native.
What is ICM?
ICM is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to permanent memory for ai agents. single binary, zero dependencies, mcp native.
Permanent memory for AI agents. Single binary, zero dependencies, MCP native.
This server falls under the Knowledge & Memory category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Permanent memory for AI agents. Single binary, zero dependen
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx icmConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use ICM
ICM (Infinite Context Memory) is a single-binary, zero-dependency MCP server written in Rust that provides persistent memory for AI agents across sessions and tools. It stores memories in a local SQLite database using hybrid search — combining FTS5 keyword search and semantic vector embeddings — so agents can recall relevant context from past conversations with high accuracy. AI developers and power users install ICM to give Claude Code, Claude Desktop, Cursor, Gemini CLI, and 13 other supported tools a shared, permanent memory layer that persists across restarts.
Prerequisites
- ICM binary installed via Homebrew, the install script, or built from source with Rust/Cargo
- An MCP-compatible client such as Claude Desktop, Claude Code, Cursor, or any of the 17 supported tools
- Optional: Rust toolchain (cargo) if building from source
- Optional: ICM_DB_PATH environment variable to customize the SQLite database location
Install ICM binary
Install ICM using the method appropriate for your platform. Homebrew is the easiest on macOS/Linux.
# macOS / Linux via Homebrew:
brew tap rtk-ai/tap && brew install icm
# macOS / Linux via install script:
curl -fsSL https://raw.githubusercontent.com/rtk-ai/icm/main/install.sh | sh
# Windows PowerShell:
irm https://raw.githubusercontent.com/rtk-ai/icm/main/install.ps1 | iex
# From source (requires Rust):
cargo install --path crates/icm-cliInitialize ICM for your tools
Run icm init to automatically configure ICM integration across all 17 supported AI tools. Or use --mode flags to configure specific integration types.
# Configure all supported tools at once:
icm init
# Or configure specific integration modes:
icm init --mode skill # Claude Code slash commands and rules
icm init --mode hook # Auto-extract and auto-recall hooks
icm init --mode cli # Add ICM instructions to tool filesRegister ICM as an MCP server in Claude Code
Add ICM as an MCP server to Claude Code using the claude mcp add command.
claude mcp add icm -- icm serveConfigure Claude Desktop manually
Alternatively, add ICM to claude_desktop_config.json to use it with Claude Desktop.
{
"mcpServers": {
"icm": {
"command": "icm",
"args": ["serve"],
"env": {
"ICM_DB_PATH": "/Users/you/.icm/memories.db"
}
}
}
}Store and recall your first memory
Test ICM from the command line by storing a memory and then recalling it with a semantic query.
# Store a memory:
icm store -t "project" -c "The auth service uses JWT tokens with 24h expiry" -i high -k "auth,jwt"
# Recall relevant memories:
icm recall "authentication token expiry" --topic "project" --limit 5ICM Examples
Client configuration
Claude Desktop configuration for ICM with a custom database path and compact mode to reduce token usage.
{
"mcpServers": {
"icm": {
"command": "icm",
"args": ["serve", "--compact"],
"env": {
"ICM_DB_PATH": "/Users/you/Library/Application Support/dev.icm.icm/memories.db",
"ICM_NO_EMBEDDINGS": "0"
}
}
}
}Prompts to try
Example prompts to use ICM's memory capabilities through Claude Desktop or Claude Code.
- "Remember that the production database password was rotated on June 1st and store it with high importance"
- "What do you remember about the authentication system we discussed last week?"
- "Store this as a memory: the API rate limit is 1000 requests per minute per user"
- "Show me all memories tagged with 'architecture'"
- "Consolidate your memories about the payment service into a summary"Troubleshooting ICM
icm command not found after installation
Ensure the installation directory is on your PATH. For Homebrew, run 'brew doctor' to check. For the install script, it typically installs to ~/.local/bin — add 'export PATH=$PATH:~/.local/bin' to your shell profile.
Semantic search not working or returning only keyword matches
Embedding-based semantic search requires downloading the multilingual-e5-base model on first run. Ensure you have internet access on first launch. If you want to skip embeddings entirely, set ICM_NO_EMBEDDINGS=1, but this disables semantic search.
Memories are not persisting between sessions
Verify ICM_DB_PATH is set consistently across all tool configurations and points to a writable directory. If running multiple tool configurations, they must all point to the same database file to share memory.
Frequently Asked Questions about ICM
What is ICM?
ICM is a Model Context Protocol (MCP) server that permanent memory for ai agents. single binary, zero dependencies, mcp native. It connects AI assistants to external tools and data sources through a standardized interface.
How do I install ICM?
Follow the installation instructions on the ICM GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with ICM?
ICM works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is ICM free to use?
Yes, ICM is open source and available under the Apache-2.0 license. You can use it freely in both personal and commercial projects.
ICM Alternatives — Similar Knowledge & Memory Servers
Looking for alternatives to ICM? Here are other popular knowledge & memory servers you can use with Claude, Cursor, and VS Code.
MemPalace
★ 52.6kA local AI memory system that stores all conversations verbatim and organizes them into navigable structures. It provides 19 MCP tools for AI assistants to search and retrieve past decisions, debugging sessions, and architecture debates automatically
Kratos
★ 25.7k🏛️ Memory System for AI Coding Tools - Never explain your codebase again. MCP server with perfect project isolation, 95.8% context accuracy, and the Four Pillars Framework.
Context Mode
★ 15.4kAn MCP server that preserves LLM context by intercepting large data outputs and returning only concise summaries or relevant sections. It enables efficient sandboxed code execution, file processing, and documentation indexing across multiple programm
Memu
★ 13.7kMemory for 24/7 proactive agents like OpenClaw.
MemOS
★ 9.3kMemOS (Memory Operating System) is a memory management operating system designed for AI applications. Its goal is: to enable your AI system to have long-term memory like a human, not only remembering what users have said but also actively invoking, u
Everos
★ 5.4kBuild, evaluate, and integrate long-term memory for self-evolving agents.
Browse More Knowledge & Memory MCP Servers
Explore all knowledge & memory servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up ICM in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use ICM?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.