OpenDesk MCP
MCP-сервер дает агенту видеть экран и управлять macOS, Windows и Linux: скриншоты, клики, ввод, OCR и память экрана
- 92 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Агент видит экран и действует мышью, клавиатурой и командами оболочки с правами пользователя, а память экрана хранит текст окон.
Установка
- Работает в
Ручная установка
claude mcp add opendesk -- uvx --from opendesk opendesk-mcpКоманда из README для Claude Code, нужен uv.
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Агент видит экран и действует мышью, клавиатурой и командами оболочки с правами пользователя, а память экрана хранит текст окон.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
OpenDesk — MCP-сервер компании VitalOps для управления рабочим столом. Агент делает скриншот с пронумерованными рамками на каждом кликабельном элементе, нажимает и вводит текст по имени элемента или номеру без координат, а для остального есть точное управление мышью и клавиатурой, запуск приложений, буфер обмена и OCR. Инструмент `script` выполняет команды оболочки, AppleScript, JXA или PowerShell, а `browser` управляет Chrome, Edge и Brave через протокол DevTools. Задачу можно записать один раз через `learn` и повторять: запись компилируется в программу, которая нажимает элементы по приложению, роли и названию и проверяет каждый шаг, а в обычном режиме выполняется без вызовов модели. Расписание поддерживает форматы вроде `every day at 09:00` и cron. Инструмент `fleet` запускает вызов сразу на нескольких связанных машинах по зашифрованному WebSocket. Отдельная функция «память экрана» запоминает текст окон при смене приложения, хранит его в локальной зашифрованной базе SQLite и отвечает агенту через инструмент `memory`. Секреты вырезаются, для приложений есть список исключений, а сам захват ставится на паузу горячей клавишей.
Для кого. Тестировщикам и разработчикам, которым нужно поручить агенту работу в настольных приложениях и интерфейсах без API.
Подходит, если
- Нужно проверить веб-приложение глазами пользователя: открыть, создать запись, убедиться в результате без селекторов
- В программе без API нужно по расписанию нажимать одни и те же кнопки, например заполнять форму каждую пятницу
- Одно действие надо выполнить сразу на нескольких связанных компьютерах
- Вы хотите спросить агента, какую ошибку показывал терминал во вторник, и получить ответ из локальной истории экрана
- Рабочий процесс проще записать руками один раз и затем воспроизводить без вызовов модели
Не подходит, если
- У сервиса есть API или готовый MCP-сервер: прямой вызов надежнее и быстрее, чем управление через интерфейс
- Компьютер содержит чувствительные данные, и вы не готовы давать агенту доступ к экрану и клавиатуре
- Нужна работа на телефоне или планшете: сервер рассчитан на настольные macOS, Windows и Linux
Пример запроса к агенту
Сделай скриншот экрана, найди окно с калькулятором и посчитай 17 умножить на 23, затем скажи, что показано на дисплее.MCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
Ограничения
На macOS приложению, которое запускает OpenDesk (Claude Desktop, терминал, Cursor или VS Code), нужны права Accessibility и Screen Recording: проверить их помогает `uvx opendesk check --open`. Ставится через `uv` или Node.js 18 и новее. Инструмент `script` выполняет произвольные команды, а `mouse` и `keyboard` действуют от имени пользователя, поэтому клиенту стоит оставить подтверждение для опасных вызовов. Память экрана выключена, пока ее не запустили командой `opendesk memory start`, и хранит текст окон, пусть и в зашифрованном виде. Удаленный режим по HTTP использует токен-носитель, порт задается флагом `--port`. Проект не связан с офисным пакетом openDesk.
Как отключить. Удалите запись `opendesk` из конфигурации MCP клиента или выполните `claude mcp remove opendesk`. Память экрана останавливается командой `opendesk memory stop`, историю удаляет инструмент `memory_manage`.
Частые вопросы
Как подключить OpenDesk к Claude Code?
Выполните `claude mcp add opendesk -- uvx --from opendesk opendesk-mcp`. Есть и плагин: `claude plugin marketplace add vitalops/opendesk` и `claude plugin install opendesk@opendesk`, он добавляет скилл с описанием рабочего процесса.
Нужен ли Python?
Нет, есть Node.js-вариант: `npx -y -p @vitalops/opendesk-sdk opendesk-js-mcp`. Python-вариант ставится через `uvx` или `pip install opendesk`.
Как агент нажимает элементы без координат?
Инструмент `screenshot` рисует номера на каждом кликабельном элементе по дереву доступности, а `ui` нажимает и вводит текст по имени или номеру. Координаты нужны только инструменту `mouse`.
Что хранит память экрана и можно ли ее отключить?
Текст окон по дереву доступности или локальному OCR и зашифрованную миниатюру, все локально. Запуск и остановка идут командами `opendesk memory start` и `opendesk memory stop`, а `memory_manage` задает исключения, срок хранения и удаление.
Как управлять другой машиной?
Свяжите машины и работайте через инструменты `opendesk_peers`, `opendesk_use` и `fleet` по зашифрованному WebSocket. Для клиентов по сети есть потоковый HTTP с токеном: `uvx opendesk mcp --transport http --port 8765`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыOpen Computer Use
open-computer-use
Открытый MCP-сервер для управления рабочим столом: агент читает состояние приложений и кликает, печатает, скроллит на macOS, Linux и Windows
MCP-сервер для macOS: агент двигает мышь, печатает, управляет окнами и снимает экран, когда у приложения нет API
MCP-сервер для управления Windows: агент открывает приложения, кликает и печатает, читает состояние окон и интерфейса, работает с файлами и PowerShell
MCP-сервер управления рабочим столом macOS через Accessibility API: клики, ввод, окна, приложения, команды и AppleScript
MCP-сервер дает агенту управлять окнами и приложениями: он читает экран как структуру и действует по имени элемента
MCP-сервер на Swift дает агенту управлять любым приложением macOS: кликать, печатать и читать дерево интерфейса
Коротко о README
README перечисляет инструменты (`screenshot`, `ui`, `mouse`, `keyboard`, `script`, `browser`, `learn`, `schedule`, `memory`, `fleet`), способы подключения для Claude Code, Claude Desktop, Cursor и VS Code, автоматизацию, память экрана и права на macOS.