Google ADK (Agent Development Kit) is Google’s framework for building Gemini-powered agents. Idun Engine wraps ADK agents as production services with AG-UI streaming, guardrails, and observability.Documentation Index
Fetch the complete documentation index at: https://docs.idun-group.com/llms.txt
Use this file to discover all available pages before exploring further.
Code
agent.py
If you use Vertex AI models, authenticate with
gcloud auth application-default login before running the agent.Config
config.yaml
How it works
The ADK adapter wraps your rawAgent instance for production serving. Five stages, driven by agent.config in config.yaml:
- Load.
agentis parsed as<file_path>:<variable_name>. The adapter resolves it viaimportlib.util.spec_from_file_location, so the value must point at a real.pyfile (relative or absolute). Unlike LangGraph, module-dotted notation (my_pkg.agent:root_agent) is rejected here. - Wrap. The loaded agent goes into
google.adk.apps.App(root_agent=agent, name=app_name), then intoADKAGUIAgentfromag_ui_adkfor AG-UI event streaming. - Sessions. A
session_serviceis initialized fromconfig.yaml(in_memoryby default, ordatabase, orvertex_ai) and passed into the runner. Session state, including the AG-UIthread_idmapping, is kept in this service. - Memory. A
memory_serviceis initialized in parallel (in_memoryby default, orvertex_ai) for long-term recall. - Observability. When a Langfuse provider is enabled in
observability:, the adapter installsGoogleADKInstrumentorfromopeninference.instrumentation.google_adkautomatically. When LangSmith is enabled, it callslangsmith.integrations.google_adk.configure_google_adk(name=...). No extra wiring needed in your agent code. - Serve. Chat requests POST to
/agent/runwith the AG-UI streaming protocol, same as LangGraph.
libs/idun_agent_engine/src/idun_agent_engine/agent/adk/adk.py.
Adding MCP tools
To wire MCP servers registered inconfig.yaml (or the admin panel) into the agent, pull them in with get_adk_tools() and pass them to the Agent constructor:
agent.py
get_adk_tools() runs at engine boot, after the MCP registry has connected to every server in mcp_servers, so every advertised tool is available to the agent without per-tool wiring. See MCP Servers for the full transport reference.
Session and memory services
ADK agents have two persistence layers: session services (conversation state) and memory services (long-term recall). The scaffoldedconfig.yaml uses in-memory for both by default. See Memory and sessions for ADK for backend options including Database (PostgreSQL) and Vertex AI.
Next steps
Memory and session details for ADK
Configure session and memory services across backends.
Guardrails
Add safety guards to your agent inputs and outputs.
Observability
Trace runs, monitor latency, and inspect token usage.
MCP Servers
Connect external tools through the Model Context Protocol.