Gemini Function Calling + Model Context Protocol(MCP) Flight Search

Created By
arjunprabhulala year ago
Model Context Protocol (MCP) with Gemini 2.5 Pro. Convert conversational queries into flight searches using Gemini's function calling capabilities and MCP's flight search tools
Overview

Gemini Function Calling + MCP Flight Search is a natural language flight search system that utilizes Google's Gemini LLM and Model Context Protocol (MCP) to convert conversational queries into flight searches.

How to use the project?

To use this project, clone the repository, install the required dependencies, set up your environment variables with your API keys, and run the client script to start searching for flights using natural language queries.

Key features of the project?

  • Natural language flight search using Gemini API
  • Automatic parameter extraction via function calling
  • Integration with mcp-flight-search tool via stdio
  • Formatted JSON output of flight results
  • Environment-based configuration for API keys

Use cases of the project?

  1. Finding flights based on natural language queries (e.g., "Find flights from New York to London on June 10")
  2. Integrating flight search capabilities into applications using AI
  3. Automating flight search processes for travel agencies

FAQ from the project?

  • What are the prerequisites for running this project?

You need Python 3.7+, a Google AI Studio API key for Gemini, a SerpAPI key, and the mcp-flight-search package installed.

  • How does the project handle errors?

The integration includes error handling for input validation, API communication errors, tool execution failures, and response parsing issues.

  • Is there a demo available?

Yes, you can see example outputs in the project documentation.

Project Info
Created At
a year ago
Updated At
a year ago
Author Name
arjunprabhulal
Star
0
Language
Python
License
-

Recommend Servers

View All
Bring your real authenticated browser session to AI coding agents. Local-first MCP server + Chrome MV3 extension. No cloud. No telemetry.
@Cubenest

peek records the user's actual logged-in browser (DOM via rrweb, console events, network metadata, optional response bodies via opt-in Deep capture) through a Chrome MV3 extension. The extension ships events through a native-messaging stdio bridge to a local MCP server (peek-mcp), which persists them to a SQLite database at ~/.peek/sessions.db. AI coding agents (Claude Code, Cursor, Cline, Windsurf) read sessions from the database via 10 MCP tools: Tool What it does list_recent_sessions List recently recorded sessions (id, origin, ts, event count). get_session_summary LLM-readable narrative summary of a session. get_session_console_errors Console errors recorded in a session. get_session_network_errors Failed/notable network requests in a session. get_user_action_before_error Last N user actions before a console error. generate_playwright_repro Generate a runnable Playwright test from a session. get_dom_snapshot Reconstruct the DOM at a given timestamp. query_dom_history Timeline of attribute/text changes for a selector. request_authorization Side-panel consent for write actions (Level 3). execute_action Dispatch a UI action (gated by permission level + destructive blocklist). Why local-first matters Every other "browser session for AI" tool ships to a vendor cloud. peek's SQLite + extension live on the user's machine — no remote endpoints, no telemetry. The privacy policy (docs/peek/PRIVACY_POLICY.md) is the source of truth. Install # 1. Add the MCP server to Claude Code claude mcp add peek -- npx -y @peekdev/mcp # 2. Install the Chrome extension from the Chrome Web Store # (link added once the CWS listing is approved)

a day ago