Usher MCP
Provides a widget that can open Google search results for movie showtimes using the 'ui/open-link' feature to search for ' showtimes near me'.
Click on "Deploy 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., "@Usher MCPshow me details for The Matrix"
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.
Usher MCP — Movie Detail App
Interactive MCP server and UI widget that renders movie details from TMDB with the MCP Apps spec. The server runs on Cloudflare Workers; the UI is a sandboxed HTML resource served via ASSETS and rendered by MCP hosts.
What’s here
MCP server (
server/) exposing:ui://widget/movie-detail-widget.htmlresource (HTML + CSS + JS from ASSETS)Tool
get-movie-detailthat searches TMDB by title and returns details + cast
Widget UI (
web/) built with React/Tailwind:Entry:
widget.html→movie-detail-widget.js/.cssMCP Apps lifecycle:
ui/initialize, tool input/result notifications,ui/open-linkfor showtimesShowtimes link opens Google “ showtimes near me” via
ui/open-link
Root landing page: friendly message at
/telling visitors to connect via/mcp
Related MCP server: TMDB MCP Server
Prerequisites
Node 18+
Wrangler CLI
TMDB API token (v4 bearer) stored as a secret
Install
npm installLocal dev (Workers)
Use .dev.vars for local secrets:
TMDB_TOKEN=your_tmdb_bearer_tokenRun dev server:
npm run devMCP endpoint will be at http://localhost:8787/mcp.
Build the widget
npm run web:buildOutputs to web/dist/:
movie-detail-widget.jsmovie-detail-widget.csswidget.html
These are served by the ASSETS binding for the MCP UI resource.
Deploy to Cloudflare Workers
Set the secret in your account:
wrangler secret put TMDB_TOKENDeploy:
npm run deployMCP server code pointers
server/lib/mcp.ts— registers resource + tool, uses ASSETS to serve built widget, pullstmdbTokenfrom env binding.server/index.ts— Hono entry, mounts/mcpand root landing page.web/src/movie-detail-widget.tsx— MCP Apps UI logic + render.web/vite.config.ts— builds widget assets with custom filenames for ASSETS.
MCP tool contract
Tool:
get-movie-detailInput:
{ "query": "<movie title>" }Returns:
content: text fallbackstructuredContent.movie: movie payload (title, poster/backdrop URLs, runtime, genres, rating, cast, etc.)
Notes for hosts
UI resource URI:
ui://widget/movie-detail-widget.htmlMIME:
text/html;profile=mcp-appCSP: allows
https://image.tmdb.org/for posters/backdropsExpects MCP Apps messages:
ui/notifications/tool-input/tool-input-partialui/notifications/tool-resultui/open-link(to open showtimes link)
Type generation
Regenerate Cloudflare binding types if config changes:
npm run cf-typegenTroubleshooting
Missing TMDB token: set
TMDB_TOKENin.dev.vars(local) and viawrangler secret put(prod).Assets not loading: ensure
npm run web:buildwas run and ASSETS binding is present.Host rejects
ui/open-link: host must support MCP Appsui/open-link; otherwise widget will show an error state.
This server cannot be deployed
Maintenance
Related MCP Connectors
Movies and TV show data — search, details, ratings, and cast from iTunes and TVmaze APIs
TMDB v3: movies, TV, people, trending, discover, genres, credits. Free key.
OMDb MCP — IMDB-derived movie / TV / episode data (BYO key)
Movie Planner MCP: watchlists, showtimes, tracked cinema ticket links.
1
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceIntegrates with The Movie Database (TMDB) API to provide movie information, search capabilities, and recommendations.12 npm75MIT
- AlicenseNot gradedqualityDmaintenanceProvides integration with The Movie Database (TMDB) API for searching movies, TV shows, and people, accessing detailed information, and discovering popular and trending content. Enables AI assistants to access comprehensive movie and television metadata including ratings, cast, crew, and overviews.35 npm1MIT
- FlicenseNot gradedqualityNot gradedmaintenanceProvides access to The Movie Database (TMDB) API for searching movies, retrieving movie details, cast information, and browsing current, upcoming, popular, and top-rated films, as well as searching for actors and directors.35 npm-
- AlicenseAqualityCmaintenanceProvides access to The Movie Database (TMDB) API, enabling users to search for movies, TV shows, and people, get detailed information, discover content with advanced filters, and retrieve recommendations.1335 npm5MIT