Skip to main content
Glama

MCP Memory Server

by hannesnortje
MEMORY_SERVER_README.md4.82 kB
# Memory MCP Server A streamlined MCP server for AI agent memory management using Qdrant vector database. ## Overview This memory server provides 6 essential memory management tools for AI agents running in Cursor IDE. It's built using the working cursor server pattern and stripped down to focus solely on memory operations. ## Features ### Memory Management Tools 1. **`set_agent_context`** - Set the current agent's context for memory operations 2. **`add_to_global_memory`** - Add information to global memory accessible by all agents 3. **`add_to_learned_memory`** - Add learned patterns or insights for future tasks 4. **`add_to_agent_memory`** - Add information to specific agent's memory 5. **`query_memory`** - Search and retrieve relevant information from memory 6. **`compare_against_learned_memory`** - Compare current situation against learned patterns ### Technical Features - **Vector Database**: Qdrant for efficient similarity search - **Embeddings**: sentence-transformers (all-MiniLM-L6-v2) - **Memory Types**: Global, Learned, and Agent-specific memory collections - **MCP Protocol**: 2024-11-05 compatible - **Python Environment**: Uses cursor's Python environment for compatibility ## Installation & Setup ### Prerequisites 1. **Qdrant Vector Database** running on `localhost:6333` 2. **Python Environment** with required dependencies 3. **Cursor IDE** with MCP support ### Configuration The server is configured in `~/.cursor/mcp.json`: ```json { "mcpServers": { "memory-server": { "command": "/home/hannesn/.cache/pypoetry/virtualenvs/mcp-server-4zyLa6-K-py3.12/bin/python", "args": [ "/media/hannesn/storage/Code/MCP/memory_server.py" ], "cwd": "/media/hannesn/storage/Code/MCP", "env": { "PYTHONPATH": "/media/hannesn/storage/Code/MCP", "QDRANT_HOST": "localhost", "QDRANT_PORT": "6333", "EMBEDDING_MODEL": "all-MiniLM-L6-v2", "SIMILARITY_THRESHOLD": "0.8", "MAX_RESULTS": "10", "LOG_LEVEL": "INFO" } } } } ``` ## Usage Examples ### Set Agent Context ```python # Set context for current operations set_agent_context( agent_id="cursor-assistant", context_type="coding-session", description="Working on MCP memory server implementation" ) ``` ### Add to Global Memory ```python # Store information accessible by all agents add_to_global_memory( content="The memory server uses Qdrant for vector storage", category="technical-knowledge", importance=0.8 ) ``` ### Add Learned Insights ```python # Store patterns learned from experience add_to_learned_memory( content="When MCP servers fail to connect, check Python environment compatibility", pattern_type="troubleshooting", confidence=0.9 ) ``` ### Query Memory ```python # Search across all memory types query_memory( query="MCP server connection issues", memory_types=["global", "learned", "agent"], limit=5, min_score=0.3 ) ``` ### Compare Against Learned Patterns ```python # Find similar past experiences compare_against_learned_memory( situation="Server won't connect to Cursor", comparison_type="troubleshooting", limit=3 ) ``` ## Architecture ### Memory Collections 1. **Global Memory** (`global_memory`) - Shared knowledge across all agents 2. **Learned Memory** (`learned_memory`) - Patterns and insights from experience 3. **Agent Memory** (`agent_{agent_id}`) - Agent-specific memories ### Data Flow 1. **Input** → Text content 2. **Processing** → Generate embeddings using sentence-transformers 3. **Storage** → Store in appropriate Qdrant collection with metadata 4. **Retrieval** → Semantic search using vector similarity 5. **Output** → Ranked results with similarity scores ## Key Benefits - **Working Implementation**: Based on proven cursor server pattern - **Focused Scope**: Only memory management, no unnecessary complexity - **Vector Search**: Semantic similarity for intelligent retrieval - **Memory Types**: Organized storage for different use cases - **MCP Compatible**: Works directly with Cursor IDE ## Testing The server has been tested with: - ✅ MCP protocol initialization - ✅ Tools list retrieval (6 tools) - ✅ Adding content to global memory - ✅ Querying memory with semantic search - ✅ Vector similarity scoring ## Success Criteria This implementation successfully addresses the original requirements: 1. **Working MCP Server** - Connects to Cursor without issues 2. **Memory Management** - All 6 core memory operations functional 3. **Qdrant Integration** - Vector database working properly 4. **Cursor Compatibility** - Uses correct Python environment 5. **Simple Architecture** - Stripped down from complex cursor server The server is ready for production use with Cursor IDE.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hannesnortje/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server