Neo4j Knowledge Graph MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DEBUG | No | Enable debug mode (true/false) | |
| LOG_LEVEL | No | Log level: debug, info, warn, error, silent | warn |
| NEO4J_URI | No | Neo4j server URI | bolt://127.0.0.1:7687 |
| RERANK_MODEL | No | Reranker model name (optional) | |
| RERANK_TOP_K | No | Default return count with reranker | 5 |
| RERANK_TOP_N | No | Number of candidates for reranker scoring | 20 |
| NEO4J_DATABASE | No | Neo4j database name | neo4j |
| NEO4J_PASSWORD | Yes | Neo4j password (required) | |
| NEO4J_USERNAME | No | Neo4j username | neo4j |
| OPENAI_API_KEY | No | OpenAI API key (optional; alternative to EMBEDDING_API_KEY) | |
| RERANK_API_KEY | No | Reranker API key (optional; falls back to EMBEDDING_API_KEY) | |
| RERANK_ENABLED | No | Enable cross-encoder reranker (true/false) | false |
| EMBEDDING_MODEL | No | Embedding model name (optional) | |
| RERANK_ENDPOINT | No | Reranker endpoint URL (optional) | |
| EMBEDDING_API_KEY | No | API key for alternative embedding provider (optional) | |
| RERANK_ACCOUNT_ID | No | Reranker account ID (optional) | |
| RERANK_TIMEOUT_MS | No | Reranker timeout in milliseconds | 5000 |
| NEO4J_VECTOR_INDEX | No | Vector index name | entity_embeddings |
| EMBEDDING_DIMENSIONS | No | Embedding dimensions (must match NEO4J_VECTOR_DIMENSIONS) (optional) | |
| EMBEDDING_API_BASE_URL | No | Base URL for alternative embedding provider (optional) | |
| EMBEDDING_API_ENDPOINT | No | Full endpoint URL for alternative embedding provider (optional; overrides base URL) | |
| OPENAI_EMBEDDING_MODEL | No | OpenAI embedding model name | text-embedding-3-small |
| EMBEDDING_BACKFILL_CRON | No | Cron schedule for embedding backfill | 0 19 * * * |
| NEO4J_VECTOR_DIMENSIONS | No | Vector dimensions | 1536 |
| EMBEDDING_STALE_CLAIM_MS | No | Stale claim timeout in milliseconds | 300000 |
| RERANK_MAX_PASSAGE_CHARS | No | Max characters for reranker passage | 2000 |
| WRITE_EMBEDDINGS_LOCALLY | No | Whether to write embeddings locally (true/false) | true |
| ENABLE_PROMETHEUS_METRICS | No | Enable Prometheus metrics endpoint (true/false) | false |
| NEO4J_SIMILARITY_FUNCTION | No | Similarity function (cosine|euclidean) | cosine |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| logging | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_entitiesC | Create multiple new entities in your knowledge graph system |
| create_relationsC | Create multiple new relations between entities in your knowledge graph. Relations should be in active voice |
| add_observationsB | Add new observations to existing entities in your knowledge graph |
| delete_entitiesA | Delete multiple entities and their associated relations from your knowledge graph |
| delete_observationsB | Delete specific observations from entities in your knowledge graph |
| delete_relationsB | Delete multiple relations from your knowledge graph |
| get_relationC | Get a specific relation with its enhanced properties from your knowledge graph |
| update_relationC | Update an existing relation with enhanced properties in your knowledge graph |
| read_graphC | Read the entire knowledge graph system |
| search_nodesC | Search for nodes in your knowledge graph based on a query |
| open_nodesB | Open specific nodes in your knowledge graph by their names |
| semantic_searchB | Search for entities semantically using vector embeddings and similarity in your knowledge graph |
| get_entity_embeddingC | Get the vector embedding for a specific entity from your knowledge graph |
| create_entities_batchB | Create multiple entities in a single optimized batch operation (10-50x faster than individual creates) |
| create_relations_batchA | Create multiple relations in a single optimized batch operation (10-50x faster than individual creates) |
| add_observations_batchA | Add observations to multiple entities in a single optimized batch operation (10-50x faster than individual adds) |
| update_entities_batchB | Update multiple entities in a single optimized batch operation (10-50x faster than individual updates) |
| get_entity_historyB | Get the version history of an entity from your knowledge graph |
| get_relation_historyB | Get the version history of a relation from your knowledge graph |
| get_graph_at_timeB | Get your knowledge graph as it existed at a specific point in time |
| get_decayed_graphB | Get your knowledge graph with confidence values decayed based on time |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Each tool targets a distinct operation on entities, observations, or relations. Batch variants are clearly differentiated, and query tools like search_nodes and semantic_search serve different purposes without ambiguity.
All tool names follow a consistent verb_noun pattern (e.g., create_entities, delete_observations, get_relation_history). The '_batch' suffix is uniformly applied for optimized versions, and naming conventions are predictable throughout.
With 21 tools covering CRUD, batch operations, time-travel queries, semantic search, and embeddings, the count is well-scoped for a knowledge graph server. Each tool serves a clear purpose without excess.
The tool surface covers core entity, relation, and observation lifecycle management. However, there is no explicit update_observations tool, and batch update for relations is limited to a single update_relation. These are minor gaps in an otherwise comprehensive set.