Glasswarp
What this MCP does
Controls and observes remote Windows desktops, including launching applications, clicking, typing, keyboard input, scrolling, and session management.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'path_or_name'], 'properties': {'args': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Process args, e.g. ["--new-window", "https://example.com"]'}, 'session_id': {'type': 'string', 'description': 'Active session id'}, 'path_or_name': {'type': 'string', 'description': 'Executable name (e.g. notepad.exe) or absolute path'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['demo_id'], 'properties': {'format': {'enum': ['markdown', 'json'], 'type': 'string', 'description': 'Response format: markdown (default) or json'}, 'demo_id': {'enum': ['minesweeper', 'mona-lisa', 'paint', 'notepad'], 'type': 'string', 'description': 'Showcase id from demos.list'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'format': {'enum': ['markdown', 'json'], 'type': 'string', 'description': 'Response format: markdown (default) or json'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'target_id'], 'properties': {'button': {'enum': ['left', 'right', 'middle'], 'type': 'string', 'description': 'Mouse button (default left)'}, 'double': {'type': 'boolean', 'description': 'If true, double-click (two clicks)'}, 'target_id': {'type': 'string', 'description': 'Target id from the most recent screen.observe (e.g. uia-â\x80¦ )'}, 'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'x', 'y'], 'properties': {'x': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native X (0â\x80¦native_width-1)'}, 'y': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native Y (0â\x80¦native_height-1)'}, 'button': {'enum': ['left', 'right', 'middle'], 'type': 'string', 'description': 'Mouse button (default left)'}, 'double': {'type': 'boolean', 'description': 'If true, double-click'}, 'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'from_x', 'from_y', 'to_x', 'to_y'], 'properties': {'to_x': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native end X'}, 'to_y': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native end Y'}, 'from_x': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native start X'}, 'from_y': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native start Y'}, 'session_id': {'type': 'string', 'description': 'Active session id'}, 'duration_ms': {'type': 'integer', 'maximum': 5000, 'minimum': 0, 'description': 'Approx drag duration in ms; more steps when larger (default ~200)'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'x', 'y', 'delta'], 'properties': {'x': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native X to hover before scrolling'}, 'y': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native Y to hover before scrolling'}, 'delta': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Vertical wheel delta (negative = toward bottom of page)'}, 'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'actions'], 'properties': {'actions': {'type': 'array', 'items': {'type': 'object', 'required': ['type'], 'properties': {'x': {'type': 'number'}, 'y': {'type': 'number'}, 'keys': {'type': 'string'}, 'text': {'type': 'string'}, 'to_x': {'type': 'number'}, 'to_y': {'type': 'number'}, 'type': {'enum': ['click_target', 'click_xy', 'type_text', 'send_keys', 'drag', 'scroll'], 'type': 'string'}, 'delta': {'type': 'number'}, 'button': {'enum': ['left', 'right', 'middle'], 'type': 'string'}, 'double': {'type': 'boolean'}, 'delay_ms': {'type': 'integer', 'maximum': 2000, 'minimum': 0, 'description': 'Optional settle delay after this action (0â\x80\x932000 ms)'}, 'target_id': {'type': 'string'}}}, 'maxItems': 10, 'minItems': 1, 'description': 'Ordered actions (max 10); input.click_target needs target_id from latest screen.observe'}, 'session_id': {'type': 'string', 'description': 'Active session id'}, 'observe_after': {'type': 'boolean', 'description': 'Default true. When true, return a verification observe in the same result'}, 'observe_image': {'type': 'boolean', 'description': 'Default false. When true with observe_after, include verification JPEG unless changed=false'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'changed': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'Whether the frame changed since last observe; null if unknown'}, 'message': {'type': 'string', 'description': 'Human-readable observe summary / targets'}, 'has_image': {'type': 'boolean', 'description': 'True when a JPEG was included in the MCP content'}, 'native_width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native capture width'}, 'native_height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native capture height'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'keys'], 'properties': {'keys': {'type': 'string', 'description': 'Key or combo, e.g. enter, tab, ctrl+s, alt+f4, win'}, 'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id', 'text'], 'properties': {'text': {'type': 'string', 'description': 'Literal text to type (not a key combo)'}, 'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id'], 'properties': {'mark': {'type': 'boolean', 'description': 'Overlay numbered targets on JPEG when image=true (default true; ignored if image=false)'}, 'image': {'type': 'boolean', 'description': 'Include JPEG (default false). True only to visually read/judge the screen.'}, 'quality': {'type': 'integer', 'maximum': 100, 'minimum': 40, 'description': 'JPEG quality 40â\x80\x93100 when image=true (default 60)'}, 'max_width': {'type': 'integer', 'maximum': 3840, 'minimum': 320, 'description': 'JPEG max width when image=true (default 960). Clicks always use native coords, not JPEG pixels.'}, 'session_id': {'type': 'string', 'description': 'Active session id from session.start'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'changed': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': 'Whether the frame changed since last observe; null if unknown'}, 'message': {'type': 'string', 'description': 'Human-readable observe summary / targets'}, 'has_image': {'type': 'boolean', 'description': 'True when a JPEG was included in the MCP content'}, 'native_width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native capture width'}, 'native_height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Native capture height'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id'], 'properties': {'session_id': {'type': 'string', 'description': 'Session id returned by session.start'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id'], 'properties': {'session_id': {'type': 'string', 'description': 'Active session id'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['rig_id'], 'properties': {'rig_id': {'type': 'string', 'description': 'Rig id from rigs.list (must be online with api_access_enabled)'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['session_id'], 'properties': {'session_id': {'type': 'string', 'description': 'Session id from session.start'}}}
Output schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'message'], 'properties': {'ok': {'type': 'boolean', 'description': 'False when the tool failed'}, 'message': {'type': 'string', 'description': 'Human-readable result for the agent'}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
2ools
Builds, versions, reviews, deploys, shares, and coordinates work on websites, web applications, and games through project workflo…
Kaiku
Manages team issues, comments, attachments, projects, wiki pages, and related development workflows.
SmartTools
Provides general-purpose calculators, unit converters, text and data transformations, hashing, code-generation helpers, and forma…
Wakatime
Provides WakaTime coding-activity data, including durations, projects, commits, goals, heartbeats, editor usage, leaders, and use…
TaskLite
Builds and manages hosted project backends, structured boards, REST APIs, automations, authentication access, databases, and fron…
Keelen
Manages autonomous software projects connected to GitHub, including repository setup, roadmap intake, task execution, scheduling,…
Linear
Manages and searches Linear teams and issues, including issue creation and detailed issue retrieval.
Jira
Searches Jira issues and retrieves project, issue, status, assignee, priority, comment, attachment, and linked-issue details.