Skip to content

Synap integration for ADK

Supported in ADKPython

The maximem-synap-google-adk plugin connects your ADK agent to Synap, a managed long-term memory layer for AI agents. Synap automatically extracts and structures knowledge from conversations — facts, preferences, episodes, emotions, and temporal events — and retrieves only what is semantically relevant to the current query.

Use cases

  • Persistent cross-session memory: Give your ADK agents long-term memory that survives across sessions and deployments — no manual bookkeeping.
  • Multi-tenant isolation: Memory is scoped to user_id and customer_id, ensuring strict isolation in multi-user deployments.
  • Semantic recall: Server-side extraction surfaces only what is relevant to the current query, keeping prompts short and tokens efficient.

Prerequisites

Installation

pip install maximem-synap-google-adk maximem-synap

Set the following environment variable:

export SYNAP_API_KEY="your-synap-api-key"

Use with agent

create_synap_tools(...) returns two FunctionTool instances — search_memory and store_memory — that the agent can call to recall and persist memories on demand.

import os

from google.adk.agents.llm_agent import Agent
from maximem_synap import MaximemSynapSDK
from synap_google_adk import create_synap_tools

sdk = MaximemSynapSDK(api_key=os.environ["SYNAP_API_KEY"])

synap_tools = create_synap_tools(
    sdk=sdk,
    user_id="alice",
    customer_id="acme_corp",
)

root_agent = Agent(
    model="gemini-2.0-flash",
    name="memory_assistant",
    instruction=(
        "You are a helpful assistant with long-term memory. "
        "Use search_memory to recall what you know about the user. "
        "Use store_memory to save important new facts the user mentions."
    ),
    tools=synap_tools,
)

Run with:

adk run path/to/your_agent

Teach the agent something on the first turn (e.g. "I'm allergic to peanuts"), then ask about it on a later turn — Synap retrieves the relevant memory automatically, even across separate adk run invocations.

Available tools

Tool Description
search_memory Semantic search over the user's stored memories. Takes a natural-language query and returns the most relevant facts, preferences, and episodes.
store_memory Persist an explicit fact in the user's long-term memory. The agent calls this when the user shares something worth remembering.

Resources