MCP Memory Server with Qdrant Persistence
by delorenj
MCP Memory Server with Qdrant Persistence
This MCP server provides a knowledge graph implementation with semantic search capabilities powered by Qdrant vector database.
Features
- Graph-based knowledge representation with entities and relations
- File-based persistence (memory.json)
- Semantic search using Qdrant vector database
- OpenAI embeddings for semantic similarity
- HTTPS support with reverse proxy compatibility
Environment Variables
The following environment variables are required:
Copy
Setup
- Install dependencies:
Copy
- Build the server:
Copy
- Add to MCP settings:
Copy
Tools
Entity Management
create_entities
: Create multiple new entitiescreate_relations
: Create relations between entitiesadd_observations
: Add observations to entitiesdelete_entities
: Delete entities and their relationsdelete_observations
: Delete specific observationsdelete_relations
: Delete specific relationsread_graph
: Get the full knowledge graph
Semantic Search
search_similar
: Search for semantically similar entities and relationsCopy
Implementation Details
The server maintains two forms of persistence:
- File-based (memory.json):
- Complete knowledge graph structure
- Fast access to full graph
- Used for graph operations
- Qdrant Vector DB:
- Semantic embeddings of entities and relations
- Enables similarity search
- Automatically synchronized with file storage
Synchronization
When entities or relations are modified:
- Changes are written to memory.json
- Embeddings are generated using OpenAI
- Vectors are stored in Qdrant
- Both storage systems remain consistent
Search Process
When searching:
- Query text is converted to embedding
- Qdrant performs similarity search
- Results include both entities and relations
- Results are ranked by semantic similarity
Example Usage
Copy
HTTPS and Reverse Proxy Configuration
The server supports connecting to Qdrant through HTTPS and reverse proxies. This is particularly useful when:
- Running Qdrant behind a reverse proxy like Nginx or Apache
- Using self-signed certificates
- Requiring custom SSL/TLS configurations
Setting up with a Reverse Proxy
- Configure your reverse proxy (example using Nginx):
Copy
- Update your environment variables:
Copy
Security Considerations
The server implements robust HTTPS handling with:
- Custom SSL/TLS configuration
- Proper certificate verification options
- Connection pooling and keepalive
- Automatic retry with exponential backoff
- Configurable timeouts
Troubleshooting HTTPS Connections
If you experience connection issues:
- Verify your certificates:
Copy
- Test direct connectivity:
Copy
- Check for any proxy settings:
Copy
Setup
- Install dependencies:
Copy
- Build the server:
Copy
- Add to MCP settings:
Copy
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
License
MIT
This server cannot be installed
Facilitates knowledge graph representation with semantic search using Qdrant, supporting OpenAI embeddings for semantic similarity and robust HTTPS integration with file-based graph persistence.