MCP server: One MCP server.

Auten

@autenRun by its publisher: served from their own domain, namespace checked by the registry.MCP server · External

Computer use for Claude Code, Codex, Cursor or any MCP client: your computer + Android phone (beta)

Computer controlv0.1.4MITJavaScript
Freeno charge per call

Runs on your machine from its package; the steps are below.

Auten: computer use MCP server
From the README · 1 of 3

What it does

  1. Reads
  2. Writes
  3. High impact

At most: moves money, runs code or commands, deletes data, or sends messages for you.

What it costs

Free

Odel charges nothing per call. The publisher may charge for its own service.

Runs locally over stdio

This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).

npm@autenai/mcpv0.1.4

Run

npx -y @autenai/mcp

MCP client config

{
  "mcpServers": {
    "auten": {
      "command": "npx",
      "args": [
        "-y",
        "@autenai/mcp"
      ]
    }
  }
}
README7 min read

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 Add Auten to Cursor Add Auten to VS Code

Website  |  Setup for every client  |  Pricing  |  hello@auten.ai

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.

Real screen capture: an AI agent fills a local contact form through Auten MCP in about 14 seconds and saves it as a skill; run_skill then replays it with new values in 4.8 seconds without calling the model.
Real capture, not an illustration: first run by the agent (~14 s incl. thinking), then run_skill with new values (4.8 s, no model call). Local test page, 1 fps, one cut between the runs.

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 on macOS and Windows, on Linux it asks for sudo once to apt-install the accessibility and input tools):

bash
# macOS and Linux
curl -fsSL https://auten.ai/install | bash
powershell
# 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:

bash
auten connect

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

bash
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. The "Add to Cursor" and "VS Code" buttons at the top add exactly this entry.

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

Or as a Claude Code plugin

This repository is also a plugin marketplace. Inside Claude Code:

/plugin marketplace add auten-ai/auten-mcp
/plugin install auten@auten

The plugin adds the same npx launcher entry, nothing else (no hooks or commands). See plugin/README.md.

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
bash
codex mcp add auten -- auten mcp-bridge

or in ~/.codex/config.toml:

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

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

json
{
  "mcpServers": {
    "auten": { "command": "auten", "args": ["mcp-bridge"] }
  }
}
Gemini CLI
bash
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):

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

Restart Claude Desktop.

VS Code (GitHub Copilot agent mode)

Run MCP: Open User Configuration and add:

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

~/.codeium/windsurf/mcp_config.json:

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

~/.config/zed/settings.json:

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

Ask Cline to set Auten up from llms-install.md, or add it yourself in MCP Servers, Configure (cline_mcp_settings.json):

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:

bash
auten --runner-only

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

bash
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

GroupTools
See the screenlist_elements, read_text, screenshot, screenshot_labeled, vision, screen_info
Actclick_at, click, fill, type, paste_text, press_keys, scroll, drag, move_mouse, act_on_matching, menu_select
Apps and windowsopen_app, open_url, focus_window, browser_tabs, save_file, upload_file, clipboard_read
Secretslist_logins, fill_login, get_profile
Learned skillslist_skills, run_skill, skills, show_skill, start_recording, stop_recording, start_fixing, stop_fixing
Coordinationask_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).

Linux: installer stops at the "deps" step? It needs sudo once for the accessibility (AT-SPI) and input tools. On a fresh or minimal box (empty apt lists, no python3-venv) install them first, then run the installer again:

bash
sudo apt-get update
sudo apt-get install -y python3-venv python3-pyatspi python3-gi xdotool wmctrl scrot xclip libglib2.0-bin tesseract-ocr libsecret-tools

Auten drives a real X11 desktop session, so a headless container without a display won't work. Still stuck? Paste the last lines in Discussions.

Pricing

PlanRuntimePrice
Free30 min every month€0, no card
Starter10 h every month€9/month (early access)
ProUnlimited€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.
  • Each saved login is pinned to the site or app where it was first used. On any other origin fill_login refuses and types nothing; only you can re-pin it (auten vault unpin <name>).
  • 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 hello@auten.ai.

Auten is made by MB Icecode, Lithuania.

Similar modules

Browse Computer control