create_entitiesLABSCO SUMMARY
A graph you can read whole, plus a vector index so recall does not depend on exact wording.
The pairing is the point: read_graph gives the assistant the full structure when it needs it, while search_similar finds the entity you described rather than the one you named. It does depend on two external pieces — a reachable Qdrant collection and an OpenAI key for the embeddings — so it is not the choice if you want everything local.
What it is
A knowledge-graph memory server with semantic search. Entities, relations and observations are written to a local JSON file for graph operations, and embedded into a Qdrant collection so similar concepts can be found without matching names.
What you get
- create_entities — add entities with their observations
- create_relations — connect entities to each other
- add_observations — attach new observations to an existing entity
- delete_entities — remove entities and the relations that reference them
- delete_observations and delete_relations — remove specific observations or edges
- read_graph — the whole knowledge graph in one call
- search_similar — semantic search over entities and relations, with a query and a result limit
- Both stores stay in step: a write updates the JSON file, generates an embedding, and stores the vector in Qdrant
Requirements
A Qdrant server and an OpenAI key for embeddings: OPENAI_API_KEY, QDRANT_URL, QDRANT_COLLECTION_NAME, and QDRANT_API_KEY when Qdrant has authentication on. Node with the project built, or the supplied Docker image. HTTPS Qdrant endpoints behind a reverse proxy are supported, including self-signed certificates.
Setup effort
Build from source — git clone https://github.com/delorenj/mcp-qdrant-memory.git
USE CASES
Building up a picture of a project
Create the entities as you learn them and connect them as the relationships become clear.
Recalling something you described loosely
Search by meaning and get back the entities and relations that match the description.
Adding what you learned this session
Attach the new observations to the entity they belong to rather than creating a duplicate.
Handing the whole context to the assistant
Read the entire graph in one call at the start of a session.
Correcting a wrong belief
Delete the specific observation or relation that no longer holds, leaving the rest intact.
8 tools
Listed in project docs. Your client may show a different list.
create_relationsadd_observationsdelete_entitiesdelete_observationsdelete_relationsread_graphsearch_similarBEFORE YOU INSTALL
What to know first
Tools you get
8 tools named in the project's documentation.
Requires
- Node.js and npm
- A Qdrant server
- OPENAI_API_KEY in your environment
- QDRANT_URL in your environment
- QDRANT_COLLECTION_NAME in your environment
Optional
QDRANT_API_KEY in your environment
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/delorenj/mcp-qdrant-memory.git
cd mcp-qdrant-memory
npm install
npm run buildMCP Clients
Any MCP client
{
"mcpServers": {
"memory": {
"command": "/bin/zsh",
"args": [
"-c",
"cd <YOUR_PATH_TO_SERVER> && node dist/index.js"
],
"env": {
"OPENAI_API_KEY": "<YOUR_OPENAI_API_KEY>",
"QDRANT_API_KEY": "<YOUR_QDRANT_API_KEY>",
"QDRANT_URL": "http://<YOUR_QDRANT_SERVER>:6333",
"QDRANT_COLLECTION_NAME": "<YOUR_QDRANT_COLLECTION_NAME>"
},
"alwaysAllow": [
"create_entities",
"create_relations",
"add_observations",
"delete_entities",
"delete_observations",
"delete_relations",
"read_graph",
"search_similar"
]
}
}
}In the Any MCP client block, <YOUR_PATH_TO_SERVER> is the mcp-qdrant-memory folder you cloned and built — the one that holds dist/index.js after npm run build.