Synap Memory
Server Details
Persistent memory for AI agents — log and recall conversation context over MCP.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- maximem-ai/maximem_synap_sdk
- GitHub Stars
- 48
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 4 of 4 tools scored. Lowest: 3.7/5.
Each tool has a distinct purpose: logging exchanges, checking async status, listing memories, and recalling context. No functional overlap exists.
All tool names follow the verb_noun pattern with snake_case (e.g., log_exchange, recall_context). The pattern is uniform and predictable.
With 4 tools, the server covers the essential operations for a memory system without being bloated or sparse.
Core lifecycle (store, recall, list, status) is covered. Missing only an explicit delete or update tool, but the async extraction model mitigates this.
Available Tools
4 toolscheck_memory_statusAInspect
Check whether a logged exchange has finished processing. Pass the ingestion_id returned by log_exchange. Returns the processing status and how many memories were extracted. Useful to confirm a save completed (extraction is asynchronous).
| Name | Required | Description | Default |
|---|---|---|---|
| ingestion_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It explains the tool returns processing status and memory count, implies read-only behavior, and clarifies the asynchronous nature. No contradictions or missing critical traits.
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 concise sentences: first states purpose and input, second adds detail and usage context. No redundancy or unnecessary words.
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 one parameter and an output schema, the description sufficiently covers what it does, what it needs, and what it returns. No gaps given the simplicity.
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 single parameter ingestion_id is explained as returned by log_exchange, providing meaning beyond the schema's type/name. Schema coverage is 0%, so this description is essential and adequate.
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 whether a logged exchange has finished processing, specifying the resource (logged exchange) and action (check status). It mentions the required input (ingestion_id) and output (processing status and memory count). This distinguishes it from siblings like log_exchange and list_recent_memories.
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 advises to use the ingestion_id returned by log_exchange, indicating the tool is for post-logging confirmation. It notes that extraction is asynchronous, implying polling usage. No explicit negative guidance but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_recent_memoriesAInspect
List recent things remembered about this user. Useful for debugging or to confirm that memory is working. Pass user_id/customer_id to scope to one person.
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | No | ||
| customer_id | No | ||
| max_results | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
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 states the tool 'lists' memories, which implies a read-only operation, but does not disclose any behavioral traits such as whether it's safe to call repeatedly, any performance impact, or how it handles missing parameters. The description is minimal.
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 three sentences long with no redundancy. Each sentence adds value: purpose, use case, and parameter guidance. It is front-loaded and 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?
Given that an output schema exists but no details are in the description, the tool is minimally complete. However, it does not mention what the output contains (e.g., list of memory items with timestamps) or any limitations like recency cutoff. The description could be more informative.
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 0%, so the description must compensate. It adds meaning for 'user_id' and 'customer_id' by saying 'Pass user_id/customer_id to scope to one person', but does not explain 'max_results' or any constraints. This is partial compensation.
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 'List recent things remembered about this user', which is a specific verb-resource combination. It distinguishes from siblings like 'recall_context' and 'log_exchange' by focusing on recent memories.
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 mentions it's 'useful for debugging or to confirm that memory is working', which implies usage context but does not explicitly tell when to use this tool versus alternatives like 'recall_context' or 'check_memory_status'. No exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_exchangeAInspect
After each user message, send the exchange here so it can be remembered. You do not need to decide what is important — just forward the user message (and your reply, if you have one) and Synap will keep what matters. If your app serves more than one end-user, pass that person's stable id as user_id (or an organization id as customer_id) so each person's memory stays separate; if every conversation is the same single user, omit them. Logging is fire-and-forget by default; set wait_for_processing=true only when you need to confirm the memory finished extracting before continuing.
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | No | ||
| customer_id | No | ||
| user_message | Yes | ||
| conversation_id | No | ||
| assistant_message | No | ||
| wait_for_processing | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that logging is fire-and-forget by default, with optional synchronous processing. No annotations provided, so description fully bears the burden and does so thoroughly, explaining memory extraction behavior.
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?
Concise yet comprehensive. Front-loaded with main action, then structured details on parameters and behavior. Every sentence adds value without 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 6 parameters (1 required) and no annotations, the description fully covers usage, behavioral details, and parameter semantics. Output schema exists but description still adequately prepares the agent for invocation.
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?
With 0% schema description coverage, description compensates fully by explaining each parameter's role: user_id for stable user ID, customer_id for org ID, conversation_id for multi-conversation, and wait_for_processing for synchronous mode. Adds real-world guidance on when to omit IDs.
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 specifies the tool's purpose: 'After each user message, send the exchange here so it can be remembered.' It distinctively states the action (log exchange for memory) and differentiates from siblings which check status or recall context.
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?
Provides explicit when to use (after each user message), when not to use alternatives (don't decide importance), and specifics on user_id/customer_id for multi-user scenarios. Also covers fire-and-forget vs synchronous usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recall_contextAInspect
Before replying, call this to recall anything already known about this user from past conversations. Use the user's latest message as the query. If you serve multiple end-users, pass the same user_id (or customer_id) you log with so you recall the right person's memory.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| user_id | No | ||
| customer_id | No | ||
| max_results | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Implies read-only operation (recall) and safe behavior. Could mention idempotency or rate limits, but for a simple recall, it's adequate.
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 filler. Front-loaded with action recommendation. Every sentence adds value.
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?
Output schema exists to explain return values. Description covers when to call, query strategy, and user identification. Complete for a recall tool with sibling context.
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 0%, but description adds meaning for 'query' (use latest message) and advises on 'user_id'/'customer_id'. Does not cover 'max_results', but overall compensates partially for lack of schema descriptions.
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 verb 'recall' and resource 'context' about the user from past conversations. Clearly distinguishes from sibling tools (check_memory_status, list_recent_memories, log_exchange) which have different purposes.
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?
Explicitly says 'before replying' and advises to use the user's latest message as query. Also suggests passing user_id/customer_id for multi-user scenarios. No explicit when-not-to-use, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!