Enhanced Knowledge Graph Memory Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MEMORY_FILE_PATH | No | Path to the memory storage JSONL file (default: memory.jsonl in the server directory) |
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_entitiesB | Create multiple new entities in the knowledge graph. Supports v1.6 freshness (ttl/confidence), v1.8 project scoping, and η.4.4 bitemporal validity (validFrom/validUntil/observationMeta). |
| delete_entitiesC | Delete multiple entities from the knowledge graph |
| read_graphB | Read the entire knowledge graph |
| open_nodesC | Open specific nodes by their names |
| list_projectsA | List all distinct project IDs in the knowledge graph. Returns sorted array of projectId values, excluding global/unscoped entities. |
| get_entity_versionsA | Get the latest version of an entity. If the entity has been superseded by newer versions (via contradiction detection), returns the most recent one. |
| get_version_chainA | Get all versions of an entity in its version chain. Returns versions sorted by version number ascending. Works from any entity in the chain (resolves to root automatically). |
| create_relationsC | Create multiple new relations between entities in the knowledge graph. Relations should be in active voice |
| delete_relationsC | Delete multiple relations from the knowledge graph |
| invalidate_relationA | Mark a relation as no longer valid. Sets the validUntil timestamp on the matching active relation. Use for temporal facts that have ended (e.g., "Kai no longer works on Orion"). |
| query_as_ofA | Query relations valid at a specific point in time. Returns only relations where validFrom <= date AND (validUntil is undefined OR validUntil >= date). Time-travel query for temporal knowledge graphs. |
| timelineB | Get chronological relation history for an entity. Returns ALL relations (current and expired) sorted by validFrom ascending. Shows the full story of an entity over time. |
| add_observationsC | Add new observations to existing entities in the knowledge graph |
| delete_observationsC | Delete specific observations from entities |
| normalize_observationsC | Normalize entity observations by resolving pronouns and anchoring relative dates. Improves search matching quality. |
| search_nodesC | Search for nodes in the knowledge graph based on query string, with optional tag and importance filtering |
| search_by_date_rangeB | Search entities within a date range, with optional filtering by entity type and tags. At least one of startDate or endDate should be provided. |
| search_nodes_rankedC | Perform TF-IDF ranked search |
| boolean_searchC | Perform boolean search with AND, OR, NOT operators |
| fuzzy_searchC | Perform fuzzy search with typo tolerance |
| get_search_suggestionsC | Get search suggestions for a query |
| search_autoB | Automatically select and execute the best search method based on query characteristics and graph size. Returns results along with the selected method and reasoning. |
| forget_memoryA | Forget (delete) observations matching the given content. Tries exact match first; falls back to semantic search at 0.85 similarity threshold if available. Supports dryRun to preview what would be deleted. |
| hybrid_searchA | Search using combined semantic, lexical, and metadata signals. Provides better recall than single-signal search by fusing multiple relevance signals. v3 additive options: graphWeight adds a graph-connectivity (PageRank) channel, expandNeighbors appends one-hop neighbors of top results, explain annotates results with evidence paths from query anchors, lookFor ranks expansion neighbors by a free-text connection description. |
| analyze_queryA | Analyze a search query to extract entities, temporal references, question type, and complexity. Useful for understanding query structure before searching. |
| smart_searchC | Intelligent search with automatic query planning and reflection-based refinement. Iteratively improves results until adequate. |
| save_searchC | Save a search query for later reuse |
| execute_saved_searchC | Execute a previously saved search by name |
| list_saved_searchesB | List all saved searches |
| delete_saved_searchC | Delete a saved search |
| update_saved_searchC | Update a saved search |
| add_tagsC | Add tags to an entity |
| remove_tagsC | Remove tags from an entity |
| set_importanceC | Set the importance score of an entity (0-10) |
| add_tags_to_multiple_entitiesC | Add the same tags to multiple entities at once |
| replace_tagC | Replace a tag with a new tag across all entities |
| merge_tagsC | Merge two tags into a target tag across all entities |
| add_tag_aliasC | Add a tag alias (synonym mapping) |
| list_tag_aliasesB | List all tag aliases |
| remove_tag_aliasC | Remove a tag alias |
| get_aliases_for_tagC | Get all aliases for a canonical tag |
| resolve_tagC | Resolve a tag to its canonical form |
| set_entity_parentB | Set the parent of an entity for hierarchical organization |
| get_childrenC | Get all child entities of an entity |
| get_parentC | Get the parent entity of an entity |
| get_ancestorsC | Get all ancestor entities of an entity |
| get_descendantsC | Get all descendant entities of an entity |
| get_subtreeC | Get entity and all its descendants as a subgraph |
| get_root_entitiesB | Get all root entities (entities without parents) |
| get_entity_depthC | Get the depth of an entity in the hierarchy |
| move_entityC | Move an entity to a new parent |
| get_graph_statsC | Get statistics about the knowledge graph |
| validate_graphB | Validate the knowledge graph for integrity issues |
| find_duplicatesC | Find potential duplicate entities based on similarity |
| merge_entitiesC | Merge multiple entities into one |
| compress_graphC | Compress the graph by merging similar entities |
| archive_entitiesC | Archive old or low-importance entities |
| find_shortest_pathC | Find the shortest path between two entities in the knowledge graph |
| find_all_pathsC | Find all paths between two entities up to a maximum depth |
| get_connected_componentsB | Find all connected components in the knowledge graph |
| get_centralityC | Calculate centrality metrics for entities in the graph |
| import_graphC | Import knowledge graph from various formats |
| export_graphA | Export knowledge graph in various formats with optional brotli compression and streaming for large graphs. Supports W3C Linked Data formats (turtle, rdf-xml, json-ld) added in η.5.4. |
| ingestA | Ingest pre-normalized conversation data into the knowledge graph. Chunks messages by exchange pairs (user+assistant), creates entities with verbatim observations. Format-agnostic: normalize chat exports before calling. |
| semantic_searchC | Search for entities using semantic similarity. Requires embedding provider to be configured via MEMORY_EMBEDDING_PROVIDER. |
| find_similar_entitiesC | Find entities similar to a given entity using semantic similarity. Requires embedding provider. |
| index_embeddingsA | Index all entities for semantic search. Call this after adding entities to enable semantic search. Requires embedding provider. |
| register_refA | Register a stable alias (ref) pointing to an entity name in the RefIndex for O(1) lookups |
| resolve_refB | Resolve a stable alias (ref) to its entity name via the RefIndex |
| deregister_refB | Remove a stable alias (ref) from the RefIndex |
| list_refsA | List all registered refs in the RefIndex, optionally filtered by entity name |
| create_artifactB | Create an artifact entity (tool output, code snippet, API response, etc.) with a stable auto-generated ref |
| get_artifactB | Retrieve an artifact entity by its stable ref or entity name |
| list_artifactsB | List all artifact entities, with optional filtering by tool name, type, or date |
| search_by_timeB | Search entities using a natural language time expression (e.g. "last week", "yesterday", "in January") |
| configure_distillationA | Configure the distillation pipeline policy (default, noop, or none) that filters memories before context formatting |
| check_freshnessB | Calculate the freshness score (0–1) for a specific entity based on its TTL and confidence |
| get_stale_entitiesB | Return all entities whose freshness score is below a threshold |
| get_expired_entitiesB | Return all entities that have passed their TTL expiry |
| refresh_entityB | Reset freshness for an entity by updating its creation timestamp to now and resetting confidence to 1.0 |
| freshness_reportB | Generate a freshness report across all entities showing fresh, stale, and expired counts |
| query_natural_languageC | Decompose a natural language query into a structured search plan and return matching entities |
| set_governance_policyA | Set the active governance policy controlling which write operations (create, update, delete) are permitted for future requests |
| audit_queryB | Query the audit log for operations matching filter criteria (operation type, agent ID, entity name, date range) |
| audit_historyA | Get the full audit history for a specific entity in chronological order |
| rollback_operationA | Reverse a specific committed operation using its audit entry ID (restores entity to before-snapshot) |
| set_agent_roleB | Apply a built-in role profile (researcher, planner, executor, reviewer, coordinator) to adjust salience weights and context budgets |
| list_role_profilesA | List all built-in role profiles with their salience weight and context budget configurations |
| enable_entropy_filterB | Enable or disable the Shannon entropy gate that drops low-information memories during consolidation |
| compute_entropyB | Compute the Shannon entropy of a text string (in bits per character) |
| start_consolidationB | Start the background consolidation scheduler that periodically deduplicates and merges memories |
| stop_consolidationA | Stop the background consolidation scheduler |
| run_consolidation_nowA | Run a consolidation cycle on demand, independently of the scheduled interval |
| format_with_salience_budgetB | Format memories for LLM prompt consumption with proportional token allocation based on salience scores |
| synthesize_collaborative_contextA | Synthesize context by traversing the graph neighbourhood from a seed entity and merging high-salience neighbors across agents |
| distill_failureB | Distill lessons from a failed session by tracing the causal chain and extracting actionable insights |
| end_sessionA | End a session and trigger failure distillation if the session outcome was a failure |
| get_profileB | Get the user profile. Returns static facts (long-lived preferences) and dynamic facts (recent session context). Profiles are scoped by projectId. |
| update_profileA | Add a fact to the user profile. Static facts are long-lived (preferences, role, tools). Dynamic facts are recent (current project, active work). |
| diary_writeA | Write a timestamped diary entry for a specialist agent. Each agent gets its own persistent diary (entity: diary-{agentId}). Use for code review findings, architecture decisions, ops incidents, etc. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/danielsimonjr/memory-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server