Skip to main content
Glama

🎬 BookMyShow MCP Webscraper

Python Version FastAPI MCP Server License Tests

Un scraper de Python y envoltorio de API para BookMyShow que extrae listados de películas, horarios de cine, precios de entradas y detalles de ubicación de sedes (incluyendo latitud y longitud GPS).

Empaqueta todo en un servidor REST FastAPI, herramientas MCP (para asistentes de IA como Claude o Cursor), una herramienta CLI y un panel web integrado.


✨ Características

  • Lista películas y eventos: Obtiene listados de películas activas o próximas en ciudades indias (Mumbai, Delhi-NCR, Bengaluru, Chennai, etc.), con filtros por idioma y género.

  • Obtiene horarios y precios: Extrae horarios de cine, formatos de pantalla (2D, 3D, IMAX, 4DX), rangos de precios de entradas (en ₹) y disponibilidad de asientos.

  • Extrae ubicaciones de sedes y lat/long: Obtiene direcciones de calles de cines, coordenadas exactas de latitud y longitud, y comodidades de la sede (aparcamiento, patio de comidas, entrada con M-ticket).

  • Obtiene sinopsis y tráilers de películas: Recupera resúmenes de la trama, información del reparto y equipo, calificaciones, carteles y enlaces a tráilers de YouTube.

  • Funciona como servidor MCP: Funciona de inmediato con herramientas de IA (Claude Desktop, Cursor, Antigravity) mediante bms-mcp (o mcp_server.py localmente).

  • Servidor REST FastAPI: Documentación interactiva de API Swagger (/docs).

  • CLI de terminal: Interfaz de terminal para búsqueda, listados y exportaciones.

  • Exporta a archivos: Exporta los datos extraídos a JSON, CSV o Excel (.xlsx).

  • Panel web: Panel simple con tema claro para explorar películas y probar endpoints.


Related MCP server: Movie Booking Assistant

🚀 Inicio rápido e instalación

git clone https://github.com/m0han-r/bookmyshow-mcp-webscraper.git
cd bookmyshow-mcp-webscraper
pip install -r requirements.txt

🔌 API y herramientas MCP

Endpoint REST

Nombre de herramienta MCP

Parámetros

Descripción

GET /api/v1/cities

bms_get_cities

popular_only

Regiones indias compatibles y ciudades populares

GET /api/v1/movies

bms_get_movies

city, language, genre

Listados de películas activas con filtros de idioma/género

GET /api/v1/events

bms_get_events

city, category

Eventos en vivo, espectáculos de comedia, conciertos de música y deportes

GET /api/v1/movies/{code}

bms_get_movie_details

movie_code, city

Sinopsis, reparto, equipo, calificaciones, cartel y enlaces a tráilers

GET /api/v1/showtimes

bms_get_showtimes

movie_code, city, date, language, format

Horarios, formatos de pantalla (IMAX/3D/4DX), precios, asientos y filtrado por idioma

GET /api/v1/venues/{code}

bms_get_venue_details

venue_code, city

Dirección de la calle del cine, latitud exacta, longitud e instalaciones

GET /api/v1/search

bms_search

query, city

Búsqueda cruzada de películas y eventos en vivo

Ejemplo de respuesta de sede (GET /api/v1/venues/PCAN?city=chennai):

{
  "success": true,
  "count": 1,
  "data": {
    "venue_code": "PCAN",
    "venue_name": "PVR: VR Chennai, Anna Nagar",
    "address": "3rd Floor, VR Mall, Metro Zone, Jawaharlal Nehru Road, Anna Nagar, Chennai, Tamil Nadu 600040",
    "latitude": 13.082561,
    "longitude": 80.194803,
    "facilities": ["Ticket Cancellation", "F&B", "MTicket", "Parking Facility", "Food Court"]
  }
}

🌐 Ejecutar el servidor de API REST

Inicie el servidor:

python main.py

🤖 Configuración del servidor MCP

Conecte su asistente de IA (Claude Desktop, Cursor, Antigravity) usando uvx. uvx obtiene automáticamente el paquete de GitHub y ejecuta el punto de entrada del script bms-mcp registrado en pyproject.toml.

Configuración de Claude Desktop / Cursor / Antigravity

Añada a su %APPDATA%\Claude\claude_desktop_config.json (o .cursor/mcp.json):

{
  "mcpServers": {
    "bookmyshow": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git",
        "bms-mcp"
      ]
    }
  }
}

Ejecución directa en terminal

Ejecute de forma nativa en PowerShell o Símbolo del sistema (uv genera y ejecuta envoltorios bms-mcp.exe en Windows):

uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcp

Configuración de Claude Desktop / Cursor / Antigravity

Añada a su ~/.config/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "bookmyshow": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git",
        "bms-mcp"
      ]
    }
  }
}

Ejecución directa en terminal

Ejecute directamente en la terminal de Linux:

uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcp

Configuración de Claude Desktop / Cursor / Antigravity

Añada a su ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "bookmyshow": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git",
        "bms-mcp"
      ]
    }
  }
}

Ejecución directa en terminal

Ejecute directamente en Terminal / zsh de macOS:

uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcp

Si ha clonado el repositorio localmente:

python mcp_server.py

🐍 Uso en Python

from bms_scraper import BookMyShowScraper

scraper = BookMyShowScraper()

# Get active movies
movies = scraper.get_movies(city="mumbai", language="Hindi")

# Get venue coordinates
venue = scraper.get_venue_details(venue_code_or_url="PCAN", city="chennai")
print(f"📍 {venue.venue_name} - Lat: {venue.latitude}, Lon: {venue.longitude}")

# Get showtimes (supports language filters e.g. "tamil", "hindi", "all" and format filters e.g. "IMAX", "2D")
showtimes = scraper.get_showtimes(movie_code_or_url="ET00378770", city="chennai", date="20260827", language="tamil", format="2D")

💻 Uso de la CLI

Ejecute la CLI directamente mediante uvx sin instalar dependencias, o localmente mediante Python:

# List popular cities via uvx
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli cities --popular

# Scrape movies in Bengaluru and export to Excel
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli movies --city bengaluru --language Hindi --export xlsx

# Scrape showtimes in Chennai for Tamil language with date and export to JSON
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli showtimes --code ET00378770 --city chennai --date 20260827 --language tamil --export json
# List popular cities via uvx
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli cities --popular

# Scrape movies in Bengaluru and export to Excel
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli movies --city bengaluru --language Hindi --export xlsx

# Scrape showtimes in Chennai for Tamil language with date and export to JSON
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-cli showtimes --code ET00378770 --city chennai --date 20260827 --language tamil --export json
# List popular cities
python -m bms_scraper.cli cities --popular

# Scrape movies in Bengaluru and export to Excel
python -m bms_scraper.cli movies --city bengaluru --language Hindi --export xlsx

# Scrape showtimes with language filter
python -m bms_scraper.cli showtimes --code ET00378770 --city chennai --date 20260827 --language tamil --format 2D

📊 Exportación de datos

from bms_scraper import BookMyShowScraper, DataExporter

scraper = BookMyShowScraper()
movies = scraper.get_movies(city="mumbai")

DataExporter.to_csv(movies, "movies.csv")
DataExporter.to_excel(movies, "movies.xlsx")
DataExporter.to_json(movies, "movies.json")

🧪 Ejecución de pruebas

python -m pytest

⚖️ Licencia

Distribuido bajo la Licencia MIT.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides a comprehensive movie booking experience for AMC Theatres, enabling users to discover movies, find showtimes, select seats, and process payments through conversational AI. Supports multi-location theater search with real-time seat availability and booking management.
    6
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Live Google Maps business search, review, and photo data for AI agents over MCP.

  • AI marketplace — flights, tours, activities, transport & more via MCP. No auth required.

  • Free public MCP for AI agents — 193 tools, 44 workflows. No API key.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/m0han-r/bookmyshow-mcp-webscraper'

If you have feedback or need assistance with the MCP directory API, please join our Discord server