Use this file to discover all available pages before exploring further.
Give Google ADK agents real-time web data by connecting to the Nimble MCP server — no extra SDK wiring needed.Google ADK (Agent Development Kit) uses the Model Context Protocol to connect agents to external tools. Since Nimble provides a hosted MCP server, ADK agents can discover and use all Nimble tools automatically.
Connect an ADK agent to the Nimble MCP server using McpToolset with StreamableHTTPConnectionParams. ADK auto-discovers all available Nimble tools — search, extract, crawl, map, and agents.
Python
import osfrom google.adk.agents import LlmAgentfrom google.adk.tools.mcp_tool import McpToolsetfrom google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPConnectionParamsNIMBLE_API_KEY = os.environ["NIMBLE_API_KEY"]root_agent = LlmAgent( model="gemini-2.5-flash", name="web_research_agent", instruction=( "You are a research assistant with access to real-time web data. " "Use the available tools to search the web, extract content from URLs, " "crawl sites, and discover URLs." ), tools=[ McpToolset( connection_params=StreamableHTTPConnectionParams( url="https://mcp.nimbleway.com/mcp", headers={"Authorization": f"Bearer {NIMBLE_API_KEY}"} ) ) ],)
import asynciofrom google.adk.runners import Runnerfrom google.adk.sessions import InMemorySessionServiceasync def main(): session_service = InMemorySessionService() session = await session_service.create_session( app_name="nimble_app", user_id="user" ) runner = Runner( agent=root_agent, app_name="nimble_app", session_service=session_service, ) from google.genai import types response = await runner.run_async( user_id="user", session_id=session.id, new_message=types.Content( role="user", parts=[types.Part(text="What are the latest trends in AI agents?")] ), ) for event in response: if event.content and event.content.parts: for part in event.content.parts: if part.text: print(part.text)asyncio.run(main())