Value and clipboard tools
Set element values and read or write the clipboard.
Set element values and read or write the clipboard.
| Tool | Description | Platforms |
|---|---|---|
set_value | Set a value on a UI element. | macOS, Linux, Windows |
clipboard_read | List available system clipboard types and optionally return privacy-sensitive plain text. | macOS, Linux, Windows |
clipboard_write | Replace the system clipboard with exactly one value: plain text, an image from an absolute local path, or a file URL from an absolute local path. | macOS, Linux, Windows |
Served by cua-driver mcp; see MCP tools for every tool.
set_value#Effect: destructive, idempotent. Platforms: macOS, Linux, Windows.
Set a value on a UI element. Two modes depending on element role:
AXPopUpButton / select dropdown: finds the child option whose title or value matches value (case-insensitive) and AXPresses it directly; the native macOS popup menu is never opened, so focus is never stolen. Use this for HTML <select> elements in Safari or any native NSPopUpButton.
All other elements: writes AXValue directly (sliders, steppers, date pickers, native text fields that expose settable AXValue).
For free-form text entry into web inputs, prefer type_text_chars which synthesises key events: AXValue writes are ignored by WebKit.
macOS parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
element_token | string | Opaque per-snapshot element handle from structuredContent.elements[].element_token. Returns an explicit stale error naming the current snapshots once a newer read supersedes it. | |
value | string | required | New value. AX will coerce to the element's native type. |
window_id | integer | CGWindowID. Omit when element_token is supplied (the token carries it). |
Parameters on every platform
| Parameter | Type | Default | Description |
|---|---|---|---|
pid | integer | required | Target process ID. |
session | string | For multi-call work, prefer a short public session label and repeat it on every call that accepts it. Omit it to use the authenticated transport's implicit lifecycle session. |
Example arguments
{"pid":1,"value":"<value>"}clipboard_read#List available system clipboard types and optionally return privacy-sensitive plain text. Clipboard content is never retained in telemetry.
Effect: read-only. Platforms: macOS, Linux, Windows.
| Parameter | Type | Default | Description |
|---|---|---|---|
include_text | boolean | false | Return plain-text clipboard content in addition to the available types. Clipboard content is privacy-sensitive and is never retained in telemetry. |
session | string | For multi-call work, prefer a short public session label and repeat it on every call that accepts it. Omit it to use the authenticated transport's implicit lifecycle session. |
clipboard_write#Replace the system clipboard with exactly one value: plain text, an image from an absolute local path, or a file URL from an absolute local path. Returns the available types for read-back before paste.
Effect: destructive, idempotent. Platforms: macOS, Linux, Windows.
| Parameter | Type | Default | Description |
|---|---|---|---|
file_path | string | Absolute path to a local file to place on the clipboard as a file URL. | |
image_path | string | Absolute path to a local image to place on the clipboard. | |
session | string | For multi-call work, prefer a short public session label and repeat it on every call that accepts it. Omit it to use the authenticated transport's implicit lifecycle session. | |
text | string | Plain text to place on the clipboard. |