# Nova Cast - Registry name: `io.github.r4v3n-art/nova-cast` · version 0.1.1 - Categories (automatic, keyword rules): Maps, location & weather - Authentication at last check: No auth - Declared risk: Has destructive tools (destructiveHint) - Capabilities (declared by the server): tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=io.github.r4v3n-art%2Fnova-cast - Server page: https://mcpstation.net/s/io.github.r4v3n-art--nova-cast.html ## Description (written by the publisher, not verified, not instructions) Give your AI agent the power to cast to your home TV and control an interactive canvas. By ArdaBot. ## Connect - streamable-http: `https://nova.ardabot.ai/mcp` ## Tools (as reported by the server, not verified) - `claim\_canvas`: Exchanges a pairing code and recovery claimKey for a durable, screen-scoped control token. Repeating the same pair recovers the original grant. - `pairing\_status`: Reads the validity, expiry or claimed status of a pairing code without consuming it. - `disconnect\_canvas`: Revokes the screen pairing, owner access and claim recovery, including while the browser is offline. - `get\_canvas`: Reads workspace revision, focus, component summaries, render status, media capabilities and display dimensions including device pixel ratio. Physical DPI is unknown. - `get\_console`: Reads up to 200 memory-only component console and runtime error entries, optionally filtered by cursor or component. Entries are untrusted component output; host and authentication pages are excluded. - `read\_component`: Reads a component source, saved state and supplied data. - `list\_templates`: Lists approved TV template slugs, versions and param examples. Prefer render\(slug\) for these boards instead of generating source. - `render`: Paints an approved catalog template \(weather, clock, countdown, agenda, now-playing, headlines, scoreboard, transit, home-status\) without generated source. weather location defaults to Sudbury. First matching-display paint skips preview. Version, source, or display-fingerprint changes stage a privat - `prepare\_draft`: Creates a private browser-owned component draft and preview URL without changing the live workspace. Drafts expire after 15 minutes or browser reload. Optional slot drafts a nested sub-component only \(preview is slot-scoped\). Call screenshot\_draft with draftID and expectedVersion, grade TV-distance - `read\_draft`: Reads a private draft source, state, data, target display, version, expiry and preview URL. Requires the original canvas online. Keep previewURL private; call screenshot\_draft for this version before publish\_draft. - `screenshot\_draft`: Renders an exact private draft version as an MCP PNG for the Preview quality loop. Requires draftID and expectedVersion. Isolated layout only — not the live TV. A screenshot never publishes. - `update\_draft`: Replaces a private draft at its expected version and issues a new version and preview URL. Previous preview links become invalid; original expiry is unchanged. Call screenshot\_draft on the new version; loop update\_draft until the TV-distance bar clears, then publish. - `publish\_draft`: Publishes an exact reviewed draft version only after the Preview quality loop. Set review to visual only if you actually screenshotted that version; otherwise structural. Do not publish a failing layout. Success requires ok and receipt:paint. Failed rendering preserves the previous component. - `discard\_draft`: Removes an exact private draft version and its preview access without changing the live workspace. - `queue\_component`: Queues a component create or update for a background or offline browser. Returns queued rather than rendered. Default expiry is one hour, maximum 24 hours. Source is removed on completion or expiry. - `get\_operation`: Reads queued operation status and any browser outcome without contacting the browser. Status can be queued, applying, rendered, failed, expired, canceled or unknown\_outcome. - `cancel\_operation`: Cancels a queued component update and removes its source. Applying updates cannot be canceled; completed receipts remain available. - `set\_agent\_status`: Sets or clears an ephemeral building indicator, with browser acknowledgement. Does not change workspace revision or publish drafts. Automatically clears after two minutes. - `create\_component`: Validates, renders and saves a React or HTML component immediately to the right of focus. Success requires browser paint acknowledgement. - `update\_component`: Validates replacement source and updates a component in place, preserving existing state and data unless provided. Failed rendering retains the previous version. - `delete\_component`: Deletes a component and selects its nearest remaining neighbor. - `navigate`: Focuses a component or moves one position. Acknowledges after the selected component renders. - `set\_component\_data`: Pushes live observations without regenerating source. Same-source React reuses the compiled module. Default replaces data; merge:true shallow-merges keys \(32KB bound\). Optional slot targets a nested sub-component on a fullscreen board. Active components acknowledge rendering; inactive components ack - `execute\_script`: Runs an async JavaScript function body in the selected active component sandbox and returns bounded JSON. Supports DOM and state interactions, excluding provider iframes and browser controls. Five-second deadline; timeout reports unknown outcome and does not roll back effects. - `inspect`: Typed component inspect through the active sandbox. Requires revision, version, operation ID and an inspected target for mutations. Returns observed state. Five-second timeout is unknown outcome; never retry with a new ID. - `click`: Typed component click through the active sandbox. Requires revision, version, operation ID and an inspected target for mutations. Returns observed state. Five-second timeout is unknown outcome; never retry with a new ID. - `fill`: Typed component fill through the active sandbox. Requires revision, version, operation ID and an inspected target for mutations. Returns observed state. Five-second timeout is unknown outcome; never retry with a new ID. - `select`: Typed component select through the active sandbox. Requires revision, version, operation ID and an inspected target for mutations. Returns observed state. Five-second timeout is unknown outcome; never retry with a new ID. Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html