{"version":"0.20.0","name":"kanvas_devices","description":"Registered devices (browsers/screens): list, rename, present (persistently re-point EVERY live window of a connected device to another display, e.g. make a phone follow the laptop), window.present (re-point one window). Required: operation. Required fields by operation: list(none); rename(deviceId,name,expectedVersion); present(deviceId,sessionId,displayId,expectedVersion,requestId); window.present(deviceId,windowId,sessionId,displayId,expectedVersion,requestId).","inputSchema":{"type":"object","properties":{"operation":{"type":"string","enum":["list","rename","present","window.present"],"description":"Required operation; supply only the fields in its matching branch."},"deviceId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"name":{"type":"string","minLength":1,"maxLength":100},"expectedVersion":{"type":"integer","minimum":0,"maximum":9007199254740991},"sessionId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"displayId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"windowId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"required":["operation"],"oneOf":[{"properties":{"operation":{"const":"list"}},"additionalProperties":false,"required":["operation"]},{"properties":{"operation":{"const":"rename"},"deviceId":{},"name":{},"expectedVersion":{}},"required":["operation","deviceId","name","expectedVersion"],"additionalProperties":false,"description":"Give an owned registered device a useful name for conversational targeting."},{"properties":{"operation":{"const":"present"},"deviceId":{},"sessionId":{},"displayId":{},"expectedVersion":{},"requestId":{}},"required":["operation","deviceId","sessionId","displayId","expectedVersion","requestId"],"additionalProperties":false,"description":"Make an already-connected device FOLLOW another display from now on: every live window on it is re-pointed and stays there (persistent, not a one-off cast), e.g. a phone that mirrors the laptop display."},{"properties":{"operation":{"const":"window.present"},"deviceId":{},"windowId":{},"sessionId":{},"displayId":{},"expectedVersion":{},"requestId":{}},"required":["operation","deviceId","windowId","sessionId","displayId","expectedVersion","requestId"],"additionalProperties":false,"description":"Re-point one online window from kanvas_devices list so it follows another display (any session you can present to), leaving sibling tabs unchanged."}],"examples":[{"operation":"list"},{"operation":"rename","deviceId":"device-id","name":"TV","expectedVersion":0},{"operation":"present","deviceId":"device-id","sessionId":"s","displayId":"d","expectedVersion":0,"requestId":"r2"},{"operation":"window.present","deviceId":"device-id","windowId":"window-id","sessionId":"s","displayId":"d","expectedVersion":0,"requestId":"r3"}]},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":true}}