Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
2af00e9
Add initial node mcp setup
hisuwh Sep 24, 2025
f43a143
Models for cinema-mcp
PytelAndrzej Sep 24, 2025
f0eacac
Add tutorial code and start readme
hisuwh Sep 24, 2025
7f52db3
initial cinema mcp.
wolkowsky Sep 24, 2025
76a236b
Cinema tooling basis
PytelAndrzej Sep 24, 2025
cf35489
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
a979bfe
initial python version
hisuwh Sep 24, 2025
e8362f7
Delete .python-version
PytelAndrzej Sep 24, 2025
ae40b74
Start fleshing out movie service
hisuwh Sep 24, 2025
0eb0076
Fixes
PytelAndrzej Sep 24, 2025
adf9c8b
More changes for movie presentations
PytelAndrzej Sep 24, 2025
d1335e8
Merge branch 'movie-reviews-mcp-py'
hisuwh Sep 24, 2025
e056643
Reservations and try at notebook
PytelAndrzej Sep 24, 2025
dbde0b9
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
ba1a1f8
Updating all references to movies
hisuwh Sep 24, 2025
97b9f99
Update cinema.ipynb
PytelAndrzej Sep 24, 2025
ff65fa4
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
5e27847
Update utils.py
hisuwh Sep 24, 2025
7a49326
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
hisuwh Sep 24, 2025
2006969
Cinema employee tools
PytelAndrzej Sep 24, 2025
0c58ab5
Add reviews functions to services and trying to fix stuff
hisuwh Sep 24, 2025
05632bb
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
hisuwh Sep 24, 2025
e74f1af
Update main.py
hisuwh Sep 24, 2025
89ba09f
Changes
PytelAndrzej Sep 24, 2025
9e6c69e
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
7f560ed
fix movie reviews model
woahitsjc Sep 24, 2025
d15ec25
Merge remote-tracking branch 'origin/main'
woahitsjc Sep 24, 2025
7d4d07a
typo type
woahitsjc Sep 24, 2025
acdaec2
Update config.py
PytelAndrzej Sep 24, 2025
7e31d3d
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
75d03c1
fix searching by title
woahitsjc Sep 24, 2025
10061a6
Merge remote-tracking branch 'origin/main'
woahitsjc Sep 24, 2025
77fc124
Presentation
PytelAndrzej Sep 24, 2025
6e5e9fa
Merge branch 'main' of https://github.com/PytelAndrzej/Hackathon-2025
PytelAndrzej Sep 24, 2025
032222c
Update movie_service.py
PytelAndrzej Sep 24, 2025
eb7c4d4
Update demo_template 1.pptx
PytelAndrzej Sep 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified demo/demo_template 1.pptx
Binary file not shown.
2 changes: 1 addition & 1 deletion src/agent/attractions.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -935,7 +935,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.13.3"
"version": "3.13.7"
}
},
"nbformat": 4,
Expand Down
2,137 changes: 2,137 additions & 0 deletions src/agent/cinema.ipynb

Large diffs are not rendered by default.

84 changes: 84 additions & 0 deletions src/mcp/cinema-mcp/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# Cinema MCP Server

A Model Context Protocol (MCP) server for managing movie theater showings and reservations.

## Features

- **Current Movies**: View all currently playing movies with showtimes
- **Movie Details**: Get detailed information about specific movie showings
- **Search Movies**: Filter movies by genre, date, theater room, or seat availability
- **Daily Schedule**: View all movies for a specific date

## Quick Start

1. Install dependencies:
```bash
uv pip install -r requirements.txt
```

2. Run the MCP server:
```bash
uv run mcp dev main.py
```

3. The server will start on port 8009

## Available Tools

### `get_current_movies()`
Returns all currently playing movies with complete details including showtimes, seat availability, and pricing.

### `get_movie_details(movie_id: str)`
Get detailed information about a specific movie showing including cast, director, and theater details.

### `search_movies(genre, date, room, available_seats_min, limit)`
Search and filter movies by various criteria:
- **genre**: action, comedy, drama, horror, sci-fi, romance, thriller, animation, documentary, family
- **date**: YYYY-MM-DD format
- **room**: theater_a, theater_b, theater_c, imax
- **available_seats_min**: minimum seats required
- **limit**: maximum results (default: 20)

### `get_movies_by_date(date: str)`
Get all movie showings for a specific date, sorted by showtime.

## Available Resources

- `movie://{movie_id}` - Formatted movie details
- `cinema://current-movies` - Current movies overview

## Mock Data

The server uses `MOCK_MOVIE_PRESENTATIONS` from `config.py` with sample movies including:
- Galactic Adventures (Sci-Fi)
- The Midnight Mystery (Thriller)
- Laugh Out Loud (Comedy)
- Dragon's Heart (Animation)
- City of Shadows (Drama)
- Ocean's Edge (Documentary/IMAX)
- Love in Paris (Romance)
- Nightmare Manor (Horror)

## Configuration

Edit `config.py` to modify:
- Theater room configurations
- Movie genres and ratings
- Mock movie data
- Pricing and capacity settings

## Usage Examples

```python
# Get all current movies
movies = get_current_movies()

# Search for action movies with at least 50 seats available
action_movies = search_movies(genre="action", available_seats_min=50)

# Get movies playing tomorrow
tomorrow_movies = get_movies_by_date("2025-09-26")

# Get details for a specific movie
movie_details = get_movie_details("movie_001")
```
7 changes: 7 additions & 0 deletions src/mcp/cinema-mcp/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
"""
Cinema MCP Server Package
"""

__version__ = "1.0.0"
__author__ = "Cinema MCP Team"
__description__ = "Movie theater management and booking MCP server"
Loading