Auten MCP agent

Computer-use MCP server: give Claude Code, Codex, Cursor or any MCP client hands on a real screen: your computer (Mac/Windows/Linux) and your Android phone (beta).

by auten-ai·MIT license·★ 0 Stars on the repo·GitHub ↗

Files of Auten MCP

auten-ai/main1 file
README.md
Show the full text286 lines

Auten: computer use MCP server

Auten MCP server

Computer use for the AI agent you already have.
Claude Code, Codex, Cursor, Gemini CLI or any MCP client can click, type and read the screen on your Mac, Windows or Linux computer — and your Android phone (beta) — in real apps that have no API.

npm

Website  |  Setup for every client  |  Pricing  |  [email protected]

Animation: Claude Code asks Auten to reply on Instagram; Auten opens the app, finds the chat and sends. The next run replays the same task from memory in seconds, with no tokens.
Illustration: the first run is driven by your AI, the next runs replay from memory.


Auten is the hands, your AI is the brain. A small runner on your computer does the clicking, typing and screen reading. Your agent talks to it over MCP (stdio or SSE). Auten does not ship its own model and never needs your AI key; your agent keeps using the plan you already pay for.

What makes it different from a plain mouse and keyboard bridge:

  • Reads the UI, not just pixels. It uses the accessibility tree, so your agent gets a numbered list of real buttons and fields (list_elements then click_at(3)) instead of guessing coordinates. OCR and real screenshots are there when an app has no accessibility info.
  • Learns a task once, replays it without AI. After your agent finishes a task, Auten can save it as a skill. The next run replays in seconds, with no tokens spent, and fixes itself when the app's layout changes.
  • Passwords stay on your machine. fill_login types a stored secret into a field without the agent ever seeing the value.

What you can ask your agent

Plain requests in the client you already use. The agent decides the steps, Auten does the clicks.

  • "Open the supplier portal, download this month's invoices and put them in ~/Invoices."
  • "Go through the new leads in the CRM and fill in the missing company names from their emails."
  • "Export the report from that desktop app as CSV. It has no API, so use the File menu."
  • "On my Android phone, open Instagram and reply to the latest DM with this text." (phone is beta, over USB)
  • "That worked. Save it as a skill called export-report." Next time: "Run export-report." It replays without AI.

Quick start

1. Install the runner (one command, no admin rights):

# macOS and Linux
curl -fsSL https://auten.ai/install | bash
# Windows (PowerShell)
irm https://auten.ai/install.ps1 | iex

The first run asks you to connect a free key (30 minutes every month, no card).

2. Add Auten to your agent. For Claude Code, Auten can do it by itself:

auten connect

or add it with the Claude Code CLI and check with /mcp:

claude mcp add -s user auten -- auten mcp-bridge

3. Ask in plain words. For example: "Open Figma, export the Hero frame as PNG to my Desktop" or "Go through the unread invoices in my mail and fill them into the accounting app".

Or run it through npx

Any client that can start an npm package can use the launcher instead. It starts the installed runner, and if Auten is not installed yet it tells your agent the one-line install command.

{
  "mcpServers": {
    "auten": { "command": "npx", "args": ["-y", "@autenai/mcp"] }
  }
}
claude mcp add -s user auten -- npx -y @autenai/mcp

Client setup

Every client starts the same stdio command: auten mcp-bridge (or npx -y @autenai/mcp). If your app says it cannot find auten, use the full path from which auten (usually ~/.local/bin/auten).

OpenAI Codex
codex mcp add auten -- auten mcp-bridge

or in ~/.codex/config.toml:

[mcp_servers.auten]
command = "auten"
args = ["mcp-bridge"]
Cursor

~/.cursor/mcp.json (or .cursor/mcp.json in a project):

{
  "mcpServers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}
Gemini CLI
gemini mcp add --scope user auten auten mcp-bridge

or the same mcpServers entry in ~/.gemini/settings.json.

Claude Desktop

Settings, Developer, Edit Config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}

Restart Claude Desktop.

VS Code (GitHub Copilot agent mode)

Run MCP: Open User Configuration and add:

{
  "servers": {
    "auten": { "type": "stdio", "command": "auten", "args": ["mcp-bridge"] }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}
Zed

~/.config/zed/settings.json:

{
  "context_servers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}
Cline

MCP Servers, Configure (cline_mcp_settings.json):

{
  "mcpServers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}
Remote (SSE) instead of stdio

For clients that connect over the network, keep the runner online on the computer it should control:

auten --runner-only

Then use your personal MCP URL from your account page. It contains your key, so keep it private.

claude mcp add --transport sse auten <your-url>

No agent? Give the auten CLI your own key (Anthropic, OpenAI, Google, DeepSeek or any OpenAI-compatible provider) with auten key add, then run auten "open my calendar and tell me what is next".

Tools

Group Tools
See the screen list_elements, read_text, screenshot, screenshot_labeled, vision, screen_info
Act click_at, click, fill, type, paste_text, press_keys, scroll, drag, move_mouse, act_on_matching, menu_select
Apps and windows open_app, open_url, focus_window, browser_tabs, save_file, upload_file, clipboard_read
Secrets list_logins, fill_login, get_profile
Learned skills list_skills, run_skill, skills, show_skill, start_recording, stop_recording, start_fixing, stop_fixing
Coordination ask_user, focus_app, release, gui_status, wait, opened_items, browser_cleanup

Platforms

macOS (Apple Silicon and Intel), Windows 10/11, Linux (X11), plus an Android phone over USB (beta).

Pricing

Plan Runtime Price
Free 30 min every month €0, no card
Starter 10 h every month €9/month (early access)
Pro Unlimited €29/month (early access)

You bring your own AI, so the price is for Auten only. Details on auten.ai/pricing.

Privacy and safety

  • The runner only acts when your MCP client calls a tool. Nothing runs in the background on its own.
  • Stored passwords live in the system keychain (macOS, Windows) or a private local vault (Linux) and never reach our servers or the model. A secret that shows up on screen is replaced with a placeholder before your agent sees it.
  • Your activity history and learned skills are written to your own computer, not ours. See the privacy policy.

About this repository

This repository holds the public docs, client configs and the @autenai/mcp npm launcher (bin/auten-mcp.js), all under the MIT LICENSE. The runner itself is distributed separately through the installers above, under the Auten terms of service. Questions, bugs and feature requests are welcome as issues or at [email protected].

Auten is made by MB Icecode, Lithuania.

1<p align="center">
2 <a href="https://auten.ai/mcp"><img src="assets/banner.png" alt="Auten: computer use MCP server" width="720" /></a>
3</p>
4 
5<h1 align="center">Auten MCP server</h1>
6 
7<p align="center">
8 <b>Computer use for the AI agent you already have.</b><br />
9 Claude Code, Codex, Cursor, Gemini CLI or any MCP client can click, type and read the screen
10 on your Mac, Windows or Linux computer — and your Android phone (beta) — in real apps that have no API.
11</p>
12 
13<p align="center">
14 <a href="https://www.npmjs.com/package/@autenai/mcp"><img src="https://img.shields.io/npm/v/@autenai/mcp?color=00997A&label=npm" alt="npm" /></a>
15</p>
16 
17<p align="center">
18 <a href="https://auten.ai/mcp">Website</a> &nbsp;|&nbsp;
19 <a href="https://auten.ai/connect">Setup for every client</a> &nbsp;|&nbsp;
20 <a href="https://auten.ai/pricing">Pricing</a> &nbsp;|&nbsp;
21 <a href="mailto:[email protected]">[email protected]</a>
22</p>
23 
24<p align="center">
25 <img src="assets/demo.gif" alt="Animation: Claude Code asks Auten to reply on Instagram; Auten opens the app, finds the chat and sends. The next run replays the same task from memory in seconds, with no tokens." width="720" /><br />
26 <sub>Illustration: the first run is driven by your AI, the next runs replay from memory.</sub>
27</p>
28 
29---
30 
31Auten is the hands, your AI is the brain. A small runner on your computer does the clicking,
32typing and screen reading. Your agent talks to it over MCP (stdio or SSE). Auten does not ship
33its own model and never needs your AI key; your agent keeps using the plan you already pay for.
34 
35What makes it different from a plain mouse and keyboard bridge:
36 
37- **Reads the UI, not just pixels.** It uses the accessibility tree, so your agent gets a numbered
38 list of real buttons and fields (`list_elements` then `click_at(3)`) instead of guessing
39 coordinates. OCR and real screenshots are there when an app has no accessibility info.
40- **Learns a task once, replays it without AI.** After your agent finishes a task, Auten can save
41 it as a skill. The next run replays in seconds, with no tokens spent, and fixes itself when the
42 app's layout changes.
43- **Passwords stay on your machine.** `fill_login` types a stored secret into a field without the
44 agent ever seeing the value.
45 
46## What you can ask your agent
47 
48Plain requests in the client you already use. The agent decides the steps, Auten does the clicks.
49 
50- "Open the supplier portal, download this month's invoices and put them in ~/Invoices."
51- "Go through the new leads in the CRM and fill in the missing company names from their emails."
52- "Export the report from that desktop app as CSV. It has no API, so use the File menu."
53- "On my Android phone, open Instagram and reply to the latest DM with this text." (phone is beta, over USB)
54- "That worked. Save it as a skill called `export-report`." Next time: "Run `export-report`." It replays without AI.
55 
56## Quick start
57 
58**1. Install the runner** (one command, no admin rights):
59 
60```bash
61# macOS and Linux
62curl -fsSL https://auten.ai/install | bash
63```
64 
65```powershell
66# Windows (PowerShell)
67irm https://auten.ai/install.ps1 | iex
68```
69 
70The first run asks you to connect a free key (30 minutes every month, no card).
71 
72**2. Add Auten to your agent.** For Claude Code, Auten can do it by itself:
73 
74```bash
75auten connect
76```
77 
78or add it with the Claude Code CLI and check with `/mcp`:
79 
80```bash
81claude mcp add -s user auten -- auten mcp-bridge
82```
83 
84**3. Ask in plain words.** For example: *"Open Figma, export the Hero frame as PNG to my Desktop"*
85or *"Go through the unread invoices in my mail and fill them into the accounting app"*.
86 
87### Or run it through npx
88 
89Any client that can start an npm package can use the launcher instead. It starts the installed
90runner, and if Auten is not installed yet it tells your agent the one-line install command.
91 
92```json
93{
94 "mcpServers": {
95 "auten": { "command": "npx", "args": ["-y", "@autenai/mcp"] }
96 }
97}
98```
99 
100```bash
101claude mcp add -s user auten -- npx -y @autenai/mcp
102```
103 
104## Client setup
105 
106Every client starts the same stdio command: `auten mcp-bridge` (or `npx -y @autenai/mcp`). If your app says it cannot find
107`auten`, use the full path from `which auten` (usually `~/.local/bin/auten`).
108 
109<details>
110<summary><b>OpenAI Codex</b></summary>
111 
112```bash
113codex mcp add auten -- auten mcp-bridge
114```
115 
116or in `~/.codex/config.toml`:
117 
118```toml
119[mcp_servers.auten]
120command = "auten"
121args = ["mcp-bridge"]
122```
123</details>
124 
125<details>
126<summary><b>Cursor</b></summary>
127 
128`~/.cursor/mcp.json` (or `.cursor/mcp.json` in a project):
129 
130```json
131{
132 "mcpServers": {
133 "auten": { "command": "auten", "args": ["mcp-bridge"] }
134 }
135}
136```
137</details>
138 
139<details>
140<summary><b>Gemini CLI</b></summary>
141 
142```bash
143gemini mcp add --scope user auten auten mcp-bridge
144```
145 
146or the same `mcpServers` entry in `~/.gemini/settings.json`.
147</details>
148 
149<details>
150<summary><b>Claude Desktop</b></summary>
151 
152Settings, Developer, Edit Config
153(`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS,
154`%APPDATA%\Claude\claude_desktop_config.json` on Windows):
155 
156```json
157{
158 "mcpServers": {
159 "auten": { "command": "auten", "args": ["mcp-bridge"] }
160 }
161}
162```
163 
164Restart Claude Desktop.
165</details>
166 
167<details>
168<summary><b>VS Code (GitHub Copilot agent mode)</b></summary>
169 
170Run `MCP: Open User Configuration` and add:
171 
172```json
173{
174 "servers": {
175 "auten": { "type": "stdio", "command": "auten", "args": ["mcp-bridge"] }
176 }
177}
178```
179</details>
180 
181<details>
182<summary><b>Windsurf</b></summary>
183 
184`~/.codeium/windsurf/mcp_config.json`:
185 
186```json
187{
188 "mcpServers": {
189 "auten": { "command": "auten", "args": ["mcp-bridge"] }
190 }
191}
192```
193</details>
194 
195<details>
196<summary><b>Zed</b></summary>
197 
198`~/.config/zed/settings.json`:
199 
200```json
201{
202 "context_servers": {
203 "auten": { "command": "auten", "args": ["mcp-bridge"] }
204 }
205}
206```
207</details>
208 
209<details>
210<summary><b>Cline</b></summary>
211 
212MCP Servers, Configure (`cline_mcp_settings.json`):
213 
214```json
215{
216 "mcpServers": {
217 "auten": { "command": "auten", "args": ["mcp-bridge"] }
218 }
219}
220```
221</details>
222 
223<details>
224<summary><b>Remote (SSE) instead of stdio</b></summary>
225 
226For clients that connect over the network, keep the runner online on the computer it should
227control:
228 
229```bash
230auten --runner-only
231```
232 
233Then use your personal MCP URL from your [account page](https://auten.ai/account). It contains
234your key, so keep it private.
235 
236```bash
237claude mcp add --transport sse auten <your-url>
238```
239</details>
240 
241No agent? Give the auten CLI your own key (Anthropic, OpenAI, Google, DeepSeek or any
242OpenAI-compatible provider) with `auten key add`, then run `auten "open my calendar and tell me what is next"`.
243 
244## Tools
245 
246| Group | Tools |
247|---|---|
248| See the screen | `list_elements`, `read_text`, `screenshot`, `screenshot_labeled`, `vision`, `screen_info` |
249| Act | `click_at`, `click`, `fill`, `type`, `paste_text`, `press_keys`, `scroll`, `drag`, `move_mouse`, `act_on_matching`, `menu_select` |
250| Apps and windows | `open_app`, `open_url`, `focus_window`, `browser_tabs`, `save_file`, `upload_file`, `clipboard_read` |
251| Secrets | `list_logins`, `fill_login`, `get_profile` |
252| Learned skills | `list_skills`, `run_skill`, `skills`, `show_skill`, `start_recording`, `stop_recording`, `start_fixing`, `stop_fixing` |
253| Coordination | `ask_user`, `focus_app`, `release`, `gui_status`, `wait`, `opened_items`, `browser_cleanup` |
254 
255## Platforms
256 
257macOS (Apple Silicon and Intel), Windows 10/11, Linux (X11), plus an Android phone over USB (beta).
258 
259## Pricing
260 
261| Plan | Runtime | Price |
262|---|---|---|
263| Free | 30 min every month | €0, no card |
264| Starter | 10 h every month | €9/month (early access) |
265| Pro | Unlimited | €29/month (early access) |
266 
267You bring your own AI, so the price is for Auten only. Details on [auten.ai/pricing](https://auten.ai/pricing).
268 
269## Privacy and safety
270 
271- The runner only acts when your MCP client calls a tool. Nothing runs in the background on its own.
272- Stored passwords live in the system keychain (macOS, Windows) or a private local vault (Linux)
273 and never reach our servers or the model. A secret that shows up on screen is replaced with a
274 placeholder before your agent sees it.
275- Your activity history and learned skills are written to your own computer, not ours.
276 See the [privacy policy](https://auten.ai/privacy).
277 
278## About this repository
279 
280This repository holds the public docs, client configs and the `@autenai/mcp` npm launcher
281(`bin/auten-mcp.js`), all under the MIT [LICENSE](LICENSE). The runner itself is distributed
282separately through the installers above, under the [Auten terms of service](https://auten.ai/terms). Questions, bugs and feature requests are
283welcome as [issues](https://github.com/auten-ai/auten-mcp/issues) or at [email protected].
284 
285Auten is made by [MB Icecode](https://icecode.lt), Lithuania.
286 

Discussion

Alternatives