Provides integration for searching movies, checking showtimes, and managing ticket bookings via Gemini's function-calling capabilities.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Movie Booking AssistantFind showtimes for Oppenheimer at PVR Orion Mall tonight"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Movie Booking Assistant
A demo movie booking system for Bangalore cinemas, built to showcase two ways of integrating AI with a Python backend:
Gemini chat — a terminal chatbot powered by Google Gemini with function calling
MCP server — exposes the same APIs as tools for MCP-compatible AI clients (e.g. Claude)
Project Structure
demo1/
├── api_v1.py # Movies & Showtimes API
├── api_v2.py # Bookings API
├── api_v3.py # Theatres & Seats API
├── chat.py # Gemini AI terminal chatbot
└── mcp_server.py # MCP server (for Claude / other MCP clients)API Files
File | Responsibility | Key Functions |
| Movies & showtimes |
|
| Bookings |
|
| Theatres & seats |
|
All data is hardcoded in-memory — no database required.
How It Works
Gemini Chat (chat.py)
You type a message
→ Sent to Gemini API
→ Gemini picks a tool to call (based on function docstrings)
→ Your code runs the function locally
→ Result sent back to Gemini
→ Gemini replies in plain EnglishGemini never runs your code directly. It reads the function name, parameters, and docstring to decide what to call — your code executes it and reports back.
MCP Server (mcp_server.py)
FastMCP automatically converts each FastAPI app into MCP tools, namespaced as movies_*, bookings_*, and theatres_*. An MCP-compatible client (like Claude Code) connects to the server and calls tools the same way Gemini does — but over the MCP protocol instead.
Setup
1. Install dependencies
pip install -r requirements.txt2. Set your Gemini API key
Create a .env file in the project root:
GEMINI_API_KEY=your_key_hereGet a key at aistudio.google.com.
Usage
Run the Gemini chatbot
python chat.pyExample interaction:
You: What sci-fi movies are showing today?
[calling tool: search_movies with {'genre': 'Sci-Fi'}]
Gemini: There are two sci-fi movies showing today — Inception and The Matrix...
You: Book 2 tickets for Inception at PVR Orion Mall
[calling tool: get_showtimes with {'movie_id': 'MOVIE-003'}]
[calling tool: book_tickets with {'showtime_id': 'SHOW-001', 'seats': 2, 'user_name': 'Joshua'}]
Gemini: Done! I've booked 2 tickets for Inception...Type quit or exit to stop.
Run the MCP server
python mcp_server.pyThen connect any MCP-compatible client to it. For Claude Code, add it to your MCP settings pointing to this script.
Data Overview
10 movies — including Inception, The Matrix, Oppenheimer, and more
10 theatres — across Bangalore (PVR, INOX, Cinepolis)
15 showtimes — across 2 days, with 2D and IMAX options
3 pre-existing bookings — for user "Joshua"
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.