adk-redis is the Redis layer for Google ADK agents. It implements ADK's BaseMemoryService, BaseSessionService, and BaseTool interfaces against Redis, Redis Vector Library, Redis Agent Memory. It also ships MCP toolset helpers and semantic-cache providers.
| Surface | What you get | Backed by |
|---|---|---|
| Sessions | BaseSessionService with durable conversation state |
Redis Agent Memory or Agent Memory Server |
| Long-term memory | BaseMemoryService with semantic search |
Redis Agent Memory or Agent Memory Server |
| Memory tools | LLM-controlled memory CRUD operations | Redis Agent Memory or Agent Memory Server |
| Search tools | Vector, hybrid, range, text, and SQL search as BaseTool subclasses |
RedisVL |
| MCP search | search-records / upsert-records via ADK's native McpToolset |
rvl mcp server |
| Semantic cache | Skip repeat LLM calls by semantic similarity | RedisVL or Redis LangCache |
pip install adk-redisOptional extras:
pip install 'adk-redis[memory]' # sessions + long-term memory services
pip install 'adk-redis[search]' # RedisVL-backed search tools
pip install 'adk-redis[sql]' # RedisSQLSearchTool
pip install 'adk-redis[langcache]' # managed semantic cache provider
pip install 'adk-redis[all]' # everything aboveMemory backends are selected with backend:
| Backend | Use when | Client |
|---|---|---|
redis-agent-memory |
You want Redis Agent Memory managed by Redis or the Redis Agent Memory data plane | redis-agent-memory |
opensource-agent-memory |
You want the open source self-hosted Agent Memory Server | agent-memory-client |
Prerequisites: Python 3.10+, Redis 8.4+, and one memory backend. See the Quickstart for full setup steps.
from google.adk import Agent
from google.adk.runners import Runner
from adk_redis import (
RedisLongTermMemoryService,
RedisLongTermMemoryServiceConfig,
RedisWorkingMemorySessionService,
RedisWorkingMemorySessionServiceConfig,
)
session_service = RedisWorkingMemorySessionService(
config=RedisWorkingMemorySessionServiceConfig(
backend="redis-agent-memory",
api_base_url="http://localhost:8088",
api_key="...",
store_id="...",
default_namespace="my_app",
),
)
memory_service = RedisLongTermMemoryService(
config=RedisLongTermMemoryServiceConfig(
backend="redis-agent-memory",
api_base_url="http://localhost:8088",
api_key="...",
store_id="...",
default_namespace="my_app",
),
)
agent = Agent(
model="gemini-2.5-flash",
name="memory_agent",
instruction="You are a helpful assistant with long-term memory.",
)
runner = Runner(
app_name="my_app",
agent=agent,
session_service=session_service,
memory_service=memory_service,
)For the open source self-hosted Agent Memory Server, set
backend="opensource-agent-memory" and omit api_key and store_id unless your
server requires them.
→ More examples: search tools, MCP search, semantic caching
Each example ships with a README and .env.example. Memory and session
examples that register services through get_service_registry() run via
python main.py; tools-only and search examples run via adk web. See each
example's README and the Examples index for the runner and backend each uses.
| Category | Examples |
|---|---|
| Memory and sessions | managed_memory_quickstart · simple_redis_memory · travel_agent_memory_hybrid · travel_agent_memory_tools · fitness_coach_mcp |
| Search | redis_search_tools · redis_sql_search · redisvl_mcp_search |
| Caching | semantic_cache · langcache_cache |
git clone https://github.com/redis-developer/adk-redis.git
cd adk-redis
make dev # install with all extras + dev deps
make check # format, lint, type-check, and testSee CONTRIBUTING.md for the full guide.
Open an issue or submit a PR following CONTRIBUTING.md.
Apache 2.0. See LICENSE.
- Documentation: concepts, how-to guides, API reference
- Google ADK · Agent Memory Server · RedisVL · Redis LangCache
- ADK + Redis on redis.io
