Server definition
- Hash
- sha256:2068cbb9a8f5b3ea8d77f2d7344a4339fe8c4f0a55d01871e94e016d34feb374
- What it is
- What a remote MCP server returned when asked what it offers: 10 tools
The blob, as servednamed by its sha256
{
"instructions": "Read-only movie showtimes across 56 regional boards in California, Florida and Hawaii — chains, independents, repertory and drive-ins. Each board-reading tool reads ONE board per call and takes a `region` board id; omitted means \"sf\" (San Francisco), and it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; when it answers outside_coverage, say SceneF has no board for that place and never present another board's listings as that place's (nearest_lit, when present, names published boards within 100 miles); when it answers unknown, the name is not in SceneF's place table, so ask the person for a nearby city, or call scenef_now with no region and use a board only if its place name plainly covers the place asked about. Call scenef_now with no region for the list of boards — each id comes with the place it names, so sgv reads as the San Gabriel Valley rather than a bare handle. TIMES ARE THE THEATER'S OWN WALL CLOCK, not one city's: the boards keep 4 time zones, and Hawaii keeps no daylight saving time, so it is two or three hours behind Pacific depending on the season. A board's timezone is reported with its data and is the only zone its times mean anything in. A screening belongs to the NIGHT it opens: a 12:15am Saturday show is Friday night. Use ticket and calendar URLs exactly as returned, preserving their region query parameters. SceneF does not sell, hold or book tickets. Ticket links use https://scenef.com/go/{screeningId}: a tool call records nothing; whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded to the theater's own site or the ticket seller it uses. Film pages https://scenef.com/film/{slug}, or /film/{slug}/{regionSlug} for a specific board. Start with scenef_now to check freshness, scenef_plan_movie_night for recommendations. Every showtime carries a confidence level, a source tier and a last-verified time, and the running record of SceneF's own verification checks, failures included, is public at https://scenef.com/api/accuracy (add ?region= for a board). Call scenef_accuracy for that record as numbers you can quote. Every returned showtime carries confidence, source_tier, sources, verified_at and freshness. Use freshness to distinguish retained or stale source evidence from a newly generated board; detailed responses include more rows, not stronger evidence. Many showtimes, including most chain theaters and some independents, come from a third-party showtimes data service rather than from the theater itself; they are labeled source_tier licensed-feed and carry the weakest claim on the site.",
"tools": [
{
"description": "Returns SceneF's verification record: this board's confidence mix, the counts of verification checks confirmed / missing / unreachable over the record's window (window_days in the payload — 30 days at present) with the pass rate and the exact denominator it was computed from, the same per venue with source tier and last-verified time, and the definitions of every level. Checks that could not run — a bot wall, a client-rendered page — are graded unreachable and excluded from the pass rate rather than counted as passes. Quote these numbers directly; they are recomputed on every call. Read-only: the call itself records nothing.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
}
},
"type": "object"
},
"name": "scenef_accuracy",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"docs": {
"type": "string"
},
"method": {
"additionalProperties": {},
"properties": {
"confidence_levels": {
"additionalProperties": {
"type": "string"
},
"propertyNames": {
"type": "string"
},
"type": "object"
},
"rings": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"rings",
"confidence_levels"
],
"type": "object"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"site": {
"additionalProperties": {},
"properties": {
"checks": {
"type": "number"
},
"confidence_mix": {
"additionalProperties": {
"type": "number"
},
"propertyNames": {
"type": "string"
},
"type": "object"
},
"confirmed": {
"type": "number"
},
"missing": {
"type": "number"
},
"pass_rate": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"pass_rate_basis": {
"type": "string"
},
"screenings": {
"type": "number"
},
"unreachable": {
"type": "number"
},
"window_days": {
"type": "number"
}
},
"required": [
"checks",
"confirmed",
"missing",
"unreachable",
"pass_rate",
"window_days",
"pass_rate_basis",
"screenings",
"confidence_mix"
],
"type": "object"
},
"timezone": {
"type": "string"
},
"venues": {
"items": {
"additionalProperties": {},
"properties": {
"checks": {
"type": "number"
},
"confidence_mix": {
"additionalProperties": {
"type": "number"
},
"propertyNames": {
"type": "string"
},
"type": "object"
},
"last_verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"pass_rate": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"screenings": {
"type": "number"
},
"source_tier": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"source_tier",
"screenings",
"confidence_mix",
"last_verified_at",
"checks",
"pass_rate"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"site",
"venues",
"method",
"docs"
],
"type": "object"
}
},
{
"description": "Lists films whose first screening on this board is more than 48 hours out, sorted by first night. Configurable horizon. It sets no alert, watch or reminder. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"horizon_days": {
"description": "How far ahead to look (default 21 days).",
"maximum": 90,
"minimum": 1,
"type": "integer"
},
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
}
},
"type": "object"
},
"name": "scenef_coming_soon",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"film_count": {
"type": "number"
},
"films": {
"items": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"first_night": {
"type": "string"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"opening_venues": {
"items": {
"type": "string"
},
"type": "array"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url",
"first_night",
"opening_venues"
],
"type": "object"
},
"type": "array"
},
"horizon_days": {
"type": "number"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"timezone": {
"type": "string"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"horizon_days",
"film_count",
"films"
],
"type": "object"
}
},
{
"description": "Every structured discount across one board's theaters — venue, label, detail, and day-bound days — with the ones that apply today flagged. Membership and discount-card pricing is not listed; it reads \"Member pricing; see the theater\". Read-only: the call itself records nothing.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
}
},
"type": "object"
},
"name": "scenef_discounts",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"applies_today_count": {
"type": "number"
},
"attribution": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"timezone": {
"type": "string"
},
"today_dow": {
"type": "number"
},
"today_name": {
"type": "string"
},
"venues": {
"items": {
"additionalProperties": {},
"properties": {
"discounts": {
"items": {
"additionalProperties": {},
"properties": {
"applies_today": {
"type": "boolean"
},
"day": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"detail": {
"type": "string"
},
"kind": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"label",
"kind",
"day",
"detail",
"applies_today"
],
"type": "object"
},
"type": "array"
},
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood",
"discounts"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"today_dow",
"today_name",
"applies_today_count",
"venues"
],
"type": "object"
}
},
{
"description": "The card for one film on one board: title, year, runtime, genres, directors, cast, overview, rating, a trailer url and a TMDB poster url when present, its upcoming showtimes nearest first with venue/time/ticket link, and a last-night flag when the run is ending. Returns the 40 nearest showtimes (\"concise\") or up to 200 (\"detailed\"); showtime_count is the total and showtimes_complete says whether the list is whole — scenef_search_showtimes with a date or theater narrows the rest. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"film": {
"description": "Film title or SceneF slug.",
"maxLength": 120,
"type": "string"
},
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
}
},
"required": [
"film"
],
"type": "object"
},
"name": "scenef_film_details",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"candidates": {
"items": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
"type": "array"
},
"data_as_of": {
"type": "string"
},
"film": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
"final_night": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"is_last_night": {
"type": "boolean"
},
"matched": {
"type": "boolean"
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"query": {
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"showtime_count": {
"type": "number"
},
"showtimes": {
"items": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"type": "array"
},
"showtimes_complete": {
"description": "Whether showtimes holds all showtime_count screenings. The nearest 40 (concise) or 200 (detailed) are returned.",
"type": "boolean"
},
"timezone": {
"type": "string"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"query",
"matched"
],
"type": "object"
}
},
{
"description": "Use this for a quick check of what is still on tonight on one board: how many screenings tonight, the next 5 showtimes with venue/time/film, when the data was generated and which theaters' listings may be out of date. Called with no region it also lists every board id with its place and timezone. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
}
},
"type": "object"
},
"name": "scenef_now",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"boards": {
"items": {
"additionalProperties": false,
"properties": {
"name": {
"type": "string"
},
"region": {
"type": "string"
},
"timezone": {
"type": "string"
}
},
"required": [
"region",
"name",
"timezone"
],
"type": "object"
},
"type": "array"
},
"data_as_of": {
"type": "string"
},
"is_tonight": {
"type": "boolean"
},
"next_curtains": {
"items": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"film": {
"anyOf": [
{
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at",
"film"
],
"type": "object"
},
"type": "array"
},
"night_of": {
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"screenings_tonight": {
"type": "number"
},
"sources": {
"additionalProperties": {},
"properties": {
"healthy": {
"type": "number"
},
"total": {
"type": "number"
}
},
"required": [
"healthy",
"total"
],
"type": "object"
},
"still_to_come": {
"type": "number"
},
"timezone": {
"type": "string"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"night_of",
"is_tonight",
"screenings_tonight",
"still_to_come",
"next_curtains",
"sources"
],
"type": "object"
}
},
{
"description": "Suggests 2-4 movie-night options on one board from a window and a taste profile — film + specific showtime + theater + why it fits — plus one wildcard: the highest-ranked film outside the stated genres, or the next film down when no genre is stated. time_after/time_before are hard bounds; genres and formats only tilt the ranking, and when one matches nothing in the window the answer opens with a warning (also in warnings[]) saying so. It books, reserves and saves nothing; each option carries ticket and calendar links for the person to follow. Ranking uses only the stated preferences; no theater or film pays for placement. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"party_size": {
"description": "How many people are going (1-20). It labels the plan; it does not change which shows are picked.",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"preferences": {
"description": "Bring-your-own taste profile. Everything here tilts the ranking and degrades gracefully EXCEPT time_after/time_before, which are hard bounds.",
"properties": {
"avoids": {
"description": "Genres to steer away from.",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"discounts_only": {
"description": "Only screenings at theaters with a discount active that night.",
"type": "boolean"
},
"formats": {
"description": "Formats to favor, e.g. [\"35mm\", \"70mm\"]. If none in the window matches, the plan says so in warnings.",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"home_venues": {
"description": "Home-theater venue ids to nudge upward, e.g. [\"roxie\"].",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"likes": {
"description": "Genres to favor, e.g. [\"horror\", \"comedy\"]. If no film in the window matches, the plan says so in warnings.",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"no_matinee": {
"description": "Penalize daytime shows.",
"type": "boolean"
},
"time_after": {
"description": "HARD earliest start, \"HH:MM\" local 24h, e.g. \"20:00\" for \"nothing before 8\". Unlike the other preferences this does NOT degrade: if nothing starts that late the tool says so rather than ranking a show you cannot get to.",
"maxLength": 120,
"type": "string"
},
"time_before": {
"description": "HARD latest start, \"HH:MM\" local 24h. Same no-fallback rule.",
"maxLength": 120,
"type": "string"
},
"window": {
"description": "Preferred start-time window — a soft tilt. For a time you genuinely cannot make, use time_after/time_before instead.",
"enum": [
"matinee",
"early",
"evening",
"late"
],
"type": "string"
}
},
"type": "object"
},
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
},
"when": {
"description": "When to look: \"tonight\" (default), \"tomorrow\", \"weekend\" (Fri/Sat/Sun of the current week), or a YYYY-MM-DD date.",
"maxLength": 120,
"type": "string"
}
},
"type": "object"
},
"name": "scenef_plan_movie_night",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"discounts_relaxed": {
"type": "boolean"
},
"nights": {
"items": {
"type": "string"
},
"type": "array"
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"party_size": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"plan_count": {
"type": "number"
},
"plans": {
"items": {
"additionalProperties": {},
"properties": {
"film": {
"anyOf": [
{
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
{
"type": "null"
}
]
},
"is_wildcard": {
"type": "boolean"
},
"score": {
"type": "number"
},
"showtime": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"why": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"is_wildcard",
"score",
"why",
"film",
"showtime"
],
"type": "object"
},
"type": "array"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"timezone": {
"type": "string"
},
"warnings": {
"items": {
"type": "string"
},
"type": "array"
},
"wildcard": {
"anyOf": [
{
"additionalProperties": {},
"properties": {
"showtime": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"why": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"why",
"showtime"
],
"type": "object"
},
{
"type": "null"
}
]
},
"window": {
"type": "string"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"window",
"nights",
"party_size",
"note",
"warnings",
"discounts_relaxed",
"plan_count",
"plans",
"wildcard"
],
"type": "object"
}
},
{
"description": "Translate a city, 5-digit ZIP, neighborhood or board alias into the region handle every other tool takes. Returns the board and WHAT matched it. Refuses rather than guessing: an ambiguous name returns candidates (Hollywood names both the Los Angeles board and the Miami board), a name SceneF knows only as a place outside its published boards returns outside_coverage (with any published board within 100 miles), and any other name it cannot place returns unknown with no fallback board. SceneF publishes 56 boards, in California, Florida and Hawaii only. Coordinates are not accepted — this reads names, not locations. It is an exact lookup in SceneF's own place table: no geocoder and no web search. Read-only: the call itself records nothing.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"place": {
"description": "A city (\"Pasadena\"), a 5-digit ZIP (\"94121\"), a neighborhood (\"the Mission\") or a board alias (\"the East Bay\", \"sf\").",
"maxLength": 120,
"type": "string"
}
},
"required": [
"place"
],
"type": "object"
},
"name": "scenef_resolve_board",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"candidates": {
"items": {
"additionalProperties": false,
"properties": {
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"why": {
"type": "string"
}
},
"required": [
"region",
"region_name",
"why"
],
"type": "object"
},
"type": "array"
},
"input": {
"type": "string"
},
"matched": {
"enum": [
"city",
"zip",
"neighborhood",
"alias"
],
"type": "string"
},
"nearest_lit": {
"items": {
"additionalProperties": false,
"properties": {
"miles": {
"type": "number"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
}
},
"required": [
"region",
"region_name",
"miles"
],
"type": "object"
},
"type": "array"
},
"note": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"reason": {
"enum": [
"ambiguous",
"outside_coverage",
"unknown"
],
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
}
},
"required": [
"ok",
"input"
],
"type": "object"
}
},
{
"description": "Showtimes scoped by FILM or by THEATER on one board — pass at least one. With `film`: where that film is playing (title or slug; fuzzy-matched, ambiguous queries return candidates). With `venues` and no film: everything on at those theaters, each showtime naming its film. Grouped by theater with local times, tags (35mm/qa/sold-out), the night each show belongs to, and a ticket link per showtime. Optional date and time-window filters apply to both. Returns the 40 nearest showtimes (\"concise\") or up to 200 (\"detailed\"); showtime_count is the total and showtimes_complete says whether the list is whole, so narrow by date or theater for the rest. For the whole board with no film or theater in mind, call scenef_whats_playing instead. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"date": {
"description": "Restrict to one night, YYYY-MM-DD.",
"maxLength": 120,
"type": "string"
},
"film": {
"description": "Film title, or a SceneF slug taken from films[].slug / scenef_whats_playing. A title that is not on the board answers with a miss and points at scenef_whats_playing, so guessing is safe but browsing is faster. Optional when `venues` is given — omit it to ask what is on at a theater.",
"maxLength": 120,
"type": "string"
},
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
},
"time_after": {
"description": "Only shows at or after this local time, \"HH:MM\" 24h.",
"maxLength": 120,
"type": "string"
},
"time_before": {
"description": "Only shows at or before this local time, \"HH:MM\" 24h.",
"maxLength": 120,
"type": "string"
},
"venues": {
"description": "Restrict to these theaters (ids or names), e.g. [\"roxie\", \"Balboa\"]. Required when `film` is omitted.",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
}
},
"type": "object"
},
"name": "scenef_search_showtimes",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"candidates": {
"items": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
"type": "array"
},
"coverage_note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"data_as_of": {
"type": "string"
},
"film": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
"filtered_by": {
"enum": [
"film",
"venue"
],
"type": "string"
},
"matched": {
"type": "boolean"
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"query": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"refusal": {
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"showtime_count": {
"type": "number"
},
"showtimes_complete": {
"description": "Whether the rows returned are all showtime_count matches. When false, narrow by date or theater for the rest.",
"type": "boolean"
},
"timezone": {
"type": "string"
},
"unknown_venues": {
"items": {
"type": "string"
},
"type": "array"
},
"venues": {
"items": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"showtimes": {
"items": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"film": {
"anyOf": [
{
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"type": "array"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood",
"showtimes"
],
"type": "object"
},
"type": "array"
},
"warnings": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"query",
"matched",
"warnings",
"unknown_venues",
"coverage_note",
"showtime_count",
"venues"
],
"type": "object"
}
},
{
"description": "One theater's card: address, neighborhood, website, ticketing note, structured discounts (label/detail/day; membership and discount-card pricing reads \"Member pricing; see the theater\"), amenities, its next 5 showtimes with ticket links, and its calendar feed url. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
},
"theater": {
"description": "Theater id or name, e.g. \"roxie\" or \"Balboa Theater\".",
"maxLength": 120,
"type": "string"
}
},
"required": [
"theater"
],
"type": "object"
},
"name": "scenef_theater_info",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"candidates": {
"items": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"type": "array"
},
"covered_venue_ids": {
"items": {
"type": "string"
},
"type": "array"
},
"data_as_of": {
"type": "string"
},
"matched": {
"type": "boolean"
},
"query": {
"type": "string"
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"timezone": {
"type": "string"
},
"upcoming": {
"items": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"film": {
"anyOf": [
{
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url"
],
"type": "object"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at",
"film"
],
"type": "object"
},
"type": "array"
},
"upcoming_count": {
"type": "number"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"query",
"matched"
],
"type": "object"
}
},
{
"description": "Use this when someone asks what is showing in one area tonight, tomorrow, this weekend or on a date. Reads ONE regional board per call; SceneF publishes 56 boards, in California, Florida and Hawaii only. Pass region; it defaults to \"sf\" (San Francisco) when omitted. For a city, ZIP or neighborhood, call scenef_resolve_board first. Returns a ranked list of films, with optional genre and format filters. When the window covers tonight it opens with Notable tonight: scarcity facts with evidence (measured seat counts, final nights, lone prints, posted discounts, live elements). Each entry carries year, runtime, genres, a one-line hook, venue count, showtime_count, the next showtime and the film's SceneF url. \"detailed\" adds showtime rows, about 200 across the answer; scenef_search_showtimes lists the times for one film or theater. Read-only: the call itself records nothing. SceneF does not sell, hold or book tickets. Ticket links are https://scenef.com/go/{id} redirects to the theater's own site or the ticket seller it uses (a link to a showtime that is gone lands back on SceneF); whoever follows one, a person or a client, is logged once anonymously (time, the screening with its film and theater, client type, browser family, referring site, link source tag, and whether the showtime was gone; no IP address, cookie or account) and forwarded. Every emitted showtime carries confidence, source tier, reporting sources and verified_at.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"formats": {
"description": "Format/tag filters, e.g. [\"35mm\", \"70mm\", \"qa\", \"live-score\"].",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"genres": {
"description": "Genre filters, e.g. [\"horror\", \"comedy\"].",
"items": {
"maxLength": 80,
"type": "string"
},
"maxItems": 10,
"type": "array"
},
"max_results": {
"description": "Max films to return (default 12, cap 25).",
"maximum": 25,
"minimum": 1,
"type": "integer"
},
"region": {
"description": "Which regional board to read: a board id such as \"sf\", \"oahu\" or \"miami\", not a city name (\"Honolulu\" or \"Chicago\" is rejected). Omitted means \"sf\" (San Francisco); it is never inferred from where you are. For a city, ZIP or neighborhood call scenef_resolve_board first; scenef_now with no region lists every id. An unknown region is an error, not a fallback.",
"maxLength": 120,
"type": "string"
},
"response_format": {
"description": "Output size. \"concise\" (default) is tight text plus a structured summary. In whats_playing, each film has the total showtime_count, next_showtime, and a showtimes array containing only that next screening; \"detailed\" adds showtime rows with ids, ticket urls and accuracy metadata, about 200 across the answer. film_details and search_showtimes return the 40 nearest showtimes in \"concise\" and up to 200 in \"detailed\". showtime_count is always the total and showtimes_complete says whether the array is all of it; narrow by date or theater for the rest.",
"enum": [
"concise",
"detailed"
],
"type": "string"
},
"when": {
"description": "When to look: \"tonight\" (default), \"tomorrow\", \"weekend\" (Fri/Sat/Sun of the current week), or a YYYY-MM-DD date.",
"maxLength": 120,
"type": "string"
}
},
"type": "object"
},
"name": "scenef_whats_playing",
"outputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"accuracy_url": {
"type": "string"
},
"attribution": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"film_count": {
"type": "number"
},
"films": {
"items": {
"additionalProperties": {},
"properties": {
"directors": {
"items": {
"type": "string"
},
"type": "array"
},
"genres": {
"items": {
"type": "string"
},
"type": "array"
},
"key": {
"type": "string"
},
"next_showtime": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"runtime_min": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"showtime_count": {
"type": "number"
},
"showtimes": {
"items": {
"additionalProperties": {},
"properties": {
"calendar_url": {
"type": "string"
},
"confidence": {
"anyOf": [
{
"enum": [
"venue-published",
"corroborated",
"single-source",
"disputed"
],
"type": "string"
},
{
"type": "null"
}
]
},
"freshness": {
"additionalProperties": false,
"properties": {
"age_hours": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"retained": {
"type": "boolean"
},
"source_status": {
"enum": [
"ok",
"held",
"failed",
"unknown"
],
"type": "string"
},
"stale_after_hours": {
"type": "number"
},
"status": {
"enum": [
"current",
"stale",
"unknown"
],
"type": "string"
}
},
"required": [
"status",
"age_hours",
"stale_after_hours",
"retained",
"source_status"
],
"type": "object"
},
"local_time": {
"type": "string"
},
"night_of": {
"type": "string"
},
"note": {
"type": "string"
},
"screening_id": {
"type": "string"
},
"source_tier": {
"type": "string"
},
"sources": {
"items": {
"type": "string"
},
"type": "array"
},
"starts_at": {
"type": "string"
},
"tags": {
"items": {
"type": "string"
},
"type": "array"
},
"ticket_url": {
"type": "string"
},
"venue": {
"additionalProperties": {},
"properties": {
"name": {
"type": "string"
},
"neighborhood": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"short": {
"type": "string"
},
"venue_id": {
"type": "string"
}
},
"required": [
"venue_id",
"name",
"short",
"neighborhood"
],
"type": "object"
},
"verified_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"screening_id",
"venue",
"starts_at",
"night_of",
"local_time",
"tags",
"ticket_url",
"calendar_url",
"confidence",
"source_tier",
"sources",
"verified_at"
],
"type": "object"
},
"type": "array"
},
"showtimes_complete": {
"description": "Whether showtimes includes all showtime_count screenings. Concise includes only the next screening; detailed includes all.",
"type": "boolean"
},
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"venue_count": {
"type": "number"
},
"year": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
}
},
"required": [
"key",
"slug",
"title",
"year",
"runtime_min",
"genres",
"directors",
"url",
"venue_count",
"showtime_count",
"next_showtime",
"showtimes",
"showtimes_complete"
],
"type": "object"
},
"type": "array"
},
"nights": {
"items": {
"type": "string"
},
"type": "array"
},
"notable": {
"items": {
"additionalProperties": {},
"properties": {
"local_time": {
"type": "string"
},
"title": {
"type": "string"
},
"venue": {
"type": "string"
}
},
"required": [
"title",
"venue",
"local_time"
],
"type": "object"
},
"type": "array"
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"region": {
"type": "string"
},
"region_name": {
"type": "string"
},
"timezone": {
"type": "string"
},
"window": {
"type": "string"
}
},
"required": [
"data_as_of",
"attribution",
"accuracy_url",
"region",
"region_name",
"timezone",
"window",
"nights",
"note",
"notable",
"film_count",
"films"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:2068cbb9a8f5b3ea8d77f2d7344a4339fe8c4f0a55d01871e94e016d34feb374 | sha256sum