ainative-memory-mcp
OfficialA cloud-persistent knowledge graph memory server that stores entities, relations, and observations in ZeroDB, with both text and semantic vector search capabilities.
Entity Management
create_entities— Add new nodes with a name, type, and observationsadd_observations— Append observations to existing entitiesdelete_entities— Remove entities and their cascading relationsdelete_observations— Remove specific observations from entities
Relation Management
create_relations— Define directed relationships between entitiesdelete_relations— Remove specific relations by source, target, and type
Graph Querying & Search
read_graph— Retrieve the entire knowledge graphsearch_nodes— Case-insensitive substring matching on names, types, and observationssearch_nodes_semantic— Vector similarity search by meaning (e.g., "ML frameworks" surfaces PyTorch, TensorFlow without exact matches)open_nodes— Fetch specific entities by name along with their relations
Platform Benefits
Data persists in the ZeroDB cloud, surviving machine wipes and accessible across devices sharing an API key
Auto-provisions a free instance on first run — no signup or API key required to get started
Vector embeddings are generated automatically for semantic search with no extra configuration
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ainative-memory-mcpRemember that my birthday is June 5th"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ainative-memory-mcp
Enhanced MCP knowledge graph memory server with cloud persistence and semantic search. Drop-in replacement for @modelcontextprotocol/server-memory.
Why this instead of server-memory?
Feature | server-memory | ainative-memory-mcp |
Storage | Local JSONL file | ZeroDB cloud |
Persistence | Lost on machine wipe | Survives forever |
Cross-device | No | Yes (same API key = same graph) |
Semantic search | No (text match only) | Yes (vector similarity) |
Setup | Manual file path | Auto-provisions on first run |
Sharing | Copy files around | Share API key |
Related MCP server: RAG Memory MCP
Quick Start
Claude Desktop / Claude Code
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "ainative-memory-mcp"],
"env": {
"ZERODB_API_KEY": "ak_your_key"
}
}
}
}No API key? Just omit it — a free ZeroDB instance is auto-provisioned on first run.
Cursor / Windsurf / VS Code
Same config in your .mcp.json:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "ainative-memory-mcp"],
"env": {
"ZERODB_API_KEY": "ak_your_key"
}
}
}
}Get an API Key
npx zerodb-cli initOr sign up at ainative.studio.
Tools (10)
All 9 original server-memory tools plus semantic search:
Original Tools
Tool | Description |
| Create new entities with name, type, and observations |
| Create directed relations between entities |
| Add observations to existing entities |
| Delete entities and their cascading relations |
| Remove specific observations from entities |
| Delete specific relations |
| Read the entire knowledge graph |
| Search by text match (name, type, observations) |
| Fetch specific entities by name with their relations |
New Tool
Tool | Description |
| Vector similarity search — find entities by meaning, not just exact text |
Semantic Search Example
The original search_nodes only finds exact text matches. search_nodes_semantic understands meaning:
search_nodes("ML frameworks") -> might find nothing
search_nodes_semantic("ML frameworks") -> finds "PyTorch", "TensorFlow", "JAX"Environment Variables
Variable | Required | Description |
| No* | ZeroDB API key (auto-provisions if missing) |
| No | ZeroDB project ID |
| No | API URL (default: |
*If no credentials are provided, a free instance is automatically provisioned on first run.
Auto-Provisioning
On first run without credentials:
A free ZeroDB instance is provisioned automatically
Credentials are saved to
.mcp.jsonand.envin your projectA claim URL is printed so you can take ownership of the instance
Everything works immediately — no signup required
How It Works
Instead of writing to a local memory.jsonl file, this server:
Entities are stored as rows in a ZeroDB NoSQL table (
kg_entities)Relations are stored in a separate table (
kg_relations)Vector embeddings are automatically generated for each entity via ZeroMemory, enabling semantic search
All data persists in the cloud and is accessible from any device with the same API key
Migration from server-memory
Replace
@modelcontextprotocol/server-memorywithainative-memory-mcpin your MCP configAdd
ZERODB_API_KEYto your env (or let it auto-provision)Re-create your entities (one-time migration — your old JSONL data stays on disk)
License
MIT
Powered by ZeroDB + AINative
This package is part of the AINative ecosystem — the AI-native developer platform.
Why ZeroDB?
Feature | ZeroDB | Others |
Vector search | Built-in, free embeddings | Separate service (Pinecone, Qdrant) |
Agent memory | Cognitive memory with decay + reflection | DIY or Mem0 ($$$) |
File storage | S3-compatible, included | Separate S3 bucket |
NoSQL tables | Instant, schema-free | MongoDB Atlas, DynamoDB |
PostgreSQL | Managed, pgvector pre-installed | Neon, Supabase ($$$) |
Serverless functions | DB-event triggered | Firebase/Supabase Edge |
Pricing | Free tier, no credit card | Pay-per-query from day 1 |
Get Started Free
npx zerodb-cli init # Auto-configures your IDEOr sign up at ainative.studio — free tier, no credit card required.
Zero-Config Auto-Provisioning
No account needed to start. On first run, this package automatically:
Provisions a free ZeroDB instance (~800ms)
Saves credentials locally (
.env,.mcp.json)Prints a claim link in your terminal
The 72-Hour Window
Your auto-provisioned instance is free for 72 hours. To keep your data permanently, visit the claim URL printed in your terminal.
For AI Agents
If a coding agent (Claude Code, Cursor, Windsurf) installs this package:
Auto-provisions without human intervention
The claim URL appears in agent output — visit it to take ownership
.claude/CLAUDE.mdinstructs agents to surface the claim link to youCheck
.envor~/.ainative/config.jsonfor your project ID if you miss it
Available Tools
10 toolsadd_observationsB
Add new observations to existing entities in the knowledge graph.
| Name | Required | Description | Default |
|---|---|---|---|
| observations | Yes | Array of observations to add |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The tool modifies the knowledge graph with no annotations to provide safety cues. The description does not disclose potential side effects, failure modes (e.g., missing entity), or any behavioral nuances beyond the basic write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It is appropriately sized for a straightforward tool, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not explain behavior for edge cases (e.g., non-existent entity, duplicate observations), return values, or any guarantees. More context is needed for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no extra meaning beyond the schema. Baseline score of 3 is appropriate as the description is not misleading but offers no additional semantic depth.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (add), resource (observations), and context (existing entities in the knowledge graph). It effectively distinguishes from siblings like create_entities and delete_observations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use vs alternatives. The phrase 'to existing entities' implies a prerequisite that entities must exist, but no further context or exclusion is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_entitiesA
Create multiple new entities in the knowledge graph. Entities are the fundamental nodes with a name, type, and list of observations. Stored in ZeroDB cloud — persists across sessions and devices.
| Name | Required | Description | Default |
|---|---|---|---|
| entities | Yes | Array of entities to create |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations available; description states entities are stored persistently but doesn't disclose potential side effects like overwriting or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Front-loaded with action, then context. Efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks details on return values or error states. For a creation tool, this is acceptable but not complete; output schema is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage; the description largely repeats what's in the schema without adding meaningful new parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Create' and the resource 'multiple new entities in the knowledge graph', and distinguishes from sibling tools like add_observations and create_relations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance. The description only implies usage for creating fundamental nodes, but doesn't compare with alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_relationsA
Create multiple new relations between entities in the knowledge graph. Relations should be in active voice.
| Name | Required | Description | Default |
|---|---|---|---|
| relations | Yes | Array of relations to create |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It implies a write operation but does not disclose side effects (e.g., whether existing relations are replaced, if duplicates are allowed, or if entities must exist). The description is minimal on behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences with no wasted words. The first sentence front-loads the purpose, and the second provides a useful guideline. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple creation tool with a single parameter and no output schema, the description is adequate. It explains what the tool does and gives a quality guideline. However, it lacks information on error handling or preconditions, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all parameters with descriptions (100% coverage). The description adds semantic value by specifying that relations should be in active voice, which provides a naming convention for the relationType field. This improves parameter understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Create'), the resource ('relations between entities in the knowledge graph'), and that it handles 'multiple new relations'. It effectively distinguishes from sibling tools like delete_relations and create_entities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a quality guideline ('Relations should be in active voice') but lacks explicit guidance on when to use this tool versus alternatives, such as when to prefer it over batch creation or handling duplicates. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_entitiesA
Delete multiple entities and their associated relations from the knowledge graph.
| Name | Required | Description | Default |
|---|---|---|---|
| entityNames | Yes | An array of entity names to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that relations associated with entities are also deleted, which is a critical side effect. No annotations provided, so description carries full burden. Could mention reversibility or permissions, but the core behavior is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, directly conveys the tool's function. Every word contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
One-parameter tool with no output schema. Description adequately explains input and effect. Could mention return type (e.g., success confirmation), but overall sufficient for a delete operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter documented. Description does not add semantic value beyond the schema, which already describes 'entityNames' as an array of strings. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Delete multiple entities and their associated relations from the knowledge graph.' Identifies action (delete), resource (entities and relations), and scope. Distinguishes from sibling tools like delete_observations and delete_relations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives. Does not explain that it cascades to relations, unlike delete_relations which only removes relations. Missing context for selection among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_observationsB
Delete specific observations from entities in the knowledge graph.
| Name | Required | Description | Default |
|---|---|---|---|
| deletions | Yes | Array of deletions |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It indicates mutation ('Delete') but lacks details on reversibility, error behavior, or permissions. Minimal disclosure beyond the action itself.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no wasted words. However, it lacks structure (e.g., no bullet points or separation of concerns). Still appropriately sized for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool complexity is low (1 param, no output schema), and the description covers the core action. However, it lacks behavioral context (e.g., atomicity, error handling) that would fully inform an AI agent, given no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents parameters well. The description adds no extra meaning or context beyond repeating parameter names (e.g., 'Array of deletions'). Meets baseline but no added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete), resource (observations), and scope (from entities in knowledge graph). It effectively distinguishes from sibling tools like delete_entities and delete_relations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use versus alternatives. The description implies deletion, but does not specify prerequisites, when not to use, or compare with other tools like add_observations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_relationsB
Delete multiple relations from the knowledge graph.
| Name | Required | Description | Default |
|---|---|---|---|
| relations | Yes | Array of relations to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure, but it only says 'Delete', omitting important details like idempotency, error handling for non-existent relations, or successful deletion indication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, efficient and front-loaded, but could include more critical behavioral details without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one parameter and no output schema, the description fails to address typical use concerns like error states or post-deletion verification, leaving the agent with gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with property descriptions; the description adds no extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Delete' and the resource 'multiple relations from the knowledge graph', distinguishing it from sibling tools like delete_entities and delete_observations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., when to use delete_relations vs. create_relations or other delete tools) or prerequisites like relation existence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_nodesB
Open specific nodes in the knowledge graph by their names.
| Name | Required | Description | Default |
|---|---|---|---|
| names | Yes | An array of entity names to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. 'Open' is vague—does it retrieve details or perform mutations? Lack of behavioral disclosure beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single succinct sentence, no redundancy, front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description leaves ambiguity about return values and behavior for missing names. Adequate for a simple tool but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds minimal value over the parameter description ('retrieve'), only clarifying the action ('open') and scope ('specific').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Open') and resource ('nodes in the knowledge graph') with clear method ('by their names'). It distinguishes from sibling tools like 'read_graph' or 'search_nodes'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. No exclusions or usage context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_graphA
Read the entire knowledge graph from ZeroDB cloud storage.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explicitly states this is a read operation, implying non-destructive behavior. However, with no annotations and no output schema, it fails to disclose key traits such as return format, potential size limits, or performance implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant words. Every part is essential, fitting the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description provides the core purpose. However, it lacks context on operational impact (e.g., reading entire graph may be slow or large), which could be critical for an agent to decide wisely among siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, achieving 100% schema coverage trivially. The description adds no parameter info, but according to guidelines, zero parameters baseline is 4. No value beyond schema is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Read') and resource ('entire knowledge graph'), clearly distinguishing it from sibling tools that create, delete, or search parts of the graph. This leaves no ambiguity about the tool's function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like search_nodes or open_nodes. The description omits any mention of potential costs or trade-offs (e.g., reading the entire graph may be expensive), leaving the agent without context for appropriate invocation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_nodesA
Search for nodes in the knowledge graph based on a text query. Matches against entity names, types, and observation content (case-insensitive substring match).
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The search query to match against entity names, types, and observation content |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that matching is case-insensitive substring across specific fields (names, types, observation content). This gives good behavioral insight, though it does not explicitly state that the operation is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences. The first sentence clearly states the action and resource, and the second adds matching criteria. No extraneous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, many siblings) and lack of output schema, the description is fairly complete. It covers purpose, matching behavior, and implicitly contrasts with search_nodes_semantic. Minor gap: it does not describe the return format, but this is acceptable given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, establishing a baseline of 3. The description adds significant value by specifying that the query matches against entity names, types, and observation content using case-insensitive substring match, details beyond the schema's parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for nodes in the knowledge graph using a text query, matching against entity names, types, and observation content. It distinguishes from the sibling search_nodes_semantic by specifying case-insensitive substring match, implying the sibling uses different semantics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool (text-based substring matching) and implicitly distinguishes from the semantic search sibling. However, it does not explicitly state when not to use it or list alternative tools beyond the implied contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_nodes_semanticA
Search for nodes in the knowledge graph using semantic vector similarity. Unlike search_nodes which does exact text matching, this finds entities by meaning — e.g., searching "machine learning frameworks" would find entities about "PyTorch" or "TensorFlow" even without those exact words.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural language query to search by meaning | |
| limit | No | Maximum number of results (default: 10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral transparency. It discloses that the tool uses semantic vector similarity and can find entities without exact keyword matches. However, it does not mention any potential limitations (e.g., performance, privacy, or handling of ambiguous queries) or the nature of results beyond identification.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, no wasted words. It front-loads the core purpose, then provides a critical comparison and example. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only two simple parameters and no nested objects or output schema, the description is almost complete. It explains the unique functionality. However, since there is no output schema, the description could have briefly mentioned what the return value contains (e.g., list of nodes with IDs and names). Still, it's sufficient for a straightforward tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described. The description adds value beyond the schema by explaining that the 'query' parameter expects a natural language query and illustrating with an example. For 'limit', it repeats the default but the schema already has that. Overall, adds moderate extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs semantic vector similarity search in the knowledge graph, uses a strong verb-resource pair, and explicitly distinguishes from the sibling tool search_nodes by contrasting exact text matching vs meaning-based search. An example further clarifies the purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool versus the alternative search_nodes: 'Unlike search_nodes which does exact text matching, this finds entities by meaning.' This direct comparison provides clear usage guidance and a concrete example scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
10 tool updates
v1.0.0- First observed
add_observations - First observed
create_entities - First observed
create_relations - First observed
delete_entities - First observed
delete_observations - First observed
delete_relations - First observed
open_nodes - First observed
read_graph - First observed
search_nodes - First observed
search_nodes_semantic
TDQS
Each tool has a distinct purpose: creating entities, relations, or observations; deleting them; searching via text or semantic similarity; opening nodes; and reading the entire graph. No overlaps.
All tool names follow a consistent verb_noun pattern (e.g., add_observations, create_entities, delete_relations, search_nodes). No mixing of conventions.
10 tools is well-scoped for a knowledge graph agent, covering CRUD and search operations without being overwhelming or sparse.
The set covers create, read, delete, and search operations, but lacks explicit update tools for entities and relations (only observations can be added/deleted). Minor gap.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
An MCP memory server. One memory your agents share — across models, devices and apps.
Cross-vendor AI memory over MCP. One semantic store, readable and writeable from every MCP client.
Cloud-hosted MCP server for durable AI memory
Personal knowledge graph as an AI memory layer over MCP - read, save, and link your memories.
Related MCP Servers
- AlicenseBqualityDmaintenanceA customized MCP memory server that enables creation and management of a knowledge graph with features like custom memory paths and timestamping for capturing interactions via language models.104MIT
- AlicenseNot gradedqualityCmaintenanceAn advanced MCP server providing RAG-enabled memory through a knowledge graph with vector search capabilities, enabling intelligent information storage, semantic retrieval, and document processing.2547MIT
- FlicenseNot gradedqualityCmaintenanceMCP server that gives AI agents and teams persistent, shared memory using a knowledge graph with vector embeddings, automatic consolidation of related facts, and hybrid search.3-
- AlicenseNot gradedqualityAmaintenanceA universal MCP server providing persistent, structured memory through a knowledge graph with graph storage, semantic vector search, and multi-hop traversal for AI agents and IDEs.1MIT
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/AINative-Studio/ainative-memory-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server