synapse-layer
OfficialIntegrates with CrewAI agents to maintain persistent memory across tasks, allowing contextual recall and trust-scored memories.
Connects LangChain agents to Synapse Layer's encrypted memory store, enabling cross-session persistence, semantic recall, and trust quotient scoring.
Offers a LangGraph checkpoint saver that persists agent state and memories with AES-256-GCM encrypted storage via the synapse-layer-langgraph integration.
Allows n8n workflows to store and retrieve memory data for AI agents and automation tasks, with full encryption and semantic search capabilities.
๐ง Synapse Layer
RAG retrieves. Synapse remembers.
Persistent memory infrastructure for AI agents โ AES-256-GCM encrypted at rest, semantic search, MCP-native.
Synapse Layer is open-source persistent memory infrastructure for AI agents and assistants. Memories are encrypted at rest with AES-256-GCM, indexed via pgvector HNSW for semantic recall, and exposed through MCP JSON-RPC for native integration with Claude, GPT, Gemini, and any MCP-compatible client. Apache 2.0 licensed.
Website ยท Docs ยท PyPI ยท Forge
โก 30-Second Quickstart
pip install synapse-layerfrom synapse_layer import Synapse
s = Synapse(token="sk_connect_YOUR_TOKEN")
s.store("user likes coffee")
print(s.recall("what does user like?"))Get your token at forge.synapselayer.org โ Dashboard โ Connect
Related MCP server: Sylex Memory
What is Synapse Layer?
The persistent memory layer for AI agents โ the missing piece between stateless LLMs and real continuity of context.
Your AI agents forget everything between sessions. Synapse Layer fixes that.
Feature | Description |
๐ Encrypted at rest | AES-256-GCM with per-operation random IV and HMAC-SHA-256 integrity |
๐งฉ One-click connect | Claude Desktop, Cursor, LangChain, CrewAI, n8n |
๐ Cross-agent memory | Save in ChatGPT, recall in Claude |
โก MCP-native | Any MCP-compatible agent |
๐ Header-first auth | Tokens never in URLs or logs |
๐ฏ Trust Quotient | Deterministic recall โ memories ranked by confidence, not recency alone |
Why Synapse Layer?
Your AI agents forget everything between sessions. Synapse Layer fixes that โ in one line.
Without Synapse Layer | With Synapse Layer |
Agent forgets context every session | Persistent memory across all sessions |
Memory locked to one model | Cross-agent: save in ChatGPT, recall in Claude |
No audit trail | Trust Quotient scoring on every memory |
Complex integration |
|
Plaintext stored on servers | AES-256-GCM encrypted at rest |
Use Cases
Long-term assistant memory โ persist user preferences, facts, and prior decisions across sessions.
Cross-agent continuity โ save context in one agent and recall it in another.
Secure memory for MCP clients โ connect Claude Desktop, Cursor, and other MCP-compatible tools to a governed memory layer.
Operational memory for teams โ maintain structured context, trust scoring, and searchable recall for production agents.
Install
pip install synapse-layerQuick Start
Python Script
from synapse_layer import Synapse
client = Synapse(token="sk_connect_YOUR_TOKEN")
# Store
client.store("User prefers dark mode and concise answers")
# Recall
results = client.recall("user preferences")
for r in results:
print(r["content"], r["trust_quotient"])With Context Manager
from synapse_layer import Synapse
with Synapse(token="sk_connect_YOUR_TOKEN") as client:
client.store("User prefers dark mode and concise answers")
results = client.recall("user preferences")
for r in results:
print(r["content"])Get your token at forge.synapselayer.org โ Dashboard โ Connect
13 MCP Tools at a Glance
Synapse Layer currently exposes 13 MCP tools for persistent memory workflows:
recallsave_to_synapseprocess_textsearchhealth_checkinitialize_contextsave_memorystore_memoryrecall_memorylist_memoriesmemory_feedbackneural_handoverslo_report
These tools cover memory capture, semantic recall, structured storage, feedback loops, agent handoff, and operational observability.
Deployment Modes
Python Script Mode
Use the SDK when you want direct Python access to Forge memory from your application.
Best for:
prototypes and scripts
Python-native workflows
fast integration into existing apps
Cloud / Forge API
Use Forge when you need persistent, cross-session, and cross-agent memory with managed access tokens.
Best for:
production assistants
multi-agent systems
MCP-based integrations
shared memory across tools and sessions
MCP Integration (Claude Desktop / Cursor)
Add to claude_desktop_config.json:
{
"mcpServers": {
"synapse-layer": {
"command": "npx",
"args": [
"mcp-remote",
"https://forge.synapselayer.org/api/mcp",
"--header",
"x-connect-token: sk_connect_YOUR_TOKEN"
]
}
}
}Config file location:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
API โ Header-First Auth
# Health check
curl -H "x-connect-token: sk_connect_YOUR_TOKEN" \
https://forge.synapselayer.org/api/connect/health
# Save memory
curl -X POST \
-H "x-connect-token: sk_connect_YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"content": "User is a Python developer"}' \
https://forge.synapselayer.org/api/v1/captureSecurity
Feature | Implementation |
Encryption | AES-256-GCM at rest with per-operation random IV |
Integrity | HMAC-SHA-256 on content |
Auth | Header-first ( |
Privacy | Content sanitization + tenant-scoped encrypted storage |
Isolation | 1 user = 1 tenant = 1 private mind |
See SECURITY.md for vulnerability reporting.
Related Projects
Project | Description |
Python SDK โ LangChain, CrewAI, and A2A protocol adapters | |
MCP skill configuration for Claude Desktop, Cursor, Windsurf | |
LangGraph checkpoint saver with encrypted state persistence |
Governance
All public claims follow the Public Claims Matrix.
Architecture details that reveal benefits are public; mechanisms that enable them are private.
Claim = Reality. If it's not implemented, it's not in the README.
License
Apache-2.0 ยฉ Synapse Layer
Available Tools
13 toolshealth_checkARead-onlyInspect
Check service availability, engine version, and storage health. Public method.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| version | Yes | |
| dbLatencyMs | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and no destructiveness, so the safety profile is clear. The description adds value by specifying what is checked (availability, engine version, storage health), which is beyond the annotations. It does not contradict annotations.
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 concise sentences, front-loading the key purpose and ending with a helpful qualifier ('Public method'). Every word earns its place with no redundancy.
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 zero parameters and the presence of an output schema, the description is complete for its simplicity. It covers the key checks performed, though it doesn't elaborate on return values (covered by output schema) or error cases. Adequate given the low complexity.
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 has no parameters, so the description has nothing to add beyond specifying the general purpose. Baseline 3 is appropriate because the schema coverage is 100% and no parameter details are 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 clearly states the tool checks 'service availability, engine version, and storage health'. It uses a specific verb ('check') and resource ('service', 'engine', 'storage'), and the 'Public method' addition distinguishes it from tools that might require authentication or have restricted access.
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 that this is a health check tool, but there is no explicit guidance on when to use it versus other tools (e.g., when to use health_check vs. slo_report). However, the context is sufficient for most scenarios given its broad nature and zero parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
initialize_contextARead-onlyInspect
Initialize a persistent memory context for a conversation or agent session. Returns REDACTED metadata by default (detail="summary"). Use detail="full" with a reason (10โ200 chars) to retrieve plaintext content under MEMORY_EXPORT_GOVERNANCE_V1.
| Name | Required | Description | Default |
|---|---|---|---|
| detail | No | Detail level. "summary" (default) = redacted metadata only, no plaintext. "full" = plaintext content; REQUIRES the reason parameter and is audit-logged. | |
| reason | No | REQUIRED only when detail="full" (10โ200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT context. Without it, detail="full" WILL fail with code -32602. |
Output Schema
| Name | Required | Description |
|---|---|---|
| scope | Yes | |
| agent_id | No | |
| memories | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=true, openWorldHint=false), the description adds significant context about the audit-logging behavior of 'full' mode, the requirement for a human-readable justification, and the failure code without it. This provides essential behavioral detail that the annotations alone do not convey, especially regarding governance compliance.
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 that efficiently convey purpose, behavior, and parameter nuances. It is well-structured with a clear front-loading of purpose followed by critical usage details for different detail levels, and every sentence is informative without waste.
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 tool with an output schema (implied by 'returns REDACTED metadata') and comprehensive parameter documentation, the description is largely complete. It explains the two modes, the dependency between parameters, and governance context. However, it could be slightly improved by briefly noting what happens if context is already initialized (e.g., whether it resets or updates) or if there are any side effects, given the 'initialize' verb suggests a starting state.
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%, and the description reinforces parameter usage by explaining that 'summary' returns redacted metadata while 'full' requires a reason and returns plaintext. It adds value beyond the schema by clarifying that 'reason' is strictly required for 'full' detail and mentioning the audit policy and error code, which aids selection.
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 initializes a persistent memory context for conversations or agent sessions, using specific verbs and resources. It distinguishes itself from sibling tools like 'list_memories' and 'recall' by focusing on initialization rather than retrieval, and it provides a clear distinction between the 'summary' and 'full' detail levels.
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 guides when to use each detail level, specifying that 'summary' is the default and 'full' requires a reason parameter under audit policy. However, it doesn't explicitly clarify when NOT to use this tool versus initializing memory via other means or when initialization is unnecessary, such as if context already exists.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_memoriesARead-onlyInspect
List memory metadata with pagination and governance limits.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum memory metadata rows to return. Hard-capped: default 5, max 10. Values above 10 are silently reduced to 10. | |
| scope | No | Explicit memory scope. "agent" (default, fail-closed) = lists memories for the given agent_id (or the token agent). "tenant" = lists memories across all agents of the authenticated tenant. | |
| agent_id | No | Agent identifier (canonical or alias). Used only when scope="agent" or scope is inferred. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| total | No | |
| memories | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, confirming read-only behavior. The description adds beyond annotations by noting governance limits and silently reduced limits, which is valuable. However, it does not explain how pagination works (e.g., cursor continuation) or any rate limits, but given strong annotations, this is acceptable.
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 that clearly states the action, object, and constraints. Every word earns its place with no redundancy or filler.
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 output schema exists and annotations are strong, the description is largely complete for a listing operation. It could mention whether results are sorted or the exact content of 'metadata', but overall it provides sufficient context for an agent to use the tool effectively.
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 detailed descriptions for each parameter, so baseline is 3. The description adds a brief summary of pagination and governance, which slightly augments the schema by framing the behavior, but does not add new semantic detail beyond what the schema already provides.
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 lists memory metadata with pagination and governance limits. However, while it distinguishes from most siblings that deal with memory storage or recall, it could be more specific about what 'memory metadata' includes to fully differentiate from other list-like tools.
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 implicitly suggests this is for reading metadata subject to governance, and sibling tools like 'recall_memory' and 'save_memory' indicate different use cases. However, no explicit guidance is given on when to use this versus other read tools like 'recall' or 'search', nor any mention of prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_feedbackAInspect
Submit feedback to adjust trust scoring for stored memories.
| Name | Required | Description | Default |
|---|---|---|---|
| signal | Yes | Feedback signal: used (auto), helpful (positive), irrelevant (negative), ignored. | |
| memoryId | No | Deprecated camelCase alias of memory_id โ still accepted for backward compatibility. | |
| memory_id | No | ID of the memory to provide feedback on (canonical snake_case name). | |
| sessionId | No | Deprecated camelCase alias of session_id โ still accepted for backward compatibility. | |
| session_id | No | Optional session identifier for tracking (canonical snake_case name). |
Output Schema
| Name | Required | Description |
|---|---|---|
| trust | No | |
| applied | Yes | |
| memoryId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, indicating mutation. The description adds that the tool 'adjusts trust scoring,' which is more specific. However, it does not disclose side effects (e.g., whether feedback triggers recalculation, is idempotent, or has rate limits). Given the annotation baseline, the description adds moderate value but lacks depth.
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 of only eight words. Every word contributes meaning with no redundancy or filler.
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 tool with 5 parameters (1 required) and an output schema, the description is minimal. It covers the core purpose but does not explain what the feedback signals mean, how trust scoring is adjusted, or when to provide each signal. While the output schema may document the response, the description lacks enough context for an agent to use the tool reliably without external knowledge.
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%, with each parameter already well described in the input schema (e.g., deprecation notes for camelCase aliases, enum values for signal). The tool description itself adds no additional parameter semantics beyond what is in the schema, so the baseline of 3 applies.
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 a specific verb and resource: 'Submit feedback to adjust trust scoring for stored memories.' This distinguishes it from sibling tools like save_memory, list_memories, and recall, which deal with creating, listing, or retrieving memories rather than providing feedback.
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 no guidance on when to use this tool versus alternatives. It does not mention contexts where feedback is appropriate, prerequisites, or exclusions. For example, it does not clarify whether feedback should be given after using a memory or after ignoring it, nor does it contrast with tools like save_memory or recall.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neural_handoverAInspect
Transfer contextual state between agents with continuity controls.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | The handover token (64 hex chars). Generated by the source agent/user in Forge UI. | |
| reason | Yes | REQUIRED (10โ200 chars). Human-readable justification for consuming this handover. Example: "Receiving project context from Claude session." | |
| consuming_agent | No | Agent identifier consuming the handover (defaults to token agent). |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| handoverId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are minimal (readOnlyHint=false, openWorldHint=false), so the description carries the behavioral burden. It signals mutation ('transfer') and 'continuity controls' but does not detail side effects (e.g., token invalidation, auth requirements beyond the token parameter, idempotency). The parameter descriptions in the schema add some transparency (token generation source, reason constraints), which prevents a lower score.
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. Every term ('Transfer', 'contextual state', 'between agents', 'continuity controls') contributes to conveying the core function. Appropriate for a tool with a clear, narrow purpose.
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 3 parameters, an output schema, and sibling tools, the description is minimally adequate. It explains the primary action but omits context like prerequisites (e.g., need an existing handover token) or what 'continuity controls' entail. Not incomplete enough for a 2, but leaves key behavioral questions unanswered.
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% with each parameter already well-documented (token as 64 hex chars from Forge UI, reason with length and example, consuming_agent with default). The tool description adds no additional meaning beyond the schema; thus the baseline score of 3 applies.
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 'Transfer contextual state between agents with continuity controls' uses a specific verb ('transfer') and resource ('contextual state') and clearly distinguishes this tool from sibling tools (health_check, memory operations, etc.) by focusing on cross-agent state transfer. No tautology or vagueness.
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 no guidance on when to use this tool vs. alternatives. Sibling tools include many memory-related operations (save_to_synapse, list_memories, recall, etc.), but no explicit context, exclusions, or alternative recommendations are given. The agent is left to infer usage without clear direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
process_textAInspect
Extract candidate memories from free-form text with governance filters and sanitization.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Free-form text to scan for auto-save triggers. | |
| source | No | Source identifier (default: mcp). | |
| project | No | Force a specific project (e.g., SYNAPSE_LAYER, OFFLY). Auto-detected if omitted. | |
| agent_id | No | Agent identifier. Defaults to "default". |
Output Schema
| Name | Required | Description |
|---|---|---|
| extracted | Yes | |
| storedCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions governance filters and sanitization, which adds context beyond the annotations (readOnlyHint=false, openWorldHint=false). The description does not contradict annotations. However, it does not detail what the governance filters do, how sanitization works, or what side effects occur (e.g., does it actually save anything or just extract?). The return value details are covered by the output schema.
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 that conveys the core purpose and key features. It could potentially mention the output schema or provide a brief example, but it's well-structured and front-loaded.
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 output schema exists (covering return values), the description appropriately addresses the tool's operation. The four parameters are well-documented in the schema. The description could mention that the tool has auto-detection of projects, but that's covered in the schema description. Overall, quite complete for this complexity.
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 has 100% coverage, describing each parameter. The description adds value by contextualizing the 'text' parameter as being scanned for 'auto-save triggers', and 'project' as having auto-detection with specific examples (SYNAPSE_LAYER, OFFLY). Baseline 3 is appropriate since the schema already covers details.
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-resource pair ('Extract candidate memories') and mentions governance filters and sanitization, which distinguishes it from sibling tools like save_memory or store_memory. However, it could more explicitly differentiate itself from search or recall tools that also deal with text.
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 implies the tool is for processing free-form text in an auto-save context, but provides no explicit guidance on when to use this vs. related tools like save_memory or store_memory. No alternatives or when-not-to-use instructions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recallARead-onlyInspect
Retrieve relevant persisted memory using semantic, temporal, priority, or hybrid routing. Governance: requires reason (10โ200 chars). Rate limit: 20/min.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Recall routing mode. "temporal" = pure chronological, "semantic" = FTS + TQ ranking, "priority" = critical/high-TQ first, "hybrid" = weighted blend, "auto" = detect from query (default). | |
| limit | No | Maximum memories to return (1โ50, default: 10). | |
| query | Yes | What to recall โ natural language query for memory retrieval. | |
| scope | No | Explicit memory scope. "agent" (default, fail-closed) = limits recall to the given agent_id (or the token agent). "tenant" = cross-agent recall within the authenticated tenant. If omitted with agent_id present, "agent" is inferred; if both omitted, the token agent is used (verified-token scope). | |
| reason | Yes | REQUIRED (10โ200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT memory. Without this parameter the call WILL fail with code -32602. Example: "User asked me to summarize last week decisions." | |
| agent_id | No | Agent identifier (canonical or alias). Used only when scope="agent" or scope is inferred. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| scope | Yes | |
| memories | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, so the read-only nature is covered. The description adds meaningful behavioral context by requiring a human-readable reason (10โ200 chars) and stating a rate limit of 20/min, which are governance and operational constraints beyond what annotations declare. This is exactly the kind of context that helps an agent understand side conditions.
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, immediately states the primary action, and then packs governance and rate-limit details without any fluff. Every word earns its place, and the structure is front-loaded with the core purpose.
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 rich input schema (100% coverage), output schema presence, and annotations, the description is sufficient to convey what the tool does and key constraints. It lacks explicit alternative usage guidance, but the combination of schema + annotations + concise description covers most of the operational context needed. A slightly stronger mention of when to prefer this over sibling tools would make it a 5.
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%, so all six parameters are already documented with detailed meanings. The description adds little beyond the schemaโit mentions routing modes but the schema already enumerates and explains them. This aligns with the baseline score of 3, as the schema does the heavy lifting.
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 ('Retrieve relevant persisted memory') and specifies routing modes (semantic, temporal, priority, hybrid), giving a specific verb+resource. However, it does not explicitly differentiate from the sibling tool 'recall_memory', which likely serves a very similar purpose, so it misses the full 'distinguishes from siblings' bar.
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 no explicit guidance on when to use this tool versus alternatives. It mentions governance (required reason) and a rate limit, but these are constraints, not usage direction. There is no 'use this when...' or 'instead of...' context, so the agent has limited help in choosing between 'recall' and siblings like 'search' or 'list_memories'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recall_memoryARead-onlyInspect
Recall persisted memory by query. Alias of recall.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Recall routing mode. | |
| limit | No | Maximum memories to return (1โ50, default: 10). | |
| query | Yes | What to recall โ natural language query for memory retrieval. | |
| scope | No | Explicit memory scope. "agent" (default, fail-closed) = limits recall to the given agent_id (or the token agent). "tenant" = cross-agent recall within the authenticated tenant. If omitted with agent_id present, "agent" is inferred; if both omitted, the token agent is used (verified-token scope). | |
| reason | Yes | REQUIRED (10โ200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Without this the call WILL fail with code -32602. Example: "Checking user project status." | |
| agent_id | No | Agent identifier (canonical or alias). Used only when scope="agent" or scope is inferred. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| scope | Yes | |
| memories | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the tool is read-onlyโthe description does not contradict this and adds context about the 'reason' parameter's audit policy and required length (10โ200 chars). This reveals behavioral constraints beyond annotations, such as the governance requirement for audit. No annotation contradiction detected.
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 very short (two sentences) but somewhat front-loaded. The first sentence defines the core purpose, but the second ('Alias of recall') is redundant given the sibling tool name. The description could be restructured to include usage guidance without adding length.
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 presence of an output schema and 100% schema coverage, the description's lack of detail on return values is acceptable. However, the tool has 6 parameters (2 required, 2 with enums) and is part of a larger set of memory-related siblingsโwithout usage examples or mode guidance, the completeness is adequate but not excellent.
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%, so the baseline is 3. The description provides a high-level purpose but adds minimal extra meaning beyond the schema's already detailed parameter descriptions. It does not elaborate on how modes differ or how to choose between them, so value added over schema is limited.
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 recalls persisted memory by query, which is a specific verb-resource combination. However, the alias relationship with 'recall' is noted but not distinguishedโthe description says 'Alias of recall' without explaining when to prefer one over the other, which slightly reduces clarity.
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 lacks explicit guidance on when to use this tool vs alternatives like 'recall' or 'list_memories'. While the parameter descriptions hint at scope and mode options, there is no direct comparison or exclusion criteria. The alias note is present but unhelpful for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_memoryCIdempotentInspect
Save a memory entry to the persistent store. Alias of save_to_synapse.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags for categorization. | |
| content | Yes | The memory content to store securely. | |
| agent_id | No | Agent identifier for memory isolation. | |
| force_intent | No | MANUAL OVERRIDE ONLY โ use apenas quando vocรช (humano) quer forรงar explicitamente a classificaรงรฃo de intenรงรฃo. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se nรฃo tiver certeza, NรO preencha este campo โ o sistema classifica automaticamente. Valores nรฃo reconhecidos sรฃo ignorados silenciosamente e retornados em warnings. | |
| intent_reason | No | Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| scope | Yes | |
| stored | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds 'persistent store' but otherwise repeats what annotations already provide (write operation via 'Save', idempotentHint via implication). It does not disclose behavioral traits like idempotency behavior, overwrite policy, or any side effects beyond the annotation's idempotentHint.
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 short sentences, front-loaded with the core purpose, and every sentence serves a purpose (purpose + alias clarification). Could be more tightly integrated but efficient overall.
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 5 parameters, a complex force_intent field, and an output schema, the description is too sparse. It omits guidance on parameter usage (e.g., agent_id for isolation, force_intent manual override) and does not set expectations for results.
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 does not provide any additional meaning beyond the schema for the 5 parameters.
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 saves a memory entry to the persistent store, providing a specific verb and resource. However, it does not differentiate from sibling tools like store_memory or recall_memory, merely noting it is an alias of save_to_synapse.
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 given on when to use this tool vs alternatives. The description only mentions it is an alias of save_to_synapse, but does not explain the distinction between the two or when to pick one over the other (e.g., store_memory).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_to_synapseAIdempotentInspect
Persist memory with encryption at rest, sanitization, and deduplication controls.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags for categorization. | |
| type | No | Event type: [MILESTONE], [DECISION], [ALERT], [AUTO-STRAT], [AUTO-OP], [AUTO-INSIGHT], [AUTO-DECISION], [AUTO-CONTEXT], [MANUAL]. | |
| content | Yes | The memory content to store securely. | |
| project | No | Project identifier (e.g., SYNAPSE_LAYER). | |
| agent_id | No | Agent identifier for memory isolation. Defaults to "default". | |
| importance | No | Importance level 1โ5 (default: 3). | |
| force_intent | No | MANUAL OVERRIDE ONLY โ use apenas quando vocรช (humano) quer forรงar explicitamente a classificaรงรฃo de intenรงรฃo. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se nรฃo tiver certeza, NรO preencha este campo โ o sistema classifica automaticamente. Valores nรฃo reconhecidos sรฃo ignorados silenciosamente e retornados em warnings. | |
| intent_reason | No | Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| scope | Yes | |
| stored | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations confirm no read-only or open-world behavior, and idempotentHint is true. The description adds encryption, sanitization, and deduplication details. However, no mention of what happens with duplicates, authorization needs, or potential side effects.
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 that succinctly captures core features: encryption, sanitization, deduplication. No wasted words; front-loaded with key behavioral traits.
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 output schema exists and schema coverage is complete, the description does not need to explain return values. It briefly mentions security controls but could elaborate on deduplication behavior or conflict resolution for repeated saves.
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%, and the description does not repeat parameter details. However, the 'force_intent' parameter is well-documented with clear usage guidance and warnings, which adds valuable semantics 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 persists memory with encryption, sanitization, and deduplication. It identifies the action ('save') and the resource ('synapse'). However, it does not differentiate from siblings like 'save_memory' or 'store_memory', which seem similar.
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 this tool vs alternatives such as 'save_memory', 'store_memory', or 'recall_memory'. The description implies general persistence, but lacks context-specific usage criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchARead-onlyInspect
Search persisted memory across agent scopes using full-text matching. Governance: requires reason (10โ200 chars) because results contain plaintext content.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results to return (1โ50, default: 20). | |
| query | Yes | Search query โ natural language or keywords. | |
| scope | No | Explicit search scope. "agent" (default, fail-closed) = limits search to the given agent_id (or the token agent). "tenant" = cross-agent search within the authenticated tenant. If omitted with agent_id present, "agent" is inferred; if both omitted, the token agent is used (verified-token scope). | |
| reason | Yes | REQUIRED (10โ200 chars). Audit policy: MEMORY_EXPORT_GOVERNANCE_V1. Human-readable justification for retrieving PLAINTEXT memory. Without this parameter the call WILL fail with code -32602. Example: "Checking prior migration decisions for the user." | |
| agent_id | No | Agent identifier (canonical or alias). Used only when scope="agent" or scope is inferred. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| scope | Yes | |
| results | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds governance context ('requires reason (10โ200 chars) because results contain plaintext content'), which goes beyond the readOnlyHint annotation. It discloses a behavioral constraint (compliance requirement). No contradiction with annotations. It does not, however, detail all edge cases or failure modes.
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 precise sentences with no wasted words. The first sentence captures the core purpose, and the second adds necessary governance context. 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 presence of an output schema, high schema coverage, and annotations, the description is mostly adequate. However, it lacks guidance on how this tool differs from sibling search/retrieval tools (e.g., 'recall', 'list_memories') and does not mention the behavior when scope is not specified (handled in schema but not in description). This gap makes it incomplete for optimal agent selection.
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 has 100% description coverage, so the baseline is 3. The description does not add any parameter-specific meaning beyond what the schema already provides. The mention of 'reason' in the description is purely a restatement of schema information.
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 verb ('Search'), the resource ('persisted memory'), the method ('full-text matching'), and the scope ('across agent scopes'). This is specific and distinguishes it from siblings like 'list_memories' (which lists without searching) or 'save_memory' (write operation).
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 implies this tool is for searching memory but provides no explicit guidance on when to use it versus alternatives (e.g., list_memories, recall). It does not state when not to use it or how it compares to other tools. The scope parameter description in the schema adds some context but is not part of the description itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
slo_reportBRead-onlyInspect
Return uptime and SLO metrics for the MCP service.
| Name | Required | Description | Default |
|---|---|---|---|
| admin_token | Yes | Admin authentication token. Must match ADMIN_TOKEN environment variable. | |
| window_hours | No | Time windows in hours for the report. Default: [24, 168] (24h + 7d). |
Output Schema
| Name | Required | Description |
|---|---|---|
| p50 | No | |
| p95 | No | |
| uptime | Yes | |
| window | No | |
| errorRate | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description adds no further behavioral disclosure. It does not mention auth requirements beyond the schema, rate limits, or potential side effects. The description is purely a restatement of the tool's purpose.
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 with no filler words. It is appropriately concise for a simple tool, though it could be slightly more informative without sacrificing 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?
Despite having an output schema and simple parameters, the description omits important context such as the requirement for admin authentication, the default time windows, and the relationship to health_check. The agent is left with insufficient guidance for correct invocation beyond the 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%, so the baseline is 3. The description adds no parameter information beyond what the schema already provides; it does not mention either admin_token or window_hours. The agent must rely entirely on the schema for 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?
The description clearly states the tool returns 'uptime and SLO metrics for the MCP service,' using a specific verb and resource. It distinguishes itself from sibling tools like health_check, which likely returns a simpler health status, and other tools focused on memory or text processing.
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 no guidance on when to use this tool versus alternatives such as health_check, nor does it mention prerequisites (e.g., the need for an admin token) or when not to use it. The agent must infer usage from the parameter schema alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
store_memoryBIdempotentInspect
Store structured memory with metadata and trust scoring.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Tags for categorization. | |
| content | Yes | The memory content to store securely. | |
| agent_id | No | Agent identifier for memory isolation. Defaults to "default". | |
| force_intent | No | MANUAL OVERRIDE ONLY โ use apenas quando vocรช (humano) quer forรงar explicitamente a classificaรงรฃo de intenรงรฃo. Valores reconhecidos: preference | fact | procedural | bio | critical | operational | strategic | compliance | security | system_directive | clinical | general | ephemeral. Se nรฃo tiver certeza, NรO preencha este campo โ o sistema classifica automaticamente. Valores nรฃo reconhecidos sรฃo ignorados silenciosamente e retornados em warnings. | |
| intent_reason | No | Auditable reason for forcing intent classification. Max 500 characters. Ignored if force_intent is absent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| scope | Yes | |
| stored | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false and idempotentHint=true, which covers the write nature and retry safety. The description adds 'trust scoring' as a behavioral hint but does not disclose side effects, permissions, or how trust scoring works. No contradiction with annotations exists, so a baseline score with some added value is appropriate.
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 concise sentence with no filler or redundancy. It front-loads the core action and object. However, it is under-specified for the tool's apparent complexity, which slightly detracts from effectiveness but does not hurt 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?
Despite rich schema descriptions and an output schema, the tool description is too sparse given the tool's complexity (5 parameters, trust scoring, force_intent override) and the crowded sibling set. It omits any contextual framing around when to use it, how it relates to save_memory/save_to_synapse, or what trust scoring entails, leaving the agent without enough high-level guidance.
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% (all 5 parameters have descriptions), so the schema carries the parameter meaning. The description only vaguely references 'metadata' which could correspond to tags or other fields, adding no concrete semantic detail beyond the schema. Thus baseline 3 applies.
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 'Store structured memory with metadata and trust scoring' clearly identifies the action (store) and the resource (structured memory), and adds distinctive features (metadata, trust scoring). However, it does not explicitly differentiate from sibling tools like save_memory or save_to_synapse, though the qualifiers 'structured' and 'trust scoring' offer some distinction.
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 no guidance on when to use this tool versus alternatives such as save_memory, recall_memory, or save_to_synapse. It lacks any mention of context, exclusions, or recommended conditions, leaving the agent without selection criteria.
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.
13 tool updates
v2.4.6- First observed
health_check - First observed
initialize_context - First observed
list_memories - First observed
memory_feedback - First observed
neural_handover - First observed
process_text - First observed
recall - First observed
recall_memory - First observed
save_memory - First observed
save_to_synapse - First observed
search - First observed
slo_report - First observed
store_memory
TDQS
There is overlap between `save_memory` and `save_to_synapse` (aliases), and `recall_memory` and `recall` (aliases), which creates ambiguity. `save_to_synapse` and `store_memory` also have very similar purposes, potentially causing misselection.
Most tools use a verb_noun pattern (e.g., list_memories, save_memory, recall_memory), but `neural_handover` breaks this pattern by using an adjective_noun. `slo_report` is a contraction that doesn't follow the strict verb_noun structure, introducing inconsistency.
With 13 tools, the count is within the well-scoped range (3-15). The presence of aliases inflates the number slightly, but otherwise, each non-alias tool serves a distinct purpose, making the count appropriate.
The tool surface covers core CRUD operations (save, recall, list, search) and lifecycle operations (initialize, feedback, handover). Minor gaps exist, such as missing explicit update or delete tools for memories, but the domain coverage is generally strong.
Maintenance
Related MCP Connectors
Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.
Shared long-term memory vault for AI agents with 20 MCP tools.
- memnodeOAuthdev.memnode
Persistent, inspectable memory for AI agents with lineage, correction, and a hosted MCP endpoint.
Persistent memory for AI agents with OAuth-backed hosted MCP access.
Related MCP Servers
- AlicenseAqualityDmaintenancePersistent memory for AI agents. Store, recall, and share knowledge across sessions with five MCP tools: remember, recall, context, forget, and share. Includes semantic search and agent/user/org scoping.53Apache 2.0
- FlicenseAqualityFmaintenancePersistent encrypted memory for AI agents. E2E encrypted private vaults, shared knowledge commons, topic channels, and agent-to-agent DMs. 23 MCP tools, free, no API key needed.24-
- AlicenseAqualityAmaintenanceProvides persistent memory for AI agents via 10 MCP tools that map to the AgentRAM REST API, enabling store, retrieve, search, and share memories across personal and shared namespaces.1057MIT
- AlicenseNot gradedqualityAmaintenanceProvides persistent, searchable memory for MCP-compatible agents, enabling recall by meaning, automatic decay, trust scoring, and cross-agent handoffs.5MIT
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/SynapseLayer/synapse-layer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server