This is the no-code surface. If you’re building with code, use an SDK or framework integration instead — you get the same memory, with more control.
How it works
The MCP server re-fronts Synap’s existing memory operations as a small set of tools. The model decides when to call them from their descriptions alone, so you configure nothing:- Forward everything. Your agent forwards each conversation turn to a single “log” tool. You never decide what is “memory-worthy” — Synap’s extraction pipeline decides what to keep.
- Recall before replying. Your agent fetches what’s already known about the person before it answers.
- Async by design. Logging is fire-and-forget so a slow write never stalls a reply; extraction happens in the background.
Get your connection details
Create an agent
Describe, in plain English, what your agent does and what it should remember. Synap designs the memory architecture for you — there’s nothing to configure.
Connect your platform
- Gumloop
- n8n
- Claude / other MCP clients
Add the credential
Settings → Credentials → Add → MCP Server. Paste your MCP Server URL, choose Bearer token, and paste your token. Connect.
Enable it on your agent
Add an Agent (or Ask AI) node and enable the Synap MCP credential. The memory tools appear automatically.
Tools
The MCP server exposes these tools. Descriptions are written so the model calls them on its own — you don’t wire anything up.| Tool | What it does |
|---|---|
log_exchange | Forward a user (and optional assistant) turn to be remembered. Synap decides what persists. |
recall_context | Recall what’s already known about the current person, for use before replying. |
list_recent_memories | List recent memories — handy for debugging or confirming memory works. |
check_memory_status | Check whether a logged exchange finished processing (extraction is asynchronous). |
Arguments
user_id(optional) — a stable id for the end-user. Pass it on bothlog_exchangeandrecall_contextto keep each person’s memory separate.customer_id(optional) — an organization id, for B2B / multi-tenant agents.conversation_id(optional) — groups turns into a conversation.wait_for_processing(optional,log_exchange) — whentrue, waits for extraction to finish and reports the outcome instead of returning immediately. Leave it off for normal turn-by-turn logging.
Scoping memory
Who sees which memories is decided by the ids you pass — there’s nothing to configure:One shared memory
Pass no ids. Everything is shared across the agent. Good for a single-purpose assistant.
Per end-user
Pass
user_id. Each person gets their own private memory; everyone still shares the agent’s general knowledge.Per organization
Pass
customer_id for B2B agents that serve multiple customer organizations.Prove it works
The dashboard’s MCP page includes a Test my memory button: it writes a sample memory and reads it back live, so you can confirm your token works before going live. In your platform, the same loop is the real test — tell your agent a fact, then in a new session ask what it remembers.Troubleshooting
The agent never saves or recalls
The agent never saves or recalls
Confirm the tools are listed on the credential/node. If the model still doesn’t call them, add a one-line instruction to your agent prompt: “Use your memory tools — log every user message and recall before replying.”
Works on OpenAI but not on Claude (Gumloop)
Works on OpenAI but not on Claude (Gumloop)
That’s the custom-header drop. Make sure auth is set as a Bearer token, not a custom header.
Recall returns nothing right after saving
Recall returns nothing right after saving
Extraction is asynchronous — wait a few seconds and try again, or use
check_memory_status (or wait_for_processing) to confirm processing finished.Connection won't establish
Connection won't establish
Re-check the URL (it ends in
/mcp) and that the token is pasted exactly. Tokens are shown once — regenerate from the MCP page if you’ve lost it.