ADK Flight Search

v1.0.0Search & Data Extractionstable

Demo of ADK (Agent Development Kit) as an MCP (Model Context Protocol) client for flight search capabilities.

adkadk-pythongemini2genaigoogle-cloud
Share:
34
Stars
0
Downloads
0
Weekly
0/5

What is ADK Flight Search?

ADK Flight Search is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to demo of adk (agent development kit) as an mcp (model context protocol) client for flight search capabilities.

Demo of ADK (Agent Development Kit) as an MCP (Model Context Protocol) client for flight search capabilities.

This server falls under the Search & Data Extraction category on MCPgee, the world's largest MCP server directory with 33,000+ servers.

Features

  • Demo of ADK (Agent Development Kit) as an MCP (Model Context

Use Cases

Search for flights
Integrate with Gemini agents
Enable travel booking capabilities
arjunprabhulal

Maintainer

LicenseMIT
Languagepython
Versionv1.0.0
UpdatedApr 26, 2026
Statushealthy
Maintenanceactive

Works with

ClaudeOpenAIwindowsmacoslinux

Installation

Manual Installation

npx adk-python-mcp-client

Configuration

Configuration Details

Config File

claude_desktop_config.json

Performance

Response Metrics

Response Time< 200ms
ThroughputMedium

Resource Usage

Memory UsageLow
CPU UsageLow

How to Set Up and Use ADK Flight Search

ADK Python MCP Client is a reference implementation demonstrating how to use Google's Agent Development Kit (ADK) as an MCP client, with a Gemini 2 LLM agent that connects to an external MCP flight search server to answer natural language queries about flights in real time. It showcases the full integration pattern — MCPToolset for dynamic tool discovery, InMemorySessionService for stateful conversations, Runner for asynchronous event-driven execution, and proper resource cleanup via an exit stack. Developers building their own Gemini-powered ADK agents that consume MCP servers can use this as a concrete, runnable template.

Prerequisites

  • Python 3.8 or higher
  • A Google Gemini API key (set as GOOGLE_API_KEY — note: ADK uses GOOGLE_API_KEY, not GEMINI_API_KEY)
  • A SerpAPI key (set as SERP_API_KEY) for real-time flight data
  • pip or uv for package installation
  • Internet access for Gemini API and SerpAPI calls
1

Clone the repository

Clone the demo project to get the client implementation and requirements file.

git clone https://github.com/arjunprabhulal/adk-python-mcp-client.git
cd adk-python-mcp-client
2

Create a virtual environment and install dependencies

Set up an isolated Python environment and install the required packages, including the Google ADK, the mcp-flight-search MCP server, and Google GenAI SDK.

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

pip install -r requirements.txt
# Or install manually:
pip install google-adk mcp-flight-search google-generativeai python-dotenv
3

Configure your API keys

Copy the example environment file and populate it with your Gemini and SerpAPI keys. ADK requires GOOGLE_API_KEY specifically — using GEMINI_API_KEY will cause a ValueError.

cp .env.example .env
# Edit .env and set:
# GOOGLE_API_KEY=your-google-api-key
# SERP_API_KEY=your-serpapi-key
4

Verify the mcp-flight-search MCP server is installed

The client connects to the mcp-flight-search package as an MCP server over stdio. Confirm it installed correctly.

pip show mcp-flight-search
5

Run the flight search client

Execute the client script. It will connect to the MCP server, initialise the Gemini ADK agent, process the default flight query, stream events, and clean up the connection.

python client.py

ADK Flight Search Examples

Core client code pattern

The key integration pattern: connecting to the MCP server with MCPToolset, creating an LlmAgent with discovered tools, and running a query with the ADK Runner.

from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset, StdioServerParameters
from google.adk.agents import LlmAgent
from google.adk.runners import Runner
from google.adk.sessions import InMemorySessionService
import os

server_params = StdioServerParameters(
    command="mcp-flight-search",
    args=["--connection_type", "stdio"],
    env={"SERP_API_KEY": os.getenv("SERP_API_KEY")},
)
tools, exit_stack = await MCPToolset.from_server(connection_params=server_params)

root_agent = LlmAgent(
    model=os.getenv("GEMINI_MODEL", "gemini-2.5-pro-preview-03-25"),
    name="flight_search_assistant",
    instruction="Help user to search for flights using available tools.",
    tools=tools,
)

Prompts to try

Example flight search queries to pass to the ADK agent via client.py. Modify the query variable in client.py or extend it to accept CLI input.

- "Find flights from Atlanta to Las Vegas on 2025-05-05"
- "Search for one-way flights from New York to London on 2025-07-15"
- "Find the cheapest flights from San Francisco to Seattle next Monday"
- "Show me round-trip options from Chicago to Miami from 2025-06-01 to 2025-06-08"

Troubleshooting ADK Flight Search

ValueError: Missing key inputs argument — ADK cannot find the Google API key

ADK requires the environment variable to be named GOOGLE_API_KEY, not GEMINI_API_KEY. Rename it in your .env file and re-run. The error message confirms this: 'To use the Google AI API, provide (api_key) arguments.'

429 RESOURCE_EXHAUSTED errors from the Gemini API

You have hit the rate limit on your Gemini API tier. Wait a few seconds and retry, or implement exponential backoff around the runner.run_async call. Using a paid Gemini API tier raises the quota limits significantly.

mcp-flight-search command not found when the client starts

The mcp-flight-search package must be installed in the same Python environment as the client. Run `pip install mcp-flight-search` inside the activated virtual environment and verify with `pip show mcp-flight-search`.

Frequently Asked Questions about ADK Flight Search

What is ADK Flight Search?

ADK Flight Search is a Model Context Protocol (MCP) server that demo of adk (agent development kit) as an mcp (model context protocol) client for flight search capabilities. It connects AI assistants to external tools and data sources through a standardized interface.

How do I install ADK Flight Search?

Follow the installation instructions on the ADK Flight Search GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.

Which AI clients work with ADK Flight Search?

ADK Flight Search works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.

Is ADK Flight Search free to use?

Yes, ADK Flight Search is open source and available under the MIT license. You can use it freely in both personal and commercial projects.

Browse More Search & Data Extraction MCP Servers

Explore all search & data extraction servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.

Quick Config Preview

{ "mcpServers": { "adk-python-mcp-client": { "command": "npx", "args": ["-y", "adk-python-mcp-client"] } } }

Add this to your claude_desktop_config.json or .cursor/mcp.json

Read the full setup guide →

Ready to use ADK Flight Search?

Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.

33,000+ ServersFree & Open SourceStep-by-Step Guides