MCP 服务器

Nova Cast

io.github.r4v3n-art/nova-cast
设计与创意 物联网与硬件 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Pairs with and controls a home display canvas, including component creation, updates, rendering, navigation and sandboxed scripts.

cancel_operation
Cancel Operation
Cancels a queued component update and removes its source. Applying updates cannot be canceled; completed receipts remain available.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'controlToken'], 'properties': {'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
claim_canvas
Claim Canvas
Exchanges a pairing code and recovery claimKey for a durable, screen-scoped control token. Repeating the same pair recovers the original grant.
可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['code'], 'properties': {'code': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'claimKey': {'type': 'string', 'pattern': '^[A-Za-z0-9_-]{43}$'}}, 'additionalProperties': False}
create_component
Create Component
Validates, renders and saves a React or HTML component immediately to the right of focus. Success requires browser paint acknowledgement.
可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'title', 'format', 'source', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'state': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'title': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'format': {'enum': ['react', 'html'], 'type': 'string'}, 'source': {'type': 'string', 'maxLength': 240000, 'minLength': 1, 'description': 'React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation.'}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
delete_component
Delete Component
Deletes a component and selects its nearest remaining neighbor.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'componentID', 'controlToken'], 'properties': {'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
discard_draft
Discard Draft
Removes an exact private draft version and its preview access without changing the live workspace.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'draftID', 'version', 'controlToken'], 'properties': {'draftID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'version': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
disconnect_canvas
Disconnect Canvas
Revokes the screen pairing, owner access and claim recovery, including while the browser is offline.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['controlToken'], 'properties': {'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
execute_script
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.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'componentID', 'script', 'controlToken'], 'properties': {'script': {'type': 'string', 'maxLength': 32000, 'minLength': 1}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
get_canvas
Get Canvas
Reads workspace revision, focus, component summaries, render status, media capabilities and display dimensions including device pixel ratio. Physical DPI is unknown.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['controlToken'], 'properties': {'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
get_console
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.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['controlToken'], 'properties': {'after': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
get_operation
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.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'controlToken'], 'properties': {'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
navigate
Navigate
Focuses a component or moves one position. Acknowledges after the selected component renders.
可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'controlToken'], 'properties': {'direction': {'enum': ['next', 'previous'], 'type': 'string'}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
pairing_status
Pairing Status
Reads the validity, expiry or claimed status of a pairing code without consuming it.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['code'], 'properties': {'code': {'type': 'string', 'maxLength': 160, 'minLength': 1}}, 'additionalProperties': False}
prepare_draft
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.
可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'title', 'format', 'source', 'action', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'state': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'title': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'action': {'enum': ['create', 'update'], 'type': 'string'}, 'format': {'enum': ['react', 'html'], 'type': 'string'}, 'source': {'type': 'string', 'maxLength': 240000, 'minLength': 1, 'description': 'React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation.'}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
publish_draft
Publish Draft
Publishes an exact reviewed draft version after validating workspace revision and target dimensions. Success requires browser paint acknowledgement. Failed rendering preserves the previous component.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'draftID', 'version', 'review', 'controlToken'], 'properties': {'review': {'enum': ['visual', 'structural'], 'type': 'string'}, 'draftID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'version': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
queue_component
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.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'title', 'format', 'source', 'action', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'state': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'title': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'action': {'enum': ['create', 'update'], 'type': 'string'}, 'format': {'enum': ['react', 'html'], 'type': 'string'}, 'source': {'type': 'string', 'maxLength': 240000, 'minLength': 1, 'description': 'React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation.'}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'expiresInSeconds': {'type': 'integer', 'default': 3600, 'maximum': 86400, 'minimum': 60}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
read_component
Read Component
Reads a component source, saved state and supplied data.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['componentID', 'controlToken'], 'properties': {'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
read_draft
Read Draft
Reads a private draft source, state, data, target display, version, expiry and preview URL. Requires the original canvas online.
只读 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['draftID', 'controlToken'], 'properties': {'draftID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}}, 'additionalProperties': False}
set_agent_status
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.
可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'status', 'controlToken'], 'properties': {'status': {'enum': ['working', 'finished'], 'type': 'string'}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'additionalProperties': False}
set_component_data
Set Component Data
Replaces supplied component data without regenerating source. Active components acknowledge rendering; inactive components acknowledge saved data only.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'componentID', 'data', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
update_component
Update Component
Validates replacement source and updates a component in place, preserving existing state and data unless provided. Failed rendering retains the previous version.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'componentID', 'title', 'format', 'source', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'state': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'title': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'format': {'enum': ['react', 'html'], 'type': 'string'}, 'source': {'type': 'string', 'maxLength': 240000, 'minLength': 1, 'description': 'React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation.'}, 'componentID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
update_draft
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.
可能执行破坏性操作 可访问外部资源
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['operationID', 'expectedRevision', 'title', 'format', 'source', 'draftID', 'expectedVersion', 'controlToken'], 'properties': {'data': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'state': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}, 'title': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'format': {'enum': ['react', 'html'], 'type': 'string'}, 'source': {'type': 'string', 'maxLength': 240000, 'minLength': 1, 'description': 'React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation.'}, 'draftID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'operationID': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'controlToken': {'type': 'string', 'maxLength': 200, 'minLength': 20}, 'expectedVersion': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}}, 'definitions': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/definitions/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/definitions/__schema0'}}]}}, 'additionalProperties': False}
已添加
execute_script
2026年10月2日 02:40
已添加
set_component_data
2026年10月2日 02:40
已添加
navigate
2026年10月2日 02:40
已添加
delete_component
2026年10月2日 02:40
已添加
update_component
2026年10月2日 02:40
已添加
create_component
2026年10月2日 02:40
已添加
set_agent_status
2026年10月2日 02:40
已添加
cancel_operation
2026年10月2日 02:40
已添加
get_operation
2026年10月2日 02:40
已添加
queue_component
2026年10月2日 02:40
已添加
discard_draft
2026年10月2日 02:40
已添加
publish_draft
2026年10月2日 02:40
已添加
update_draft
2026年10月2日 02:40
已添加
read_draft
2026年10月2日 02:40
已添加
prepare_draft
2026年10月2日 02:40
已添加
read_component
2026年10月2日 02:40
已添加
get_console
2026年10月2日 02:40
已添加
get_canvas
2026年10月2日 02:40
已添加
disconnect_canvas
2026年10月2日 02:40
已添加
pairing_status
2026年10月2日 02:40
已添加
claim_canvas
2026年10月2日 02:40