Render raises $100M at a $1.5B valuation

Read the announcement

Movie Context Provider

An OpenAI App demo built with the OpenAI Apps SDK, that's ready to deploy on Render.

Why deploy the OpenAI Apps SDK demo on Render?

The Movie Context Protocol (OpenAI Apps SDK demo) is a sample application demonstrating how to build ChatGPT-integrated apps using the OpenAI Apps SDK. It shows developers how to create interactive widgets, implement MCP (Model Context Protocol) tools, and deploy apps that extend ChatGPT's functionality with external data sources and persistent storage.

This template deploys a complete OpenAI Apps SDK movie discovery service with PostgreSQL persistence, Redis caching, and CORS handling pre-wired across three services—no manual database connection strings or service networking to configure. Render's managed Postgres handles backups and the services auto-connect via internal networking, saving you the typical multi-hour setup of coordinating an MCP server with its data layer. Just add your API keys and deploy; the render.yaml already defines the service dependencies, environment variable references, and health checks.

Architecture

What you can build

After deploying, you'll have a working ChatGPT app that lets you search movies, manage a personal watchlist, track what you've watched, and get AI-generated recommendations based on your viewing history. The app connects to TMDB for movie data and stores your watchlist and preferences in a PostgreSQL database. You can interact with it directly in ChatGPT through custom widgets that display movie posters, search results, and preference controls.

Key features

  • MCP Tool Framework: Implements 12 ready-to-use MCP tools for movie search, watchlist management, watch history tracking, and user preferences that integrate directly with ChatGPT.
  • Interactive ChatGPT Widgets: Renders custom UI components (movie posters, sortable grids, preference editors) directly within ChatGPT conversations with inline action buttons.
  • Multi-Provider LLM Support: AI recommendations can use OpenAI GPT-5, Anthropic Claude Sonnet 4.5, or Google Gemini 2.5 Flash with automatic provider detection based on available API keys.
  • Valkey Response Caching: Built-in caching layer with configurable TTLs (7-30 days for API calls, 5 minutes for user data) reducing response times from 200-300ms to sub-millisecond.
  • Render Blueprint Deployment: Single render.yaml file auto-provisions PostgreSQL, Valkey cache, backend service, and static frontend with HTTPS domains and automatic database migrations.

Use cases

  • Developer learns to build interactive ChatGPT widgets with movie data
  • Hobbyist deploys a personal watchlist app to Render instantly
  • Engineer explores multi-provider LLM integration for AI recommendations
  • Builder forks template to create custom MCP-powered ChatGPT apps

What's included

Service
Type
Purpose
movie-mcp-server
Web Service
Application service
Access-Control-Allow-Origin
Web Service
Application service
movie-cache
keyvalue
Application service
movie-mcp-postgres
PostgreSQL
Primary database

Prerequisites

  • TMDB API Key: Required API key to fetch all movie data, posters, and search results from The Movie Database.
  • OpenAI API Key: Optional key for GPT-5 powered movie recommendations based on your watch history and preferences.
  • Anthropic API Key: Optional key for Claude Sonnet 4.5 powered movie recommendations as an alternative to OpenAI.
  • Google Gemini API Key: Optional key for Gemini 2.5 Flash powered movie recommendations with a free tier available.
  • Admin API Key: Your personal access key for the MCP server; will be auto-generated if not provided.

Next steps

  1. Open ChatGPT and ask 'Search for Inception' — You should see a Movie List widget appear with Inception and similar titles, each showing poster, year, and rating
  2. Add a movie to your watchlist by clicking the bookmark icon on any movie card, then ask 'Show my watchlist' — You should see the movie appear in a Watchlist widget with options to mark as watched or remove
  3. Configure your preferences by asking 'Set my favorite genres to sci-fi and thriller' — You should see a Preferences widget displaying your saved genres, which will be used for personalized recommendations

Resources

Stack

openai
tmdb
postgresql

Tags

ai
llm
plugin
mcp