# Mouseless

Rust MCP server for macOS desktop control

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y smithery mcp add smithery/mouseless

# Browse available tools
npx -y smithery tool list smithery/mouseless

# Get full schema for a tool
npx -y smithery tool get smithery/mouseless computer_batch

# Call a tool
npx -y smithery tool call smithery/mouseless computer_batch '{}'
```

## Tools (21)

- `computer_batch` — Execute a sequence of actions in one call. Actions execute sequentially and stop on the first error.
- `cursor_position` — Get the current mouse cursor position.
- `double_click` — Double-click at the given coordinates.
- `hold_key` — Press and hold a key for the specified duration, then release.
- `key` — Press a key or key combination (e.g. "return", "cmd+a").
- `left_click` — Left-click at the given coordinates.
- `left_click_drag` — Press, move to target, and release.
- `left_mouse_down` — Press the left mouse button at the current cursor position.
- `left_mouse_up` — Release the left mouse button at the current cursor position.
- `middle_click` — Middle-click at the given coordinates.
- `mouse_move` — Move the mouse cursor without clicking.
- `open_application` — Bring an application to the front, launching it if necessary.
- `read_clipboard` — Read the current clipboard contents as text.
- `right_click` — Right-click at the given coordinates.
- `screenshot` — Take a screenshot of the primary display.
- `scroll` — Scroll at the given coordinates.
- `triple_click` — Triple-click at the given coordinates.
- `type` — Type text into whatever currently has keyboard focus.
- `wait` — Wait for a specified duration.
- `write_clipboard` — Write text to the clipboard.
- `zoom` — Take a higher-resolution screenshot of a specific region.

```bash
# Get full input/output schema for a tool
npx -y smithery tool get smithery/mouseless <tool-name>
```
