@memory-module/mcp
v0.1.0
Published
MCP server for Memory Module — agentic memory for LLM agents
Downloads
68
Readme
@memory-module/mcp
MCP server for Memory Module — agentic memory for LLM agents.
Exposes the full Memory Module API as 10 MCP tools. Works with Claude Code, Cursor, Windsurf, VS Code Copilot, Zed, and any MCP-compatible client.
Quick Start
Add to your MCP client config:
Claude Code (.claude.json):
{
"mcpServers": {
"memory-module": {
"command": "npx",
"args": ["-y", "@memory-module/mcp"],
"env": {
"MEMORY_API_URL": "https://api.memorymodule.io",
"MEMORY_API_KEY": "your-api-key"
}
}
}
}Cursor / Windsurf (.cursor/mcp.json or equivalent):
{
"mcpServers": {
"memory-module": {
"command": "npx",
"args": ["-y", "@memory-module/mcp"],
"env": {
"MEMORY_API_URL": "https://api.memorymodule.io",
"MEMORY_API_KEY": "your-api-key"
}
}
}
}Tools
Memory
| Tool | Description |
|------|-------------|
| store_memory | Store a new memory with auto-generated keywords, tags, context, and links |
| search_memories | Semantic search with similarity scores and linked memories |
| list_memories | Paginated listing with optional dimension filters |
| get_memory | Get a single memory by ID |
| delete_memory | Delete a memory and clean up bidirectional links |
Batch & Ingestion
| Tool | Description |
|------|-------------|
| batch_store_memories | Store multiple memories asynchronously |
| ingest_document | Chunk and store a long document as memories |
| get_job_status | Check async job progress |
Configuration
| Tool | Description |
|------|-------------|
| list_dimensions | List registered custom filter dimensions |
| register_dimensions | Register new filterable dimensions |
Configuration
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| MEMORY_API_KEY | Yes | — | API key for Memory Module |
| MEMORY_API_URL | No | http://localhost:8080 | Memory Module API base URL |
| REQUEST_TIMEOUT_MS | No | 30000 | Request timeout in milliseconds |
Examples
Store a memory:
The agent calls store_memory with content text. The A-Mem engine auto-generates keywords, tags, and context, then asynchronously discovers links to related memories.
Search with filters:
Register custom dimensions first with register_dimensions (e.g., ["session_id", "project_id"]), then pass them as filters in search_memories to scope results.
Ingest a document:
Call ingest_document with the full text. The system chunks it and stores each chunk as a separate memory. Use get_job_status to track progress.
Development
npm install
npm run build # Compile TypeScript
npm run dev # Run with tsx (hot reload)
npm run inspector # Open MCP Inspector UILicense
MIT
