linux-computer-use
MCP server enabling AI agents to control a real Linux browser with live view, human takeover, and safety guardrails.
README
linux-computer-use
linux-computer-use is an open source computer use agent for Linux. It is an MCP server that lets an AI agent such as Claude Code or OpenAI Codex drive a real browser, and native Linux applications, on your own Linux machine, with a live view, human takeover, and safety guardrails.
Computer use for AI agents landed first on macOS and Windows, or inside a cloud VM. This project brings the same capability to Linux, self-hosted, running on your machine with your own browser and your own cookies.
Install
curl -fsSL https://raw.githubusercontent.com/Roadmvn/linux-computer-use/main/scripts/install.sh | bash
That is the whole setup. The script is scripts/install.sh in this repository, so you can read it before running it.
Connect it to your agent
# Claude Code
claude mcp add --scope user linux-computer-use -- node ~/.linux-computer-use/app/src/index.js
# OpenAI Codex
codex mcp add linux-computer-use -- node ~/.linux-computer-use/app/src/index.js
Restart your client afterwards so it picks the server up.
Quick start
Ask your agent: "Open github.com in a session named research, then tell me what is on the page." Then watch it work:
cd ~/.linux-computer-use/app && npx playwright-cli show
What it does
| Capability | What you get |
|---|---|
| Live view | playwright-cli show streams every session, in a window here or served to another machine. |
| Human takeover | A lease file freezes the agent mid-run, and only you can release it. |
| Visible cursor | An overlay draws the agent's pointer in the page, so you see where it acts. |
| Sessions and profiles | Named isolated sessions, cookies kept between runs when profile is set. |
| Tabs | List, open, select and close tabs with a single tool. |
| Two ways to act | Accessibility tree with element refs, the robust default, or raw pixel coordinates. |
| Guardrails | Fail closed on credentials, account pickers, irreversible actions and unreadable targets. |
| Native applications | Burp Suite, Wireshark, Ghidra and the rest, in a nested desktop that leaves your pointer alone. |
| Auto mode | set_mode drops the confirmation before a form is committed. The hard stops still apply. |
MCP tools
| Tool | What it does | Parameters |
|---|---|---|
open |
Open or attach a browser session | url, session, profile, browser, cdp |
goto |
Navigate to a URL | url |
snapshot |
Accessibility tree of the page, with element refs | - |
screenshot |
Image capture of the page | - |
click |
Click an element by ref | ref, confirm |
type |
Type text | text |
fill |
Fill a field by ref | ref, text |
press |
Press a key | key |
mouse |
Act at pixel coordinates, vision mode | action (move, click, down, up, wheel), x, y, confirm |
tabs |
Manage tabs | action (list, new, select, close), index, url |
history |
Navigate the history | direction (back, forward, reload) |
status |
Session state and control lease | takeover |
set_mode |
Switch between normal and auto | mode |
desktop_start |
Start the agent desktop, or shut it down | width, height, stop |
desktop_windows |
List the visible windows | - |
desktop_focus |
Bring a window to the front | id |
desktop_screenshot |
Capture the desktop, or a single window | window |
desktop_click |
Move the pointer and click | x, y, button, move_only |
desktop_type |
Type text into the focused window | text, confirm |
desktop_key |
Press a key or a combination | key, confirm |
desktop_launch |
Start an application by name | app, confirm |
Requirements
- Linux, Node.js 20 or newer.
- A graphical session:
DISPLAYorWAYLAND_DISPLAYset for the MCP client. No screen, wrap it inxvfb-run. - The system libraries of Chromium. The installer pulls them on apt based systems.
- Desktop backend only:
sudo apt install xserver-xephyr xdotool imagemagick xfwm4. Not needed to drive a browser.
Comparison
| Platform | Where it runs | Live view | Human takeover | Guardrails | Open source | |
|---|---|---|---|---|---|---|
| linux-computer-use | Linux | Your machine | Yes, playwright-cli show, locally or served |
Yes, explicit lease released from your machine | Yes | Yes, MIT |
| OpenAI Operator / ChatGPT agent | Any, used through ChatGPT | Cloud VM | Yes | Yes | Yes | No |
| Anthropic Claude for Chrome | Chrome extension | Your browser | Your own browser window | - | Yes | No |
| Playwright MCP | Cross platform | Your machine | Yes | Yes | - | Yes |
A dash means not verified rather than absent. These products move fast, so check their own documentation before relying on a row.
FAQ
Can AI control a browser on Linux?
Yes. Install this MCP server, register it with Claude Code, OpenAI Codex, or any MCP client, and the agent drives Chromium, Chrome, or Firefox on your Linux machine while you watch.
What is the Linux alternative to OpenAI Operator?
linux-computer-use. Operator runs a browser in a cloud VM you reach through ChatGPT. This runs on your own Linux machine, with your browser and your profile, and it is open source under MIT.
How do I give Claude Code browser access?
Run the installer, then claude mcp add --scope user linux-computer-use -- node ~/.linux-computer-use/app/src/index.js, and ask Claude Code to open a page. The 21 tools show up in its tool list.
Can it use my existing cookies and logins?
Yes, in two ways: pass profile with a directory path, or start your own browser with a debugging port and attach with cdp, see docs/usage.md. Without either, the profile is in memory and disappears with the browser.
Will it log into my accounts on its own?
No. It stops on an empty login form, and it asks you when several accounts are offered. It also asks before an action it judges irreversible.
Documentation
- docs/usage.md - first run, your own browser, native applications, guardrails, environment variables, audit trail, more FAQ.
- docs/design.md - architecture, and the reasoning behind each choice.
Roadmap
- AT-SPI integration, the Linux accessibility bus, to give the desktop backend the equivalent of the browser's accessibility snapshot, and with it real guardrails by element name. Planned, not available yet.
Contributing
Issues and pull requests are welcome on GitHub. Architecture notes live in docs/design.md.
License
MIT. See LICENSE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。