bms-mcp
🎬 BookMyShow MCP Webscraper
BookMyShow 用の Python スクレイパー兼 API ラッパーで、映画の上映リスト、劇場の上映時間、チケット価格、会場の位置情報(GPS 緯度・経度を含む)を抽出します。
すべてを FastAPI REST サーバー、MCP ツール(Claude や Cursor などの AI アシスタント用)、CLI ツール、組み込みの Web ダッシュボードにパッケージ化しています。
✨ 特徴
映画・イベントの一覧表示: インドの各都市(ムンバイ、デリー首都圏、ベンガルール、チェンナイなど)で上映中または近日公開の映画リストを、言語・ジャンルのフィルター付きで取得します。
上映時間と料金の取得: 映画館の上映時間、スクリーン形式(2D、3D、IMAX、4DX)、チケット価格帯(₹)、座席の空き状況を取得します。
会場の場所と緯度・経度の抽出: 劇場の住所、正確な緯度・経度の座標、会場の設備(駐車場、フードコート、M チケット入場)を取得します。
映画のあらすじと予告編の取得: あらすじ、キャスト・スタッフ情報、評価、ポスター、YouTube の予告編リンクを取得します。
MCP サーバーとして動作:
bms-mcp(ローカルではmcp_server.py)を介して、AI ツール(Claude Desktop、Cursor、Antigravity)でそのまま動作します。FastAPI REST サーバー: 対話型の Swagger API ドキュメント(
/docs)。ターミナル CLI: 検索、一覧表示、エクスポートのためのターミナルインターフェース。
ファイルへのエクスポート: スクレイピングしたデータを JSON、CSV、Excel(
.xlsx)にエクスポートします。Web ダッシュボード: 映画の閲覧とエンドポイントのテストができるシンプルなライトテーマのダッシュボード。
Related MCP server: Movie Booking Assistant
🚀 クイックスタートとインストール
git clone https://github.com/m0han-r/bookmyshow-mcp-webscraper.git
cd bookmyshow-mcp-webscraper
pip install -r requirements.txt🔌 API と MCP ツール
REST エンドポイント | MCP ツール名 | パラメータ | 説明 |
|
|
| 対応するインドの地域と主要都市 |
|
|
| 言語・ジャンルフィルター付きの上映中映画リスト |
|
|
| ライブイベント、お笑いショー、音楽コンサート、スポーツ |
|
|
| あらすじ、キャスト、スタッフ、評価、ポスター、予告編リンク |
|
|
| 上映時間、スクリーン形式(IMAX/3D/4DX)、料金、座席、言語フィルタリング |
|
|
| 映画館の住所、正確な緯度、経度、設備 |
|
|
| 映画とライブイベントの横断検索 |
会場レスポンスのサンプル(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"]
}
}🌐 REST API サーバーの起動
サーバーを起動します:
python main.pySwagger UI: http://localhost:8000/docs
Web ダッシュボード: http://localhost:8000/
🤖 MCP サーバーのセットアップ
uvx を使用して AI アシスタント(Claude Desktop、Cursor、Antigravity)を接続します。uvx は GitHub からパッケージを自動的に取得し、pyproject.toml に登録された bms-mcp スクリプトのエントリポイントを実行します。
Claude Desktop / Cursor / Antigravity の設定
%APPDATA%\Claude\claude_desktop_config.json(または .cursor/mcp.json)に追加します:
{
"mcpServers": {
"bookmyshow": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git",
"bms-mcp"
]
}
}
}ターミナルでの直接実行
PowerShell またはコマンドプロンプトでネイティブに実行します(uv は Windows 上で bms-mcp.exe ラッパーを生成して実行します):
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcpClaude Desktop / Cursor / Antigravity の設定
~/.config/Claude/claude_desktop_config.json に追加します:
{
"mcpServers": {
"bookmyshow": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git",
"bms-mcp"
]
}
}
}ターミナルでの直接実行
Linux ターミナルで直接実行します:
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcpClaude Desktop / Cursor / Antigravity の設定
~/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"
]
}
}
}ターミナルでの直接実行
macOS ターミナル / zsh で直接実行します:
uvx --from git+https://github.com/m0han-r/bookmyshow-mcp-webscraper.git bms-mcpリポジトリをローカルにクローンしている場合:
python mcp_server.py🐍 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")💻 CLI の使用方法
依存関係をインストールせずに uvx 経由で CLI を直接実行するか、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📊 データのエクスポート
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")🧪 テストの実行
python -m pytest⚖️ ライセンス
MIT ライセンスの下で配布されています。
Maintenance
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
- AlicenseAqualityCmaintenanceProvides 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.61MIT
- FlicenseNot gradedqualityDmaintenanceProvides a suite of tools for searching movies, checking showtimes, and managing ticket bookings for Bangalore cinemas. It enables AI clients to handle end-to-end movie theater interactions including seat availability checks and reservation management.

@qasperai/mcp-serverofficial
AlicenseAqualityCmaintenanceEnables AI assistants to discover and book local service businesses like barbers, plumbers, and mechanics directly through MCP-compatible tools.988MIT- FlicenseNot gradedqualityCmaintenanceEnables searching for movies, checking Google Calendar for conflicts, and booking tickets with seat type and INR pricing, all through natural conversation. Supports demo mode without API keys.
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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